From a6dbd11f00a425134428045ae4a4ad54c85a1019 Mon Sep 17 00:00:00 2001 From: Mattias Jonsson Date: Mon, 5 Dec 2022 18:40:05 +0100 Subject: [PATCH] *: merge master into feature/reorganize-partition (#39556) ref pingcap/tidb#38535 --- .../integration-test-br-compatibility.yml | 62 - .gitignore | 1 + DEPS.bzl | 208 +- README.md | 44 +- WORKSPACE | 40 +- autoid_service/BUILD.bazel | 2 + autoid_service/autoid.go | 37 +- bindinfo/bind_cache.go | 17 + bindinfo/bind_record.go | 6 +- bindinfo/bind_test.go | 230 + bindinfo/capture_test.go | 10 +- bindinfo/handle.go | 42 +- bindinfo/handle_test.go | 19 +- bindinfo/session_handle.go | 21 +- bindinfo/session_handle_test.go | 12 +- br/cmd/br/restore.go | 1 - br/pkg/backup/BUILD.bazel | 1 + br/pkg/backup/client.go | 303 +- br/pkg/backup/client_test.go | 3 +- br/pkg/backup/push.go | 34 +- br/pkg/backup/schema.go | 57 +- br/pkg/backup/schema_test.go | 26 +- br/pkg/checkpoint/BUILD.bazel | 32 + br/pkg/checkpoint/checkpoint.go | 581 + br/pkg/checkpoint/checkpoint_test.go | 175 + br/pkg/checksum/executor_test.go | 2 +- br/pkg/errors/errors.go | 5 +- br/pkg/errors/errors_test.go | 6 + br/pkg/gluetidb/glue.go | 16 +- br/pkg/lightning/BUILD.bazel | 1 + br/pkg/lightning/backend/kv/BUILD.bazel | 4 +- br/pkg/lightning/backend/kv/allocator.go | 1 + br/pkg/lightning/backend/kv/session.go | 24 +- .../backend/kv/session_internal_test.go | 126 + br/pkg/lightning/backend/local/BUILD.bazel | 2 +- br/pkg/lightning/backend/local/duplicate.go | 71 +- br/pkg/lightning/checkpoints/checkpoints.go | 23 + br/pkg/lightning/common/errors.go | 1 + br/pkg/lightning/errormanager/errormanager.go | 19 +- br/pkg/lightning/lightning.go | 22 +- br/pkg/lightning/mydump/parquet_parser.go | 6 + br/pkg/lightning/mydump/parser.go | 7 + br/pkg/lightning/mydump/reader.go | 7 + br/pkg/lightning/mydump/reader_test.go | 26 + br/pkg/lightning/mydump/region.go | 32 +- br/pkg/lightning/mydump/region_test.go | 2 +- br/pkg/lightning/mydump/router.go | 5 +- br/pkg/lightning/mydump/router_test.go | 18 + br/pkg/lightning/restore/BUILD.bazel | 7 + br/pkg/lightning/restore/check_info.go | 7 + br/pkg/lightning/restore/check_info_test.go | 22 +- br/pkg/lightning/restore/checksum.go | 2 +- br/pkg/lightning/restore/get_pre_info.go | 25 +- br/pkg/lightning/restore/get_pre_info_test.go | 217 +- br/pkg/lightning/restore/mock/mock.go | 20 +- br/pkg/lightning/restore/precheck.go | 3 + br/pkg/lightning/restore/precheck_impl.go | 154 + .../lightning/restore/precheck_impl_test.go | 87 + br/pkg/lightning/restore/restore.go | 107 +- br/pkg/lightning/restore/table_restore.go | 47 +- br/pkg/lightning/run_options.go | 9 + br/pkg/lightning/web/progress.go | 2 +- br/pkg/logutil/logging.go | 10 + br/pkg/restore/BUILD.bazel | 4 +- br/pkg/restore/client.go | 315 +- br/pkg/restore/client_test.go | 505 +- br/pkg/restore/data.go | 29 +- br/pkg/restore/import.go | 184 +- br/pkg/restore/import_retry.go | 3 +- br/pkg/restore/import_retry_test.go | 201 + br/pkg/restore/log_client.go | 7 +- br/pkg/restore/split/split.go | 2 +- br/pkg/restore/stream_metas_test.go | 2 +- br/pkg/restore/systable_restore.go | 2 + br/pkg/restore/util.go | 40 + br/pkg/restore/util_test.go | 49 + br/pkg/rtree/rtree.go | 7 + br/pkg/storage/compress.go | 11 +- br/pkg/storage/gcs.go | 46 +- br/pkg/storage/gcs_test.go | 22 +- br/pkg/storage/local.go | 18 +- br/pkg/storage/local_test.go | 27 + br/pkg/storage/s3.go | 37 +- br/pkg/storage/s3_test.go | 45 + br/pkg/storage/storage.go | 4 +- br/pkg/stream/meta_kv.go | 60 +- br/pkg/stream/meta_kv_test.go | 101 +- br/pkg/stream/rewrite_meta_rawkv.go | 12 +- br/pkg/stream/stream_mgr.go | 1 - br/pkg/streamhelper/BUILD.bazel | 16 +- br/pkg/streamhelper/advancer.go | 319 +- br/pkg/streamhelper/advancer_daemon.go | 2 + br/pkg/streamhelper/advancer_env.go | 20 +- br/pkg/streamhelper/advancer_test.go | 7 - br/pkg/streamhelper/basic_lib_for_test.go | 168 +- br/pkg/streamhelper/collector.go | 8 +- br/pkg/streamhelper/config/advancer_conf.go | 47 +- br/pkg/streamhelper/flush_subscriber.go | 327 + br/pkg/streamhelper/regioniter.go | 14 +- br/pkg/streamhelper/regioniter_test.go | 10 +- br/pkg/streamhelper/spans/BUILD.bazel | 31 + br/pkg/streamhelper/spans/sorted.go | 186 + br/pkg/streamhelper/spans/sorted_test.go | 211 + br/pkg/streamhelper/spans/utils.go | 150 + br/pkg/streamhelper/spans/utils_test.go | 83 + br/pkg/streamhelper/spans/value_sorted.go | 69 + .../streamhelper/spans/value_sorted_test.go | 98 + br/pkg/streamhelper/subscription_test.go | 205 + br/pkg/streamhelper/tsheap.go | 326 - br/pkg/streamhelper/tsheap_test.go | 248 - br/pkg/summary/collector.go | 16 + br/pkg/summary/summary.go | 9 + br/pkg/task/backup.go | 117 +- br/pkg/task/backup_ebs.go | 5 +- br/pkg/task/backup_raw.go | 16 +- br/pkg/task/common.go | 2 - br/pkg/task/restore.go | 92 +- br/pkg/task/restore_test.go | 10 + br/pkg/task/stream.go | 15 +- br/pkg/utils/BUILD.bazel | 1 + br/pkg/utils/db.go | 13 +- br/pkg/utils/key.go | 2 +- br/pkg/version/version.go | 24 +- br/pkg/version/version_test.go | 46 + br/tests/br_foreign_key/run.sh | 54 + .../config.toml | 5 + .../data/db01.tbl01-schema.sql | 12 + .../data/db01.tbl01.csv | 6 + .../lightning_check_partial_imported/run.sh | 47 + br/tests/lightning_checkpoint/run.sh | 3 + br/tests/lightning_checkpoint_columns/run.sh | 9 +- br/tests/lightning_compress/config.toml | 18 + .../data.gzip/compress-schema-create.sql.gz | Bin 0 -> 113 bytes .../compress.empty_strings-schema.sql.gz | Bin 0 -> 175 bytes .../compress.empty_strings.000000000.csv.gz | Bin 0 -> 58 bytes .../data.gzip/compress.escapes-schema.sql.gz | Bin 0 -> 221 bytes .../compress.escapes.000000000.csv.gz | Bin 0 -> 103 bytes .../compress.multi_rows-schema.sql.gz | Bin 0 -> 141 bytes .../compress.multi_rows.000000000.csv.gz | Bin 0 -> 2763 bytes .../data.gzip/compress.threads-schema.sql.gz | Bin 0 -> 444 bytes .../compress.threads.000000000.csv.gz | Bin 0 -> 1010 bytes .../compress-schema-create.sql.snappy | Bin 0 -> 117 bytes .../compress.empty_strings-schema.sql.snappy | Bin 0 -> 231 bytes ...ompress.empty_strings.000000000.sql.snappy | Bin 0 -> 128 bytes .../compress.escapes-schema.sql.snappy | Bin 0 -> 251 bytes .../compress.escapes.000000000.sql.snappy | Bin 0 -> 184 bytes .../compress.multi_rows-schema.sql.snappy | Bin 0 -> 146 bytes .../compress.multi_rows.000000000.sql.snappy | Bin 0 -> 75746 bytes .../compress.threads-schema.sql.snappy | Bin 0 -> 614 bytes .../compress.threads.000000000.sql.snappy | Bin 0 -> 1395 bytes .../data.zstd/compress-schema-create.sql.zst | Bin 0 -> 108 bytes .../compress.empty_strings-schema.sql.zst | Bin 0 -> 167 bytes .../compress.empty_strings.000000000.csv.zst | Bin 0 -> 50 bytes .../data.zstd/compress.escapes-schema.sql.zst | Bin 0 -> 210 bytes .../compress.escapes.000000000.csv.zst | Bin 0 -> 88 bytes .../compress.multi_rows-schema.sql.zst | Bin 0 -> 132 bytes .../compress.multi_rows.000000000.csv.zst | Bin 0 -> 178 bytes .../data.zstd/compress.threads-schema.sql.zst | Bin 0 -> 456 bytes .../compress.threads.000000000.csv.zst | Bin 0 -> 1030 bytes br/tests/lightning_compress/run.sh | 61 + build/nogo_config.json | 11 +- build/patches/io_etcd_go_etcd_raft_v3.patch | 22 - cmd/benchkv/main.go | 1 - cmd/benchraw/main.go | 1 - cmd/ddltest/index_test.go | 7 + .../r/collation_agg_func_disabled.result | 22 +- .../r/collation_agg_func_enabled.result | 16 +- ...lation_check_use_collation_disabled.result | 4 +- .../r/collation_misc_disabled.result | 8 +- .../r/collation_misc_enabled.result | 14 +- .../r/collation_pointget_disabled.result | 10 +- .../r/collation_pointget_enabled.result | 10 +- cmd/explaintest/r/cte.result | 10 +- cmd/explaintest/r/explain_foreign_key.result | 169 + cmd/explaintest/r/explain_indexmerge.result | 26 +- cmd/explaintest/r/index_merge.result | 88 +- .../r/new_character_set_builtin.result | 20 +- .../r/new_character_set_invalid.result | 6 +- cmd/explaintest/r/select.result | 6 +- cmd/explaintest/t/explain_foreign_key.test | 47 + config/config.go | 6 +- ddl/BUILD.bazel | 5 + ddl/backfilling.go | 196 +- ddl/cluster.go | 29 +- ddl/cluster_test.go | 6 +- ddl/column.go | 39 +- ddl/column_modify_test.go | 1 + ddl/concurrentddltest/BUILD.bazel | 4 +- ddl/concurrentddltest/switch_test.go | 13 + ddl/db_change_test.go | 2 - ddl/db_integration_test.go | 283 +- ddl/db_partition_test.go | 2 +- ddl/db_test.go | 55 +- ddl/ddl.go | 39 +- ddl/ddl_api.go | 184 +- ddl/ddl_worker.go | 15 +- ddl/export_test.go | 36 + ddl/failtest/fail_db_test.go | 29 + ddl/fktest/BUILD.bazel | 29 + ddl/fktest/foreign_key_test.go | 1546 ++ ddl/fktest/main_test.go | 56 + ddl/foreign_key.go | 52 +- ddl/foreign_key_test.go | 1485 -- ddl/index.go | 57 +- ddl/index_change_test.go | 25 +- ddl/index_cop.go | 500 + ddl/index_cop_test.go | 101 + ddl/index_merge_tmp_test.go | 140 +- ddl/ingest/BUILD.bazel | 2 +- ddl/ingest/backend.go | 8 +- ddl/ingest/config.go | 7 + ddl/ingest/disk_root.go | 3 +- ddl/ingest/engine.go | 7 +- ddl/ingest/engine_mgr.go | 21 +- ddl/ingest/env.go | 11 +- ddl/ingest/mem_root.go | 2 +- ddl/ingest/message.go | 35 +- ddl/job_table.go | 6 +- ddl/metadatalocktest/mdl_test.go | 13 + ddl/modify_column_test.go | 45 +- ddl/multi_schema_change_test.go | 43 +- ddl/partition.go | 2 +- ddl/reorg.go | 31 +- ddl/stat.go | 4 +- ddl/stat_test.go | 15 +- ddl/syncer/syncer.go | 6 - ddl/table.go | 10 +- ddl/table_modify_test.go | 1 + ddl/table_test.go | 83 +- ddl/ttl.go | 184 + ddl/ttl_test.go | 116 + distsql/distsql_test.go | 5 +- distsql/request_builder.go | 115 +- distsql/request_builder_test.go | 28 +- distsql/select_result.go | 5 +- distsql/select_result_test.go | 6 +- docs/design/2020-01-24-collations.md | 4 +- docs/design/2022-11-22-view-hint.md | 134 + docs/logo_with_text.png | Bin 8934 -> 0 bytes docs/tidb-architecture.png | Bin 0 -> 92568 bytes docs/tidb-logo-with-text.png | Bin 0 -> 14207 bytes domain/BUILD.bazel | 1 + domain/domain.go | 150 +- domain/domain_test.go | 95 +- domain/globalconfigsync/globalconfig_test.go | 10 +- domain/historical_stats.go | 63 + domain/infosync/info.go | 23 +- domain/plan_replayer.go | 22 + domain/plan_replayer_dump.go | 3 + dumpling/export/BUILD.bazel | 1 - dumpling/export/config.go | 28 +- dumpling/export/dump.go | 5 +- dumpling/export/status_test.go | 2 +- dumpling/tests/basic/run.sh | 4 +- dumpling/tests/e2e/run.sh | 20 + dumpling/tests/e2e_csv/run.sh | 27 +- dumpling/tests/non_exist_tables/run.sh | 2 +- errno/errcode.go | 8 + errno/errname.go | 14 +- errors.toml | 69 +- executor/BUILD.bazel | 5 +- executor/adapter.go | 36 +- executor/admin.go | 15 +- executor/aggregate.go | 4 +- executor/aggregate_test.go | 8 + executor/analyze.go | 19 +- executor/analyze_col_v2.go | 46 +- executor/analyze_global_stats.go | 12 +- executor/analyze_utils.go | 11 +- executor/analyzetest/analyze_test.go | 115 +- executor/autoidtest/BUILD.bazel | 1 + executor/autoidtest/autoid_test.go | 74 +- executor/batch_checker.go | 4 + executor/batch_point_get.go | 6 +- executor/benchmark_test.go | 41 +- executor/bind.go | 31 +- executor/builder.go | 129 +- executor/compiler.go | 2 +- executor/ddl_test.go | 205 +- executor/delete.go | 25 +- executor/distsql.go | 30 +- executor/distsql_test.go | 5 +- executor/errors.go | 3 + executor/executor.go | 82 +- executor/executor_test.go | 77 +- executor/explain_test.go | 96 +- executor/explainfor_test.go | 72 + executor/fktest/BUILD.bazel | 3 + executor/fktest/foreign_key_test.go | 472 +- executor/foreign_key.go | 140 +- executor/grant_test.go | 2 +- executor/hash_table.go | 15 +- executor/hash_table_test.go | 2 +- executor/historical_stats_test.go | 180 + executor/index_lookup_hash_join.go | 4 +- executor/index_lookup_join.go | 4 +- executor/index_lookup_join_test.go | 1 + executor/index_lookup_merge_join.go | 3 + executor/index_merge_reader.go | 359 +- executor/index_merge_reader_test.go | 234 +- executor/infoschema_cluster_table_test.go | 2 +- executor/infoschema_reader.go | 14 +- executor/insert.go | 15 +- executor/insert_common.go | 21 +- executor/insert_test.go | 19 +- executor/issuetest/BUILD.bazel | 27 + .../{ => issuetest}/executor_issue_test.go | 48 +- executor/issuetest/main_test.go | 45 + executor/join.go | 496 +- executor/join_test.go | 8 +- executor/load_data.go | 3 + executor/mem_reader.go | 53 +- executor/parallel_apply.go | 2 +- executor/partition_table_test.go | 219 +- executor/plan_replayer.go | 36 +- executor/point_get.go | 8 +- executor/projection.go | 40 +- executor/replace.go | 3 + executor/seqtest/main_test.go | 2 +- executor/seqtest/seq_executor_test.go | 26 +- executor/set_test.go | 28 +- executor/show.go | 60 +- executor/showtest/BUILD.bazel | 1 + executor/showtest/show_test.go | 100 +- executor/simple.go | 719 +- executor/simple_test.go | 178 +- executor/simpletest/simple_test.go | 240 +- executor/table_reader.go | 14 +- executor/testdata/executor_suite_out.json | 4 +- executor/tiflashtest/tiflash_test.go | 30 + executor/update.go | 2 +- executor/write.go | 10 +- expression/BUILD.bazel | 2 + expression/builtin_compare.go | 6 + expression/builtin_encryption.go | 66 +- expression/builtin_encryption_test.go | 51 + expression/builtin_encryption_vec.go | 43 + expression/builtin_encryption_vec_test.go | 3 + expression/builtin_other.go | 1 + expression/builtin_time.go | 111 +- expression/builtin_time_test.go | 15 +- expression/builtin_time_vec.go | 47 +- expression/expr_to_pb_test.go | 37 + expression/expression.go | 21 +- expression/integration_serial_test.go | 1 + expression/integration_test.go | 83 +- go.mod | 48 +- go.sum | 98 +- infoschema/builder.go | 15 +- infoschema/infoschema.go | 8 +- infoschema/tables.go | 4 +- infoschema/tables_test.go | 30 +- kv/BUILD.bazel | 1 + kv/interface_mock_test.go | 8 + kv/kv.go | 151 +- kv/option.go | 4 + meta/autoid/BUILD.bazel | 3 +- meta/autoid/autoid.go | 65 +- meta/autoid/autoid_service.go | 42 +- meta/meta.go | 24 + meta/meta_autoid.go | 2 +- metrics/grafana/performance_overview.json | 3397 ++- metrics/log_backup.go | 6 + metrics/metrics.go | 1 + metrics/telemetry.go | 39 + parser/BUILD.bazel | 1 + parser/ast/ddl.go | 240 +- parser/ast/ddl_test.go | 32 + parser/ast/dml.go | 25 +- parser/ast/misc.go | 109 +- parser/misc.go | 10 + parser/model/ddl.go | 6 +- parser/model/model.go | 44 +- parser/model/model_test.go | 20 + parser/mysql/const.go | 2 + parser/mysql/errcode.go | 1 + parser/mysql/errname.go | 1 + parser/mysql/type.go | 2 +- parser/mysql/util.go | 7 + parser/parser.go | 21057 ++++++++-------- parser/parser.y | 246 +- parser/parser_test.go | 86 +- parser/tidb/features.go | 5 + parser/ttlfeaturegate.go | 17 + parser/types/field_type.go | 10 + .../testdata/integration_suite_in.json | 4 +- .../testdata/integration_suite_out.json | 17 +- planner/core/BUILD.bazel | 2 + planner/core/common_plans.go | 126 +- planner/core/encode.go | 9 + planner/core/explain.go | 7 +- planner/core/expression_rewriter.go | 27 +- planner/core/find_best_task.go | 73 +- planner/core/flat_plan.go | 62 +- planner/core/foreign_key.go | 115 +- planner/core/fragment.go | 4 +- planner/core/indexmerge_intersection_test.go | 178 + planner/core/initialize.go | 14 + planner/core/integration_partition_test.go | 12 +- planner/core/integration_test.go | 221 +- planner/core/logical_plan_builder.go | 5 +- planner/core/main_test.go | 9 + planner/core/optimizer.go | 118 + planner/core/partition_pruner_test.go | 14 +- planner/core/physical_plan_test.go | 75 +- planner/core/physical_plan_trace_test.go | 3 +- planner/core/physical_plans.go | 61 +- planner/core/plan.go | 2 +- planner/core/plan_cache_test.go | 32 + planner/core/plan_cache_utils.go | 6 +- planner/core/plan_cacheable_checker.go | 25 +- planner/core/plan_cost_detail_test.go | 1 - planner/core/plan_cost_ver2.go | 242 +- planner/core/plan_cost_ver2_test.go | 42 +- planner/core/plan_stats.go | 50 +- planner/core/plan_test.go | 40 + planner/core/planbuilder.go | 79 +- planner/core/point_get_plan_test.go | 2 +- planner/core/preprocess.go | 26 +- planner/core/rule_column_pruning.go | 34 +- planner/core/rule_partition_processor.go | 3 +- planner/core/stats.go | 141 +- planner/core/task.go | 161 +- planner/core/testdata/analyze_suite_out.json | 6 +- .../core/testdata/binary_plan_suite_out.json | 8 +- .../core/testdata/enforce_mpp_suite_out.json | 149 +- .../expression_rewriter_suite_out.json | 36 +- .../core/testdata/index_merge_suite_in.json | 32 +- .../core/testdata/index_merge_suite_out.json | 422 + .../core/testdata/integration_suite_in.json | 27 +- .../core/testdata/integration_suite_out.json | 1421 +- .../core/testdata/join_reorder_suite_out.json | 160 +- planner/core/testdata/json_plan_suite_in.json | 12 + .../core/testdata/json_plan_suite_out.json | 165 + .../core/testdata/partition_pruner_out.json | 74 +- .../testdata/plan_normalized_suite_in.json | 9 +- .../testdata/plan_normalized_suite_out.json | 46 + planner/core/testdata/plan_suite_in.json | 32 + planner/core/testdata/plan_suite_out.json | 319 +- planner/core/util.go | 33 - planner/optimize.go | 22 + planner/util/BUILD.bazel | 2 + planner/util/misc.go | 61 + planner/util/path.go | 40 + privilege/BUILD.bazel | 1 + privilege/privilege.go | 10 +- privilege/privileges/cache.go | 40 +- privilege/privileges/cache_test.go | 15 +- privilege/privileges/errors.go | 18 +- privilege/privileges/privileges.go | 65 +- privilege/privileges/privileges_test.go | 127 + roadmap.md | 67 +- server/conn.go | 5 + server/conn_test.go | 27 + server/driver_tidb.go | 14 + server/http_status.go | 4 +- server/server.go | 1 + server/tidb_test.go | 42 +- session/BUILD.bazel | 1 + session/bootstrap.go | 173 +- session/bootstrap_test.go | 166 +- session/main_test.go | 6 +- session/nontransactional.go | 321 +- session/nontransactional_test.go | 139 +- session/schema_amender_test.go | 5 +- session/schema_test.go | 1 + session/session.go | 144 +- session/session_test/session_test.go | 4 +- .../testdata/clustered_index_suite_out.json | 12 +- session/txn.go | 24 +- session/txninfo/txn_info.go | 5 - sessionctx/context.go | 7 + sessionctx/stmtctx/stmtctx.go | 57 +- sessionctx/stmtctx/stmtctx_test.go | 14 +- sessionctx/variable/BUILD.bazel | 1 + sessionctx/variable/error.go | 1 + sessionctx/variable/noop.go | 7 +- sessionctx/variable/session.go | 67 +- sessionctx/variable/session_test.go | 8 +- sessionctx/variable/sysvar.go | 215 +- sessionctx/variable/sysvar_test.go | 91 +- sessionctx/variable/tidb_vars.go | 77 +- sessionctx/variable/variable.go | 1 + sessionctx/variable/varsutil.go | 10 + sessionctx/variable/varsutil_test.go | 1 + sessiontxn/isolation/base.go | 4 + statistics/column.go | 3 - statistics/handle/gc.go | 25 + statistics/handle/handle.go | 26 +- statistics/handle/handle_hist.go | 36 +- statistics/handle/handle_hist_test.go | 4 +- statistics/handle/handle_test.go | 4 +- statistics/handle/update.go | 5 +- statistics/handle/update_test.go | 4 +- .../testdata/integration_suite_out.json | 12 +- store/copr/batch_coprocessor.go | 3 +- store/copr/copr_test/coprocessor_test.go | 77 +- store/copr/coprocessor.go | 269 +- store/copr/mpp.go | 2 +- store/copr/region_cache.go | 28 + store/driver/txn/BUILD.bazel | 1 + store/driver/txn/error.go | 7 + store/driver/txn/txn_driver.go | 2 + store/helper/helper.go | 14 +- table/BUILD.bazel | 1 + table/column.go | 34 + table/table.go | 6 +- table/tables/index.go | 128 +- table/tables/tables.go | 20 +- table/tables/tables_test.go | 8 +- table/temptable/BUILD.bazel | 1 + table/temptable/ddl.go | 2 +- table/temptable/main_test.go | 3 +- tablecodec/tablecodec.go | 41 + telemetry/data_feature_usage.go | 14 + telemetry/data_feature_usage_test.go | 51 +- telemetry/data_window_test.go | 6 +- testkit/mockstore.go | 1 + testkit/result.go | 5 + testkit/testkit.go | 23 + testkit/testutil/require.go | 12 + tests/realtikvtest/addindextest/BUILD.bazel | 3 + .../addindextest/integration_test.go | 159 + tests/realtikvtest/addindextest/main_test.go | 4 + .../pessimistictest/pessimistic_test.go | 12 + tests/realtikvtest/statisticstest/BUILD.bazel | 2 - .../realtikvtest/statisticstest/main_test.go | 11 - tests/realtikvtest/txntest/txn_state_test.go | 20 +- tidb-server/main.go | 21 +- ttl/cache/BUILD.bazel | 51 + ttl/cache/base.go | 41 + ttl/cache/base_test.go | 33 + ttl/cache/infoschema.go | 115 + ttl/cache/infoschema_test.go | 74 + ttl/cache/main_test.go | 33 + ttl/cache/table.go | 163 + ttl/cache/table_test.go | 221 + ttl/cache/ttlstatus.go | 186 + ttl/cache/ttlstatus_test.go | 181 + ttl/session/BUILD.bazel | 38 + ttl/session/main_test.go | 33 + ttl/session/session.go | 147 + ttl/session/session_test.go | 65 + ttl/session/sysvar_test.go | 125 + ttl/sqlbuilder/BUILD.bazel | 42 + ttl/sqlbuilder/main_test.go | 33 + ttl/sqlbuilder/sql.go | 473 + ttl/sqlbuilder/sql_test.go | 815 + ttl/ttlworker/BUILD.bazel | 55 + ttl/ttlworker/del.go | 276 + ttl/ttlworker/del_test.go | 389 + ttl/ttlworker/scan.go | 288 + ttl/ttlworker/scan_test.go | 397 + ttl/ttlworker/session.go | 168 + ttl/ttlworker/session_test.go | 329 + ttl/ttlworker/worker.go | 126 + types/errors.go | 2 + types/etc.go | 5 + types/explain_format.go | 3 + types/time.go | 4 + util/cgroup/cgroup_cpu_linux.go | 1 - util/cgroup/cgroup_cpu_unsupport.go | 1 - util/chunk/row.go | 20 +- util/chunk/row_container.go | 18 +- util/dbterror/ddl_terror.go | 13 + util/ddl-checker/executable_checker.go | 2 +- util/execdetails/execdetails.go | 247 +- util/execdetails/execdetails_test.go | 57 +- util/expensivequery/expensivequery.go | 10 +- util/gctuner/memory_limit_tuner.go | 17 +- util/gctuner/memory_limit_tuner_test.go | 10 +- util/hint/hint_processor.go | 43 +- util/mathutil/BUILD.bazel | 2 + util/mathutil/exponential_average.go | 54 + util/mathutil/exponential_average_test.go | 39 + util/memory/memstats.go | 14 +- util/memory/tracker.go | 22 +- util/memoryusagealarm/memoryusagealarm.go | 10 +- .../memoryusagealarm/memoryusagealarm_test.go | 2 + util/mock/context.go | 36 +- util/password-validation/BUILD.bazel | 23 + .../password_validation.go | 175 + .../password_validation_test.go | 175 + util/plancodec/id.go | 14 + util/processinfo.go | 11 +- util/ranger/detacher.go | 1 + util/ranger/testdata/ranger_suite_out.json | 2 +- util/ranger/types.go | 3 + util/servermemorylimit/BUILD.bazel | 2 + util/servermemorylimit/servermemorylimit.go | 25 + util/stmtsummary/statement_summary.go | 43 + util/stmtsummary/statement_summary_test.go | 41 +- util/util.go | 33 + util/util_test.go | 8 +- util/watcher/watcher.go | 4 +- 595 files changed, 43247 insertions(+), 17371 deletions(-) delete mode 100644 .github/workflows/integration-test-br-compatibility.yml create mode 100644 br/pkg/checkpoint/BUILD.bazel create mode 100644 br/pkg/checkpoint/checkpoint.go create mode 100644 br/pkg/checkpoint/checkpoint_test.go create mode 100644 br/pkg/lightning/backend/kv/session_internal_test.go create mode 100644 br/pkg/streamhelper/flush_subscriber.go create mode 100644 br/pkg/streamhelper/spans/BUILD.bazel create mode 100644 br/pkg/streamhelper/spans/sorted.go create mode 100644 br/pkg/streamhelper/spans/sorted_test.go create mode 100644 br/pkg/streamhelper/spans/utils.go create mode 100644 br/pkg/streamhelper/spans/utils_test.go create mode 100644 br/pkg/streamhelper/spans/value_sorted.go create mode 100644 br/pkg/streamhelper/spans/value_sorted_test.go create mode 100644 br/pkg/streamhelper/subscription_test.go delete mode 100644 br/pkg/streamhelper/tsheap.go delete mode 100644 br/pkg/streamhelper/tsheap_test.go create mode 100644 br/tests/br_foreign_key/run.sh create mode 100644 br/tests/lightning_check_partial_imported/config.toml create mode 100644 br/tests/lightning_check_partial_imported/data/db01.tbl01-schema.sql create mode 100644 br/tests/lightning_check_partial_imported/data/db01.tbl01.csv create mode 100755 br/tests/lightning_check_partial_imported/run.sh create mode 100644 br/tests/lightning_compress/config.toml create mode 100644 br/tests/lightning_compress/data.gzip/compress-schema-create.sql.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.empty_strings-schema.sql.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.empty_strings.000000000.csv.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.escapes-schema.sql.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.escapes.000000000.csv.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.multi_rows-schema.sql.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.multi_rows.000000000.csv.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.threads-schema.sql.gz create mode 100644 br/tests/lightning_compress/data.gzip/compress.threads.000000000.csv.gz create mode 100644 br/tests/lightning_compress/data.snappy/compress-schema-create.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.empty_strings-schema.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.empty_strings.000000000.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.escapes-schema.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.escapes.000000000.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.multi_rows-schema.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.multi_rows.000000000.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.threads-schema.sql.snappy create mode 100644 br/tests/lightning_compress/data.snappy/compress.threads.000000000.sql.snappy create mode 100644 br/tests/lightning_compress/data.zstd/compress-schema-create.sql.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.empty_strings-schema.sql.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.empty_strings.000000000.csv.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.escapes-schema.sql.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.escapes.000000000.csv.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.multi_rows-schema.sql.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.multi_rows.000000000.csv.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.threads-schema.sql.zst create mode 100644 br/tests/lightning_compress/data.zstd/compress.threads.000000000.csv.zst create mode 100755 br/tests/lightning_compress/run.sh delete mode 100644 build/patches/io_etcd_go_etcd_raft_v3.patch create mode 100644 cmd/explaintest/r/explain_foreign_key.result create mode 100644 cmd/explaintest/t/explain_foreign_key.test create mode 100644 ddl/fktest/BUILD.bazel create mode 100644 ddl/fktest/foreign_key_test.go create mode 100644 ddl/fktest/main_test.go create mode 100644 ddl/index_cop.go create mode 100644 ddl/index_cop_test.go create mode 100644 ddl/ttl.go create mode 100644 ddl/ttl_test.go create mode 100644 docs/design/2022-11-22-view-hint.md delete mode 100644 docs/logo_with_text.png create mode 100644 docs/tidb-architecture.png create mode 100644 docs/tidb-logo-with-text.png create mode 100644 domain/historical_stats.go create mode 100644 executor/historical_stats_test.go create mode 100644 executor/issuetest/BUILD.bazel rename executor/{ => issuetest}/executor_issue_test.go (96%) create mode 100644 executor/issuetest/main_test.go create mode 100644 parser/ttlfeaturegate.go create mode 100644 planner/core/indexmerge_intersection_test.go create mode 100644 planner/core/testdata/json_plan_suite_in.json create mode 100644 planner/core/testdata/json_plan_suite_out.json create mode 100644 planner/util/misc.go create mode 100644 ttl/cache/BUILD.bazel create mode 100644 ttl/cache/base.go create mode 100644 ttl/cache/base_test.go create mode 100644 ttl/cache/infoschema.go create mode 100644 ttl/cache/infoschema_test.go create mode 100644 ttl/cache/main_test.go create mode 100644 ttl/cache/table.go create mode 100644 ttl/cache/table_test.go create mode 100644 ttl/cache/ttlstatus.go create mode 100644 ttl/cache/ttlstatus_test.go create mode 100644 ttl/session/BUILD.bazel create mode 100644 ttl/session/main_test.go create mode 100644 ttl/session/session.go create mode 100644 ttl/session/session_test.go create mode 100644 ttl/session/sysvar_test.go create mode 100644 ttl/sqlbuilder/BUILD.bazel create mode 100644 ttl/sqlbuilder/main_test.go create mode 100644 ttl/sqlbuilder/sql.go create mode 100644 ttl/sqlbuilder/sql_test.go create mode 100644 ttl/ttlworker/BUILD.bazel create mode 100644 ttl/ttlworker/del.go create mode 100644 ttl/ttlworker/del_test.go create mode 100644 ttl/ttlworker/scan.go create mode 100644 ttl/ttlworker/scan_test.go create mode 100644 ttl/ttlworker/session.go create mode 100644 ttl/ttlworker/session_test.go create mode 100644 ttl/ttlworker/worker.go create mode 100644 util/mathutil/exponential_average.go create mode 100644 util/mathutil/exponential_average_test.go create mode 100644 util/password-validation/BUILD.bazel create mode 100644 util/password-validation/password_validation.go create mode 100644 util/password-validation/password_validation_test.go diff --git a/.github/workflows/integration-test-br-compatibility.yml b/.github/workflows/integration-test-br-compatibility.yml deleted file mode 100644 index 5df7168467005..0000000000000 --- a/.github/workflows/integration-test-br-compatibility.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: BR / Compatibility Test - -on: - push: - # merged git action - branches: - - master - - "release-[0-9].[0-9]*" - paths: - - "br/**" - - "!**.html" - - "!**.md" - - "!CNAME" - - "!LICENSE" - - "!br/docs/**" - - "!br/tests/**" - - "!br/docker/**" - # disable pull request only keep the merge action since it is very costly to run those tests - # pull_request: - -concurrency: - group: ${{ github.ref }}-${{ github.workflow }} - cancel-in-progress: true - -permissions: - contents: read # to fetch code (actions/checkout) - -jobs: - check: - runs-on: ubuntu-latest - timeout-minutes: 25 - steps: - - uses: actions/checkout@v2 - - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version-file: 'go.mod' - - - name: Generate compatibility test backup data - timeout-minutes: 15 - run: sh br/compatibility/prepare_backup.sh - - - name: Start server - run: | - TAG=nightly PORT_SUFFIX=1 docker-compose -f br/compatibility/backup_cluster.yaml rm -s -v - TAG=nightly PORT_SUFFIX=1 docker-compose -f br/compatibility/backup_cluster.yaml build - TAG=nightly PORT_SUFFIX=1 docker-compose -f br/compatibility/backup_cluster.yaml up --remove-orphans -d - TAG=nightly PORT_SUFFIX=1 docker-compose -f br/compatibility/backup_cluster.yaml exec -T control go mod tidy - TAG=nightly PORT_SUFFIX=1 docker-compose -f br/compatibility/backup_cluster.yaml exec -T control make build_br - TAG=nightly PORT_SUFFIX=1 docker-compose -f br/compatibility/backup_cluster.yaml exec -T control br/tests/run_compatible.sh run - - - name: Collect component log - if: ${{ failure() }} - run: | - tar czvf ${{ github.workspace }}/logs.tar.gz /tmp/br/docker/backup_logs/* - - - uses: actions/upload-artifact@v2 - if: ${{ failure() }} - with: - name: logs - path: ${{ github.workspace }}/logs.tar.gz diff --git a/.gitignore b/.gitignore index e2cdcd078a0f1..35af372bcccad 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ bazel-out bazel-testlogs bazel-tidb .ijwb/ +/oom_record/ diff --git a/DEPS.bzl b/DEPS.bzl index 1d23df5e1e756..e4388313bb354 100644 --- a/DEPS.bzl +++ b/DEPS.bzl @@ -5,8 +5,8 @@ def go_deps(): name = "cc_mvdan_gofumpt", build_file_proto_mode = "disable", importpath = "mvdan.cc/gofumpt", - sum = "h1:avhhrOmv0IuvQVK7fvwV91oFSGAk5/6Po8GXTzICeu8=", - version = "v0.3.1", + sum = "h1:JVf4NN1mIpHogBj7ABpgOyZc65/UUOkKQFkoURsz4MM=", + version = "v0.4.0", ) go_repository( name = "cc_mvdan_interfacer", @@ -44,6 +44,14 @@ def go_deps(): sum = "h1:zeZSRqj5yCg28tCkIV/z/lWbwvNm5qnKVS15PI8nhD0=", version = "v0.1.0", ) + go_repository( + name = "com_github_abirdcfly_dupword", + build_file_proto_mode = "disable", + importpath = "github.com/Abirdcfly/dupword", + sum = "h1:z14n0yytA3wNO2gpCD/jVtp/acEXPGmYu0esewpBt6Q=", + version = "v0.0.7", + ) + go_repository( name = "com_github_acarl005_stripansi", build_file_proto_mode = "disable", @@ -324,8 +332,8 @@ def go_deps(): name = "com_github_burntsushi_toml", build_file_proto_mode = "disable_global", importpath = "github.com/BurntSushi/toml", - sum = "h1:Rt8g24XnyGTyglgET/PRUNlrUeu9F5L+7FilkXfZgs0=", - version = "v1.2.0", + sum = "h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak=", + version = "v1.2.1", ) go_repository( name = "com_github_burntsushi_xgb", @@ -657,8 +665,8 @@ def go_deps(): name = "com_github_curioswitch_go_reassign", build_file_proto_mode = "disable", importpath = "github.com/curioswitch/go-reassign", - sum = "h1:ekM07+z+VFT560Exz4mTv0/s1yU9gem6CJc/tlYpkmI=", - version = "v0.1.2", + sum = "h1:G9UZyOcpk/d7Gd6mqYgd8XYWFMw/znxwGDUstnC9DIo=", + version = "v0.2.0", ) go_repository( @@ -686,8 +694,8 @@ def go_deps(): name = "com_github_daixiang0_gci", build_file_proto_mode = "disable", importpath = "github.com/daixiang0/gci", - sum = "h1:wUAqXChk8HbwXn8AfxD9DYSCp9Bpz1L3e6Q4Roe+q9E=", - version = "v0.6.3", + sum = "h1:yBdsd376w+RIBvFXjj0MAcGWS8cSCfAlRNPfn5xvjl0=", + version = "v0.8.5", ) go_repository( @@ -752,8 +760,8 @@ def go_deps(): name = "com_github_dgraph_io_ristretto", build_file_proto_mode = "disable_global", importpath = "github.com/dgraph-io/ristretto", - sum = "h1:Wrc3UKTS+cffkOx0xRGFC+ZesNuTfn0ThvEC72N0krk=", - version = "v0.1.1-0.20220403145359-8e850b710d6d", + sum = "h1:6CWw5tJNgpegArSHpNHJKldNeq03FQCwYvfMVWajOK8=", + version = "v0.1.1", ) go_repository( name = "com_github_dgrijalva_jwt_go", @@ -1083,8 +1091,8 @@ def go_deps(): name = "com_github_go_critic_go_critic", build_file_proto_mode = "disable", importpath = "github.com/go-critic/go-critic", - sum = "h1:tucuG1pvOyYgpBIrVxw0R6gwO42lNa92Aq3VaDoIs+E=", - version = "v0.6.4", + sum = "h1:fDaR/5GWURljXwF8Eh31T2GZNz9X4jeboS912mWF8Uo=", + version = "v0.6.5", ) go_repository( @@ -1155,8 +1163,8 @@ def go_deps(): name = "com_github_go_sql_driver_mysql", build_file_proto_mode = "disable_global", importpath = "github.com/go-sql-driver/mysql", - sum = "h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE=", - version = "v1.6.0", + sum = "h1:ueSltNNllEqE3qcWBTD0iQd3IpL/6U+mJxLkazJ7YPc=", + version = "v1.7.0", ) go_repository( name = "com_github_go_stack_stack", @@ -1183,15 +1191,15 @@ def go_deps(): name = "com_github_go_toolsmith_astcopy", build_file_proto_mode = "disable", importpath = "github.com/go-toolsmith/astcopy", - sum = "h1:l09oBhAPyV74kLJ3ZO31iBU8htZGTwr9LTjuMCyL8go=", - version = "v1.0.1", + sum = "h1:YnWf5Rnh1hUudj11kei53kI57quN/VH6Hp1n+erozn0=", + version = "v1.0.2", ) go_repository( name = "com_github_go_toolsmith_astequal", build_file_proto_mode = "disable", importpath = "github.com/go-toolsmith/astequal", - sum = "h1:+XvaV8zNxua+9+Oa4AHmgmpo4RYAbwr/qjNppLfX2yM=", - version = "v1.0.2", + sum = "h1:+LVdyRatFS+XO78SGV4I3TCEA0AC7fKEGma+fH+674o=", + version = "v1.0.3", ) go_repository( name = "com_github_go_toolsmith_astfmt", @@ -1381,15 +1389,15 @@ def go_deps(): name = "com_github_golangci_gofmt", build_file_proto_mode = "disable", importpath = "github.com/golangci/gofmt", - sum = "h1:iR3fYXUjHCR97qWS8ch1y9zPNsgXThGwjKPrYfqMPks=", - version = "v0.0.0-20190930125516-244bba706f1a", + sum = "h1:amWTbTGqOZ71ruzrdA+Nx5WA3tV1N0goTspwmKCQvBY=", + version = "v0.0.0-20220901101216-f2edd75033f2", ) go_repository( name = "com_github_golangci_golangci_lint", build_file_proto_mode = "disable", importpath = "github.com/golangci/golangci-lint", - sum = "h1:I8WHOavragDttlLHtSraHn/h39C+R60bEQ5NoGcHQr8=", - version = "v1.49.0", + sum = "h1:C829clMcZXEORakZlwpk7M4iDw2XiwxxKaG504SZ9zY=", + version = "v1.50.1", ) go_repository( name = "com_github_golangci_gosec", @@ -1461,8 +1469,8 @@ def go_deps(): name = "com_github_google_go_cmp", build_file_proto_mode = "disable_global", importpath = "github.com/google/go-cmp", - sum = "h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=", - version = "v0.5.8", + sum = "h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=", + version = "v0.5.9", ) go_repository( name = "com_github_google_go_querystring", @@ -1849,8 +1857,8 @@ def go_deps(): name = "com_github_inconshreveable_mousetrap", build_file_proto_mode = "disable_global", importpath = "github.com/inconshreveable/mousetrap", - sum = "h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM=", - version = "v1.0.0", + sum = "h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc=", + version = "v1.0.1", ) go_repository( name = "com_github_influxdata_influxdb", @@ -2154,6 +2162,14 @@ def go_deps(): sum = "h1:AV2c/EiW3KqPNT9ZKl07ehoAGi4C5/01Cfbblndcapg=", version = "v1.0.0", ) + go_repository( + name = "com_github_kkhaike_contextcheck", + build_file_proto_mode = "disable", + importpath = "github.com/kkHAIKE/contextcheck", + sum = "h1:l4pNvrb8JSwRd51ojtcOxOeHJzHek+MtOyXbaR0uvmw=", + version = "v1.1.3", + ) + go_repository( name = "com_github_klauspost_compress", build_file_proto_mode = "disable_global", @@ -2349,6 +2365,14 @@ def go_deps(): sum = "h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo=", version = "v1.8.6", ) + go_repository( + name = "com_github_maratori_testableexamples", + build_file_proto_mode = "disable", + importpath = "github.com/maratori/testableexamples", + sum = "h1:dU5alXRrD8WKSjOUnmJZuzdxWOEQ57+7s93SLMxb2vI=", + version = "v1.0.0", + ) + go_repository( name = "com_github_maratori_testpackage", build_file_proto_mode = "disable", @@ -2652,8 +2676,8 @@ def go_deps(): name = "com_github_nishanths_exhaustive", build_file_proto_mode = "disable", importpath = "github.com/nishanths/exhaustive", - sum = "h1:0QKNascWv9qIHY7zRoZSxeRr6kuk5aAT3YXLTiDmjTo=", - version = "v0.8.1", + sum = "h1:pw5O09vwg8ZaditDp/nQRqVnrMczSJDxRDJMowvhsrM=", + version = "v0.8.3", ) go_repository( @@ -2725,8 +2749,8 @@ def go_deps(): name = "com_github_openpeedeep_depguard", build_file_proto_mode = "disable", importpath = "github.com/OpenPeeDeeP/depguard", - sum = "h1:pjK9nLPS1FwQYGGpPxoMYpe7qACHOhAWQMQzV71i49o=", - version = "v1.1.0", + sum = "h1:TSUznLjvp/4IUP+OQ0t/4jF4QUyxIcVX8YnghZdunyA=", + version = "v1.1.1", ) go_repository( @@ -2805,8 +2829,8 @@ def go_deps(): name = "com_github_pelletier_go_toml_v2", build_file_proto_mode = "disable", importpath = "github.com/pelletier/go-toml/v2", - sum = "h1:+jQXlF3scKIcSEKkdHzXhCTDLPFi5r1wnK6yPS+49Gw=", - version = "v2.0.2", + sum = "h1:ipoSadvV8oGUjnUbMub59IDPPwfxF694nG/jwbMiyQg=", + version = "v2.0.5", ) go_repository( name = "com_github_peterbourgon_g2s", @@ -2856,8 +2880,8 @@ def go_deps(): name = "com_github_pingcap_check", build_file_proto_mode = "disable_global", importpath = "github.com/pingcap/check", - sum = "h1:iRtOAQ6FXkY/BGvst3CDfTva4nTqh6CL8WXvanLdbu0=", - version = "v0.0.0-20191107115940-caf2b9e6ccf4", + sum = "h1:R8gStypOBmpnHEx1qi//SaqxJVI4inOqljg/Aj5/390=", + version = "v0.0.0-20200212061837-5e12011dc712", ) go_repository( name = "com_github_pingcap_errors", @@ -2891,8 +2915,8 @@ def go_deps(): name = "com_github_pingcap_kvproto", build_file_proto_mode = "disable_global", importpath = "github.com/pingcap/kvproto", - sum = "h1:ho5XUD8DVCnkpEj8oiTR57FXDTXnH6znyLe0gyrtzKk=", - version = "v0.0.0-20221103025916-e7e21f0e9cd9", + sum = "h1:46ZD6xzQWJ8Jkeal/U7SqkX030Mgs8DAn6QV/9zbqOQ=", + version = "v0.0.0-20221130022225-6c56ac56fe5f", ) go_repository( name = "com_github_pingcap_log", @@ -2912,8 +2936,8 @@ def go_deps(): name = "com_github_pingcap_tipb", build_file_proto_mode = "disable_global", importpath = "github.com/pingcap/tipb", - sum = "h1:Yoo8j5xQGxjlsC3yt0ndsiAz0WZXED9rzsKmEN0U0DY=", - version = "v0.0.0-20221020071514-cd933387bcb5", + sum = "h1:DbmCfCbcavo0JG+gSp0ySvv1ub/c/j3hsnYzyYPzONo=", + version = "v0.0.0-20221123081521-2fb828910813", ) go_repository( name = "com_github_pkg_browser", @@ -2947,8 +2971,8 @@ def go_deps(): name = "com_github_polyfloyd_go_errorlint", build_file_proto_mode = "disable", importpath = "github.com/polyfloyd/go-errorlint", - sum = "h1:kp1yvHflYhTmw5m3MmBy8SCyQkKPjwDthVuMH0ug6Yk=", - version = "v1.0.2", + sum = "h1:AHB5JRCjlmelh9RrLxT9sgzpalIwwq4hqE8EkwIwKdY=", + version = "v1.0.5", ) go_repository( @@ -3012,8 +3036,8 @@ def go_deps(): name = "com_github_quasilyte_go_ruleguard", build_file_proto_mode = "disable", importpath = "github.com/quasilyte/go-ruleguard", - sum = "h1:cDdoaSbQg11LXPDQqiCK54QmQXsEQQCTIgdcpeULGSI=", - version = "v0.3.17", + sum = "h1:sd+abO1PEI9fkYennwzHn9kl3nqP6M5vE7FiOzZ+5CE=", + version = "v0.3.18", ) go_repository( name = "com_github_quasilyte_go_ruleguard_dsl", @@ -3026,8 +3050,8 @@ def go_deps(): name = "com_github_quasilyte_gogrep", build_file_proto_mode = "disable", importpath = "github.com/quasilyte/gogrep", - sum = "h1:PDWGei+Rf2bBiuZIbZmM20J2ftEy9IeUCHA8HbQqed8=", - version = "v0.0.0-20220120141003-628d8b3623b5", + sum = "h1:6Gtn2i04RD0gVyYf2/IUMTIs+qYleBt4zxDqkLTcu4U=", + version = "v0.0.0-20220828223005-86e4605de09f", ) go_repository( name = "com_github_quasilyte_regex_syntax", @@ -3168,8 +3192,8 @@ def go_deps(): name = "com_github_sashamelentyev_usestdlibvars", build_file_proto_mode = "disable", importpath = "github.com/sashamelentyev/usestdlibvars", - sum = "h1:uObNudVEEHf6JbOJy5bgKJloA1bWjxR9fwgNFpPzKnI=", - version = "v1.13.0", + sum = "h1:K6CXjqqtSYSsuyRDDC7Sjn6vTMLiSJa4ZmDkiokoqtw=", + version = "v1.20.0", ) go_repository( @@ -3221,8 +3245,8 @@ def go_deps(): name = "com_github_shirou_gopsutil_v3", build_file_proto_mode = "disable_global", importpath = "github.com/shirou/gopsutil/v3", - sum = "h1:flKnuCMfUUrO+oAvwAd6GKZgnPzr098VA/UJ14nhJd4=", - version = "v3.22.7", + sum = "h1:yibtJhIVEMcdw+tCTbOPiF1VcsuDeTE4utJ8Dm4c5eA=", + version = "v3.22.9", ) go_repository( name = "com_github_shopify_goreferrer", @@ -3351,8 +3375,8 @@ def go_deps(): name = "com_github_spaolacci_murmur3", build_file_proto_mode = "disable_global", importpath = "github.com/spaolacci/murmur3", - sum = "h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ=", - version = "v0.0.0-20180118202830-f09979ecbc72", + sum = "h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI=", + version = "v1.1.0", ) go_repository( name = "com_github_spf13_afero", @@ -3372,8 +3396,8 @@ def go_deps(): name = "com_github_spf13_cobra", build_file_proto_mode = "disable_global", importpath = "github.com/spf13/cobra", - sum = "h1:X+jTBEBqF0bHN+9cSMgmfuvv2VHJ9ezmFNf9Y/XstYU=", - version = "v1.5.0", + sum = "h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA=", + version = "v1.6.1", ) go_repository( name = "com_github_spf13_jwalterweatherman", @@ -3444,8 +3468,8 @@ def go_deps(): name = "com_github_subosito_gotenv", build_file_proto_mode = "disable_global", importpath = "github.com/subosito/gotenv", - sum = "h1:yAzM1+SmVcz5R4tXGsNMu1jUl2aOJXoiWUCEwwnGrvs=", - version = "v1.4.0", + sum = "h1:jyEFiXpy21Wm81FBN71l9VoMMV8H8jG+qIK3GCpY6Qs=", + version = "v1.4.1", ) go_repository( name = "com_github_sylvia7788_contextcheck", @@ -3495,8 +3519,8 @@ def go_deps(): name = "com_github_tikv_client_go_v2", build_file_proto_mode = "disable_global", importpath = "github.com/tikv/client-go/v2", - sum = "h1:nFVdyTXcQYZwQQCdSJcFI1vBFyzG1hVuZ39MAK6wqK4=", - version = "v2.0.3-0.20221108030801-9c0835c80eba", + sum = "h1:Nr2EhvqkOE9xFyU7LV9c9EbsgN3OzVALdbfobK7Fmn4=", + version = "v2.0.3-0.20221205084317-ad59ca833a78", ) go_repository( name = "com_github_tikv_pd_client", @@ -3512,6 +3536,14 @@ def go_deps(): sum = "h1:kl4KhGNsJIbDHS9/4U9yQo1UcPQM0kOMJHn29EoH/Ro=", version = "v0.0.0-20210704033933-f49887972144", ) + go_repository( + name = "com_github_timonwong_loggercheck", + build_file_proto_mode = "disable", + importpath = "github.com/timonwong/loggercheck", + sum = "h1:ecACo9fNiHxX4/Bc02rW2+kaJIAMAes7qJ7JKxt0EZI=", + version = "v0.9.3", + ) + go_repository( name = "com_github_timonwong_logrlint", build_file_proto_mode = "disable", @@ -3545,15 +3577,15 @@ def go_deps(): name = "com_github_tomarrell_wrapcheck_v2", build_file_proto_mode = "disable", importpath = "github.com/tomarrell/wrapcheck/v2", - sum = "h1:3dI6YNcrJTQ/CJQ6M/DUkc0gnqYSIk6o0rChn9E/D0M=", - version = "v2.6.2", + sum = "h1:J/F8DbSKJC83bAvC6FoZaRjZiZ/iKoueSdrEkmGeacA=", + version = "v2.7.0", ) go_repository( name = "com_github_tommy_muehle_go_mnd_v2", build_file_proto_mode = "disable", importpath = "github.com/tommy-muehle/go-mnd/v2", - sum = "h1:iAj0a8e6+dXSL7Liq0aXPox36FiN1dBbjA6lt9fl65s=", - version = "v2.5.0", + sum = "h1:NowYhSdyE/1zwK9QCLeRb6USWdoif80Ie+v+yU8u1Zw=", + version = "v2.5.1", ) go_repository( @@ -3829,6 +3861,14 @@ def go_deps(): sum = "h1:b1zWmYuuHz7gO9kDcM/EpHGr06UgsYNRpNJzI2kFiLM=", version = "v1.5.0", ) + go_repository( + name = "com_google_cloud_go_compute_metadata", + build_file_proto_mode = "disable", + importpath = "cloud.google.com/go/compute/metadata", + sum = "h1:nBbNSZyDpkNlo3DepaaLKVuO7ClyifSAmNloSCZrHnQ=", + version = "v0.2.0", + ) + go_repository( name = "com_google_cloud_go_datastore", build_file_proto_mode = "disable_global", @@ -3955,8 +3995,8 @@ def go_deps(): name = "in_gopkg_ini_v1", build_file_proto_mode = "disable_global", importpath = "gopkg.in/ini.v1", - sum = "h1:LATuAqN/shcYAOkv3wl2L4rkaKqkcgTBQjOyYDvcPKI=", - version = "v1.66.6", + sum = "h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=", + version = "v1.67.0", ) go_repository( name = "in_gopkg_jcmturner_aescts_v1", @@ -4092,10 +4132,6 @@ def go_deps(): name = "io_etcd_go_etcd_raft_v3", build_file_proto_mode = "disable_global", importpath = "go.etcd.io/etcd/raft/v3", - patch_args = ["-p1"], - patches = [ - "//build/patches:io_etcd_go_etcd_raft_v3.patch", - ], sum = "h1:uCC37qOXqBvKqTGHGyhASsaCsnTuJugl1GvneJNwHWo=", version = "v3.5.2", ) @@ -4338,15 +4374,15 @@ def go_deps(): name = "org_golang_x_exp", build_file_proto_mode = "disable_global", importpath = "golang.org/x/exp", - sum = "h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA=", - version = "v0.0.0-20220722155223-a9213eeb770e", + sum = "h1:SkwG94eNiiYJhbeDE018Grw09HIN/KB9NlRmZsrzfWs=", + version = "v0.0.0-20221023144134-a1e5550cf13e", ) go_repository( name = "org_golang_x_exp_typeparams", build_file_proto_mode = "disable", importpath = "golang.org/x/exp/typeparams", - sum = "h1:+W8Qf4iJtMGKkyAygcKohjxTk4JPsL9DpzApJ22m5Ic=", - version = "v0.0.0-20220613132600-b0d781184e0d", + sum = "h1:Ic/qN6TEifvObMGQy72k0n1LlJr7DjWWEi+MOsDOiSk=", + version = "v0.0.0-20220827204233-334a2380cb91", ) go_repository( @@ -4374,43 +4410,43 @@ def go_deps(): name = "org_golang_x_mod", build_file_proto_mode = "disable_global", importpath = "golang.org/x/mod", - sum = "h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s=", - version = "v0.6.0-dev.0.20220419223038-86c51ed26bb4", + sum = "h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA=", + version = "v0.7.0", ) go_repository( name = "org_golang_x_net", build_file_proto_mode = "disable_global", importpath = "golang.org/x/net", - sum = "h1:hZ/3BUoy5aId7sCpA/Tc5lt8DkFgdVS2onTpJsZ/fl0=", - version = "v0.1.0", + sum = "h1:sZfSu1wtKLGlWI4ZZayP0ck9Y73K1ynO6gqzTdBVdPU=", + version = "v0.2.0", ) go_repository( name = "org_golang_x_oauth2", build_file_proto_mode = "disable_global", importpath = "golang.org/x/oauth2", - sum = "h1:OSnWWcOd/CtWQC2cYSBgbTSJv3ciqd8r54ySIW2y3RE=", - version = "v0.0.0-20220411215720-9780585627b5", + sum = "h1:GtQkldQ9m7yvzCL1V+LrYow3Khe0eJH0w7RbX/VbaIU=", + version = "v0.2.0", ) go_repository( name = "org_golang_x_sync", build_file_proto_mode = "disable_global", importpath = "golang.org/x/sync", - sum = "h1:uVc8UZUe6tr40fFVnUP5Oj+veunVezqYl9z7DYw9xzw=", - version = "v0.0.0-20220722155255-886fb9371eb4", + sum = "h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o=", + version = "v0.1.0", ) go_repository( name = "org_golang_x_sys", build_file_proto_mode = "disable_global", importpath = "golang.org/x/sys", - sum = "h1:kunALQeHf1/185U1i0GOB/fy1IPRDDpuoOOqRReG57U=", - version = "v0.1.0", + sum = "h1:ljd4t30dBnAvMZaQCevtY0xLLD0A+bRZXbgLMLU1F/A=", + version = "v0.2.0", ) go_repository( name = "org_golang_x_term", build_file_proto_mode = "disable_global", importpath = "golang.org/x/term", - sum = "h1:g6Z6vPFA9dYBAF7DWcH6sCcOntplXsDKcliusYijMlw=", - version = "v0.1.0", + sum = "h1:z85xZCsEl7bi/KwbNADeBYoOP0++7W1ipu+aGnpwzRM=", + version = "v0.2.0", ) go_repository( name = "org_golang_x_text", @@ -4423,15 +4459,15 @@ def go_deps(): name = "org_golang_x_time", build_file_proto_mode = "disable_global", importpath = "golang.org/x/time", - sum = "h1:M73Iuj3xbbb9Uk1DYhzydthsj6oOd6l9bpuFcNoUvTs=", - version = "v0.0.0-20220224211638-0e9765cccd65", + sum = "h1:52I/1L54xyEQAYdtcSuxtiT84KGYTBGXwayxmIpNJhE=", + version = "v0.2.0", ) go_repository( name = "org_golang_x_tools", build_file_proto_mode = "disable_global", importpath = "golang.org/x/tools", - sum = "h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU=", - version = "v0.1.12", + sum = "h1:G6AHpWxTMGY1KyEYoAQ5WTtIekUUvDNjan3ugu60JvE=", + version = "v0.2.0", ) go_repository( name = "org_golang_x_xerrors", diff --git a/README.md b/README.md index 74a81008de990..e894003f08f84 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](docs/logo_with_text.png) +TiDB, a distributed SQL database [![LICENSE](https://img.shields.io/github/license/pingcap/tidb.svg)](https://github.com/pingcap/tidb/blob/master/LICENSE) [![Language](https://img.shields.io/badge/Language-Go-blue.svg)](https://golang.org/) @@ -12,15 +12,15 @@ ## What is TiDB? -TiDB ("Ti" stands for Titanium) is an open-source NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. +TiDB (/’taɪdiːbi:/, "Ti" stands for Titanium) is an open-source distributed SQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. - [Key features](https://docs.pingcap.com/tidb/stable/overview#key-features) - [Architecture](#architecture) -- [MySQL Compatibility](https://docs.pingcap.com/tidb/stable/mysql-compatibility) +- [MySQL compatibility](https://docs.pingcap.com/tidb/stable/mysql-compatibility) -For more details and latest updates, see [TiDB docs](https://docs.pingcap.com/tidb/stable) and [release notes](https://docs.pingcap.com/tidb/dev/release-notes). +For more details and latest updates, see [TiDB documentation](https://docs.pingcap.com/tidb/stable) and [release notes](https://docs.pingcap.com/tidb/dev/release-notes). -For future plans, see [TiDB Roadmap](roadmap.md). +For future plans, see the [TiDB roadmap](roadmap.md). ## Quick start @@ -38,40 +38,42 @@ See [TiDB Quick Start Guide](https://docs.pingcap.com/tidb/stable/quick-start-wi ### Start developing TiDB -See [Get Started](https://pingcap.github.io/tidb-dev-guide/get-started/introduction.html) chapter of [TiDB Dev Guide](https://pingcap.github.io/tidb-dev-guide/index.html). +See the [Get Started](https://pingcap.github.io/tidb-dev-guide/get-started/introduction.html) chapter of [TiDB Development Guide](https://pingcap.github.io/tidb-dev-guide/index.html). ## Community -You can join these groups and chats to discuss and ask TiDB related questions: +You can join the following groups or channels to discuss or ask questions about TiDB, and to keep yourself informed of the latest TiDB updates: -- [TiDB Internals Forum](https://internals.tidb.io/) -- [Slack Channel](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-tidb) -- [TiDB User Group Forum (Chinese)](https://asktug.com) - -In addition, you may enjoy following: - -- [@PingCAP](https://twitter.com/PingCAP) on Twitter -- Question tagged [#tidb on StackOverflow](https://stackoverflow.com/questions/tagged/tidb) -- The PingCAP Team [English Blog](https://en.pingcap.com/blog) and [Chinese Blog](https://pingcap.com/blog-cn/) +- Discuss TiDB's implementation and design + - [TiDB Internals forum](https://internals.tidb.io/) +- Seek help when you use TiDB + - Slack channels: [#everyone](https://slack.tidb.io/invite?team=tidb-community&channel=everyone&ref=pingcap-tidb) (English), [#tidb-japan](https://slack.tidb.io/invite?team=tidb-community&channel=tidb-japan&ref=github-tidb) (Japanese) + - [TiDB User Group forum](https://asktug.com) (Chinese) + - [Stack Overflow](https://stackoverflow.com/questions/tagged/tidb) (questions tagged with #tidb) +- Get the latest TiDB news or updates + - Follow [@PingCAP](https://twitter.com/PingCAP) on Twitter + - Read the PingCAP [English Blog](https://www.pingcap.com/blog/?from=en) or [Chinese Blog](https://cn.pingcap.com/blog/) For support, please contact [PingCAP](http://bit.ly/contact_us_via_github). ## Contributing -The [community repository](https://github.com/pingcap/community) hosts all information about the TiDB community, including how to contribute to TiDB, how TiDB community is governed, how special interest groups are organized, etc. +The [community repository](https://github.com/pingcap/community) hosts all information about the TiDB community, including [how to contribute](https://github.com/pingcap/community/blob/master/contributors/README.md) to TiDB, how the TiDB community is governed, how [teams](https://github.com/pingcap/community/blob/master/teams/README.md) are organized. + +Contributions are welcomed and greatly appreciated. You can get started with one of the [good first issues](https://github.com/pingcap/tidb/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) or [help wanted issues](https://github.com/pingcap/tidb/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22). For more details on typical contribution workflows, see [Contribute to TiDB](https://pingcap.github.io/tidb-dev-guide/contribute-to-tidb/introduction.html). For more contributing information about where to start, click the contributor icon below. [contribution-map](https://github.com/pingcap/tidb-map/blob/master/maps/contribution-map.md#tidb-is-an-open-source-distributed-htap-database-compatible-with-the-mysql-protocol) -Contributions are welcomed and greatly appreciated. All the contributors are welcomed to claim your reward by filing this [form](https://forms.pingcap.com/f/tidb-contribution-swag). See [Contribution to TiDB](https://pingcap.github.io/tidb-dev-guide/contribute-to-tidb/introduction.html) for details on typical contribution workflows. For more contributing information, click on the contributor icon above. +Every contributor is welcome to claim your contribution swag by filling in and submitting this [form](https://forms.pingcap.com/f/tidb-contribution-swag). ## Case studies -- [English](https://pingcap.com/case-studies) -- [简体中文](https://pingcap.com/cases-cn/) +- [Case studies in English](https://www.pingcap.com/customers/) +- [中文用户案例](https://cn.pingcap.com/case/) ## Architecture -![architecture](./docs/architecture.png) +![TiDB architecture](./docs/tidb-architecture.png) ## License diff --git a/WORKSPACE b/WORKSPACE index e6df7760f5d5e..29ece61004659 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -2,10 +2,10 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "io_bazel_rules_go", - sha256 = "099a9fb96a376ccbbb7d291ed4ecbdfd42f6bc822ab77ae6f1b5cb9e914e94fa", + sha256 = "ae013bf35bd23234d1dea46b079f1e05ba74ac0321423830119d3e787ec73483", urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.35.0/rules_go-v0.35.0.zip", - "https://github.com/bazelbuild/rules_go/releases/download/v0.35.0/rules_go-v0.35.0.zip", + "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.36.0/rules_go-v0.36.0.zip", + "https://github.com/bazelbuild/rules_go/releases/download/v0.36.0/rules_go-v0.36.0.zip", ], ) @@ -18,7 +18,7 @@ http_archive( ], ) -load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_download_sdk", "go_register_toolchains", "go_rules_dependencies") load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") load("//:DEPS.bzl", "go_deps") @@ -27,9 +27,19 @@ go_deps() go_rules_dependencies() +go_download_sdk( + name = "go_sdk", + urls = [ + "http://ats.apps.svc/golang/{}", + "http://bazel-cache.pingcap.net:8080/golang/{}", + "https://mirrors.aliyun.com/golang/{}", + "https://dl.google.com/go/{}", + ], + version = "1.19.3", +) + go_register_toolchains( nogo = "@//build:tidb_nogo", - version = "1.19.3", ) gazelle_dependencies() @@ -48,3 +58,23 @@ http_archive( load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") protobuf_deps() + +http_archive( + name = "remote_java_tools", + sha256 = "5cd59ea6bf938a1efc1e11ea562d37b39c82f76781211b7cd941a2346ea8484d", + urls = [ + "http://ats.apps.svc/bazel_java_tools/releases/java/v11.9/java_tools-v11.9.zip", + "https://mirror.bazel.build/bazel_java_tools/releases/java/v11.9/java_tools-v11.9.zip", + "https://github.com/bazelbuild/java_tools/releases/download/java_v11.9/java_tools-v11.9.zip", + ], +) + +http_archive( + name = "remote_java_tools_linux", + sha256 = "512582cac5b7ea7974a77b0da4581b21f546c9478f206eedf54687eeac035989", + urls = [ + "http://ats.apps.svc/bazel_java_tools/releases/java/v11.9/java_tools_linux-v11.9.zip", + "https://mirror.bazel.build/bazel_java_tools/releases/java/v11.9/java_tools_linux-v11.9.zip", + "https://github.com/bazelbuild/java_tools/releases/download/java_v11.9/java_tools_linux-v11.9.zip", + ], +) diff --git a/autoid_service/BUILD.bazel b/autoid_service/BUILD.bazel index df3d361d412ed..6f1a13742ca80 100644 --- a/autoid_service/BUILD.bazel +++ b/autoid_service/BUILD.bazel @@ -11,9 +11,11 @@ go_library( "//meta", "//metrics", "//owner", + "//parser/model", "//util/logutil", "//util/mathutil", "@com_github_pingcap_errors//:errors", + "@com_github_pingcap_failpoint//:failpoint", "@com_github_pingcap_kvproto//pkg/autoid", "@io_etcd_go_etcd_client_v3//:client", "@org_golang_google_grpc//:grpc", diff --git a/autoid_service/autoid.go b/autoid_service/autoid.go index f2836fc80fe85..1a4d2b426263e 100644 --- a/autoid_service/autoid.go +++ b/autoid_service/autoid.go @@ -22,12 +22,14 @@ import ( "time" "github.com/pingcap/errors" + "github.com/pingcap/failpoint" "github.com/pingcap/kvproto/pkg/autoid" "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/meta" "github.com/pingcap/tidb/metrics" "github.com/pingcap/tidb/owner" + "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/util/logutil" "github.com/pingcap/tidb/util/mathutil" clientv3 "go.etcd.io/etcd/client/v3" @@ -76,7 +78,7 @@ func (alloc *autoIDValue) alloc4Unsigned(ctx context.Context, store kv.Storage, ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnMeta) err := kv.RunInNewTxn(ctx, store, true, func(ctx context.Context, txn kv.Transaction) error { - idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).RowID() + idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).IncrementID(model.TableInfoVersion5) var err1 error newBase, err1 = idAcc.Get() if err1 != nil { @@ -137,7 +139,7 @@ func (alloc *autoIDValue) alloc4Signed(ctx context.Context, ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnMeta) err := kv.RunInNewTxn(ctx, store, true, func(ctx context.Context, txn kv.Transaction) error { - idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).RowID() + idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).IncrementID(model.TableInfoVersion5) var err1 error newBase, err1 = idAcc.Get() if err1 != nil { @@ -188,7 +190,7 @@ func (alloc *autoIDValue) rebase4Unsigned(ctx context.Context, startTime := time.Now() ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnMeta) err := kv.RunInNewTxn(ctx, store, true, func(ctx context.Context, txn kv.Transaction) error { - idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).RowID() + idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).IncrementID(model.TableInfoVersion5) currentEnd, err1 := idAcc.Get() if err1 != nil { return err1 @@ -221,7 +223,7 @@ func (alloc *autoIDValue) rebase4Signed(ctx context.Context, store kv.Storage, d var newBase, newEnd int64 ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnMeta) err := kv.RunInNewTxn(ctx, store, true, func(ctx context.Context, txn kv.Transaction) error { - idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).RowID() + idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).IncrementID(model.TableInfoVersion5) currentEnd, err1 := idAcc.Get() if err1 != nil { return err1 @@ -400,9 +402,16 @@ func (s *Service) getAlloc(dbID, tblID int64, isUnsigned bool) *autoIDValue { func (s *Service) allocAutoID(ctx context.Context, req *autoid.AutoIDRequest) (*autoid.AutoIDResponse, error) { if s.leaderShip != nil && !s.leaderShip.IsOwner() { + logutil.BgLogger().Info("[autoid service] Alloc AutoID fail, not leader") return nil, errors.New("not leader") } + failpoint.Inject("mockErr", func(val failpoint.Value) { + if val.(bool) { + failpoint.Return(nil, errors.New("mock reload failed")) + } + }) + val := s.getAlloc(req.DbID, req.TblID, req.IsUnsigned) if req.N == 0 { @@ -425,10 +434,13 @@ func (s *Service) allocAutoID(ctx context.Context, req *autoid.AutoIDRequest) (* val.end = currentEnd return nil }) + if err != nil { + return &autoid.AutoIDResponse{Errmsg: []byte(err.Error())}, nil + } return &autoid.AutoIDResponse{ Min: currentEnd, Max: currentEnd, - }, err + }, nil } val.Lock() @@ -442,16 +454,19 @@ func (s *Service) allocAutoID(ctx context.Context, req *autoid.AutoIDRequest) (* min, max, err = val.alloc4Signed(ctx, s.store, req.DbID, req.TblID, req.IsUnsigned, req.N, req.Increment, req.Offset) } + if err != nil { + return &autoid.AutoIDResponse{Errmsg: []byte(err.Error())}, nil + } return &autoid.AutoIDResponse{ Min: min, Max: max, - }, err + }, nil } func (alloc *autoIDValue) forceRebase(ctx context.Context, store kv.Storage, dbID, tblID, requiredBase int64, isUnsigned bool) error { ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnMeta) err := kv.RunInNewTxn(ctx, store, true, func(ctx context.Context, txn kv.Transaction) error { - idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).RowID() + idAcc := meta.NewMeta(txn).GetAutoIDAccessors(dbID, tblID).IncrementID(model.TableInfoVersion5) currentEnd, err1 := idAcc.Get() if err1 != nil { return err1 @@ -477,6 +492,7 @@ func (alloc *autoIDValue) forceRebase(ctx context.Context, store kv.Storage, dbI // req.N = 0 is handled specially, it is used to return the current auto ID value. func (s *Service) Rebase(ctx context.Context, req *autoid.RebaseRequest) (*autoid.RebaseResponse, error) { if s.leaderShip != nil && !s.leaderShip.IsOwner() { + logutil.BgLogger().Info("[autoid service] Rebase() fail, not leader") return nil, errors.New("not leader") } @@ -484,7 +500,7 @@ func (s *Service) Rebase(ctx context.Context, req *autoid.RebaseRequest) (*autoi if req.Force { err := val.forceRebase(ctx, s.store, req.DbID, req.TblID, req.Base, req.IsUnsigned) if err != nil { - return nil, errors.Trace(err) + return &autoid.RebaseResponse{Errmsg: []byte(err.Error())}, nil } } @@ -494,5 +510,8 @@ func (s *Service) Rebase(ctx context.Context, req *autoid.RebaseRequest) (*autoi } else { err = val.rebase4Signed(ctx, s.store, req.DbID, req.TblID, req.Base) } - return &autoid.RebaseResponse{}, err + if err != nil { + return &autoid.RebaseResponse{Errmsg: []byte(err.Error())}, nil + } + return &autoid.RebaseResponse{}, nil } diff --git a/bindinfo/bind_cache.go b/bindinfo/bind_cache.go index 8ce69deedd840..fe67cbbbf9f43 100644 --- a/bindinfo/bind_cache.go +++ b/bindinfo/bind_cache.go @@ -146,6 +146,23 @@ func (c *bindCache) GetBindRecord(hash, normdOrigSQL, db string) *BindRecord { return nil } +// GetBindRecordBySQLDigest gets the BindRecord from the cache. +// The return value is not read-only, but it shouldn't be changed in the caller functions. +// The function is thread-safe. +func (c *bindCache) GetBindRecordBySQLDigest(sqlDigest string) (*BindRecord, error) { + c.lock.Lock() + defer c.lock.Unlock() + bindings := c.get(bindCacheKey(sqlDigest)) + if len(bindings) > 1 { + // currently, we only allow one binding for a sql + return nil, errors.New("more than 1 binding matched") + } + if len(bindings) == 0 || len(bindings[0].Bindings) == 0 { + return nil, errors.New("can't find any binding for '" + sqlDigest + "'") + } + return bindings[0], nil +} + // GetAllBindRecords return all the bindRecords from the bindCache. // The return value is not read-only, but it shouldn't be changed in the caller functions. // The function is thread-safe. diff --git a/bindinfo/bind_record.go b/bindinfo/bind_record.go index 63517d91ac189..6395bbaa278ba 100644 --- a/bindinfo/bind_record.go +++ b/bindinfo/bind_record.go @@ -54,6 +54,8 @@ const ( Evolve = "evolve" // Builtin indicates the binding is a builtin record for internal locking purpose. It is also the status for the builtin binding. Builtin = "builtin" + // History indicate the binding is created from statement summary by plan digest + History = "history" ) // Binding stores the basic bind hint info. @@ -71,7 +73,9 @@ type Binding struct { // Hint is the parsed hints, it is used to bind hints to stmt node. Hint *hint.HintsSet `json:"-"` // ID is the string form of Hint. It would be non-empty only when the status is `Using` or `PendingVerify`. - ID string `json:"-"` + ID string `json:"-"` + SQLDigest string + PlanDigest string } func (b *Binding) isSame(rb *Binding) bool { diff --git a/bindinfo/bind_test.go b/bindinfo/bind_test.go index 07e29923a9790..509ec590b20b2 100644 --- a/bindinfo/bind_test.go +++ b/bindinfo/bind_test.go @@ -29,6 +29,8 @@ import ( "github.com/pingcap/tidb/parser/terror" "github.com/pingcap/tidb/testkit" "github.com/pingcap/tidb/util" + utilparser "github.com/pingcap/tidb/util/parser" + "github.com/pingcap/tidb/util/stmtsummary" "github.com/stretchr/testify/require" ) @@ -1241,3 +1243,231 @@ func TestGCBindRecord(t *testing.T) { tk.MustQuery("show global bindings").Check(testkit.Rows()) tk.MustQuery("select status from mysql.bind_info where original_sql = 'select * from `test` . `t` where `a` = ?'").Check(testkit.Rows()) } + +func TestBindSQLDigest(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(pk int primary key, a int, b int, key(a), key(b))") + + cases := []struct { + origin string + hint string + }{ + // agg hints + {"select count(1) from t", "select /*+ hash_agg() */ count(1) from t"}, + {"select count(1) from t", "select /*+ stream_agg() */ count(1) from t"}, + // join hints + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ merge_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ tidb_smj(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ hash_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ tidb_hj(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ inl_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ tidb_inlj(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ inl_hash_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + // index hints + {"select * from t", "select * from t use index(primary)"}, + {"select * from t", "select /*+ use_index(primary) */ * from t"}, + {"select * from t", "select * from t use index(a)"}, + {"select * from t", "select /*+ use_index(a) */ * from t use index(a)"}, + {"select * from t", "select * from t use index(b)"}, + {"select * from t", "select /*+ use_index(b) */ * from t use index(b)"}, + {"select a, b from t where a=1 or b=1", "select /*+ use_index_merge(t, a, b) */ a, b from t where a=1 or b=1"}, + {"select * from t where a=1", "select /*+ ignore_index(t, a) */ * from t where a=1"}, + // push-down hints + {"select * from t limit 10", "select /*+ limit_to_cop() */ * from t limit 10"}, + {"select a, count(*) from t group by a", "select /*+ agg_to_cop() */ a, count(*) from t group by a"}, + // index-merge hints + {"select a, b from t where a>1 or b>1", "select /*+ no_index_merge() */ a, b from t where a>1 or b>1"}, + {"select a, b from t where a>1 or b>1", "select /*+ use_index_merge(t, a, b) */ a, b from t where a>1 or b>1"}, + // runtime hints + {"select * from t", "select /*+ memory_quota(1024 MB) */ * from t"}, + {"select * from t", "select /*+ max_execution_time(1000) */ * from t"}, + // storage hints + {"select * from t", "select /*+ read_from_storage(tikv[t]) */ * from t"}, + // others + {"select t1.a, t1.b from t t1 where t1.a in (select t2.a from t t2)", "select /*+ use_toja(true) */ t1.a, t1.b from t t1 where t1.a in (select t2.a from t t2)"}, + } + for _, c := range cases { + stmtsummary.StmtSummaryByDigestMap.Clear() + utilCleanBindingEnv(tk, dom) + sql := "create global binding for " + c.origin + " using " + c.hint + tk.MustExec(sql) + res := tk.MustQuery(`show global bindings`).Rows() + require.Equal(t, len(res[0]), 11) + + parser4binding := parser.New() + originNode, err := parser4binding.ParseOneStmt(c.origin, "utf8mb4", "utf8mb4_general_ci") + require.NoError(t, err) + _, sqlDigestWithDB := parser.NormalizeDigest(utilparser.RestoreWithDefaultDB(originNode, "test", c.origin)) + require.Equal(t, res[0][9], sqlDigestWithDB.String()) + } +} + +func TestDropBindBySQLDigest(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(pk int primary key, a int, b int, key(a), key(b))") + + cases := []struct { + origin string + hint string + }{ + // agg hints + {"select count(1) from t", "select /*+ hash_agg() */ count(1) from t"}, + {"select count(1) from t", "select /*+ stream_agg() */ count(1) from t"}, + // join hints + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ merge_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ tidb_smj(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ hash_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ tidb_hj(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ inl_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ tidb_inlj(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + {"select * from t t1, t t2 where t1.a=t2.a", "select /*+ inl_hash_join(t1, t2) */ * from t t1, t t2 where t1.a=t2.a"}, + // index hints + {"select * from t", "select * from t use index(primary)"}, + {"select * from t", "select /*+ use_index(primary) */ * from t"}, + {"select * from t", "select * from t use index(a)"}, + {"select * from t", "select /*+ use_index(a) */ * from t use index(a)"}, + {"select * from t", "select * from t use index(b)"}, + {"select * from t", "select /*+ use_index(b) */ * from t use index(b)"}, + {"select a, b from t where a=1 or b=1", "select /*+ use_index_merge(t, a, b) */ a, b from t where a=1 or b=1"}, + {"select * from t where a=1", "select /*+ ignore_index(t, a) */ * from t where a=1"}, + // push-down hints + {"select * from t limit 10", "select /*+ limit_to_cop() */ * from t limit 10"}, + {"select a, count(*) from t group by a", "select /*+ agg_to_cop() */ a, count(*) from t group by a"}, + // index-merge hints + {"select a, b from t where a>1 or b>1", "select /*+ no_index_merge() */ a, b from t where a>1 or b>1"}, + {"select a, b from t where a>1 or b>1", "select /*+ use_index_merge(t, a, b) */ a, b from t where a>1 or b>1"}, + // runtime hints + {"select * from t", "select /*+ memory_quota(1024 MB) */ * from t"}, + {"select * from t", "select /*+ max_execution_time(1000) */ * from t"}, + // storage hints + {"select * from t", "select /*+ read_from_storage(tikv[t]) */ * from t"}, + // others + {"select t1.a, t1.b from t t1 where t1.a in (select t2.a from t t2)", "select /*+ use_toja(true) */ t1.a, t1.b from t t1 where t1.a in (select t2.a from t t2)"}, + } + + h := dom.BindHandle() + // global scope + for _, c := range cases { + utilCleanBindingEnv(tk, dom) + sql := "create global binding for " + c.origin + " using " + c.hint + tk.MustExec(sql) + h.ReloadBindings() + res := tk.MustQuery(`show global bindings`).Rows() + + require.Equal(t, len(res), 1) + require.Equal(t, len(res[0]), 11) + drop := fmt.Sprintf("drop global binding for sql digest '%s'", res[0][9]) + tk.MustExec(drop) + require.NoError(t, h.GCBindRecord()) + h.ReloadBindings() + tk.MustQuery("show global bindings").Check(testkit.Rows()) + } + + // session scope + for _, c := range cases { + utilCleanBindingEnv(tk, dom) + sql := "create binding for " + c.origin + " using " + c.hint + tk.MustExec(sql) + res := tk.MustQuery(`show bindings`).Rows() + + require.Equal(t, len(res), 1) + require.Equal(t, len(res[0]), 11) + drop := fmt.Sprintf("drop binding for sql digest '%s'", res[0][9]) + tk.MustExec(drop) + require.NoError(t, h.GCBindRecord()) + tk.MustQuery("show bindings").Check(testkit.Rows()) + } + + // exception cases + tk.MustGetErrMsg(fmt.Sprintf("drop binding for sql digest '%s'", "1"), "can't find any binding for '1'") + tk.MustGetErrMsg(fmt.Sprintf("drop binding for sql digest '%s'", ""), "sql digest is empty") +} + +func TestCreateBindingFromHistory(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + require.NoError(t, tk.Session().Auth(&auth.UserIdentity{Username: "root", Hostname: "%"}, nil, nil)) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t1(id int primary key, a int, b int, key(a))") + tk.MustExec("create table t2(id int primary key, a int, b int, key(a))") + + var testCases = []struct { + sqls []string + hint string + }{ + { + sqls: []string{ + "select %s * from t1, t2 where t1.id = t2.id", + "select %s * from test.t1, t2 where t1.id = t2.id", + "select %s * from test.t1, test.t2 where t1.id = t2.id", + "select %s * from t1, test.t2 where t1.id = t2.id", + }, + hint: "/*+ merge_join(t1, t2) */", + }, + { + sqls: []string{ + "select %s * from t1 where a = 1", + "select %s * from test.t1 where a = 1", + }, + hint: "/*+ ignore_index(t, a) */", + }, + } + + for _, testCase := range testCases { + for _, bind := range testCase.sqls { + stmtsummary.StmtSummaryByDigestMap.Clear() + bindSQL := fmt.Sprintf(bind, testCase.hint) + tk.MustExec(bindSQL) + planDigest := tk.MustQuery(fmt.Sprintf("select plan_digest from information_schema.statements_summary where query_sample_text = '%s'", bindSQL)).Rows() + tk.MustExec(fmt.Sprintf("create session binding from history using plan digest '%s'", planDigest[0][0])) + showRes := tk.MustQuery("show bindings").Rows() + require.Equal(t, len(showRes), 1) + require.Equal(t, planDigest[0][0], showRes[0][10]) + for _, sql := range testCase.sqls { + tk.MustExec(fmt.Sprintf(sql, "")) + tk.MustQuery("select @@last_plan_from_binding").Check(testkit.Rows("1")) + } + } + showRes := tk.MustQuery("show bindings").Rows() + require.Equal(t, len(showRes), 1) + tk.MustExec(fmt.Sprintf("drop binding for sql digest '%s'", showRes[0][9])) + } + + // exception cases + tk.MustGetErrMsg(fmt.Sprintf("create binding from history using plan digest '%s'", "1"), "can't find any plans for '1'") + tk.MustGetErrMsg(fmt.Sprintf("create binding from history using plan digest '%s'", ""), "plan digest is empty") + tk.MustExec("create binding for select * from t1, t2 where t1.id = t2.id using select /*+ merge_join(t1, t2) */ * from t1, t2 where t1.id = t2.id") + showRes := tk.MustQuery("show bindings").Rows() + require.Equal(t, showRes[0][10], "") // plan digest should be nil by create for +} + +func TestCreateBindingForPrepareFromHistory(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + require.NoError(t, tk.Session().Auth(&auth.UserIdentity{Username: "root", Hostname: "%"}, nil, nil)) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(id int primary key, a int, key(a))") + + tk.MustExec("prepare stmt from 'select /*+ ignore_index(t,a) */ * from t where a = ?'") + tk.MustExec("set @a = 1") + tk.MustExec("execute stmt using @a") + planDigest := tk.MustQuery(fmt.Sprintf("select plan_digest from information_schema.statements_summary where query_sample_text = '%s'", "select /*+ ignore_index(t,a) */ * from t where a = ? [arguments: 1]")).Rows() + showRes := tk.MustQuery("show bindings").Rows() + require.Equal(t, len(showRes), 0) + tk.MustExec(fmt.Sprintf("create binding from history using plan digest '%s'", planDigest[0][0])) + showRes = tk.MustQuery("show bindings").Rows() + require.Equal(t, len(showRes), 1) + require.Equal(t, planDigest[0][0], showRes[0][10]) + tk.MustExec("execute stmt using @a") + tk.MustQuery("select @@last_plan_from_binding").Check(testkit.Rows("1")) +} diff --git a/bindinfo/capture_test.go b/bindinfo/capture_test.go index bff6b01045c0b..d1f375a6b63d7 100644 --- a/bindinfo/capture_test.go +++ b/bindinfo/capture_test.go @@ -22,9 +22,11 @@ import ( "github.com/pingcap/tidb/bindinfo" "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/domain" + "github.com/pingcap/tidb/parser" "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/testkit" + utilparser "github.com/pingcap/tidb/util/parser" "github.com/pingcap/tidb/util/stmtsummary" "github.com/stretchr/testify/require" "go.opencensus.io/stats/view" @@ -397,7 +399,7 @@ func TestConcurrentCapture(t *testing.T) { // Simulate an existing binding generated by concurrent CREATE BINDING, which has not been synchronized to current tidb-server yet. // Actually, it is more common to be generated by concurrent baseline capture, I use Manual just for simpler test verification. tk.MustExec("insert into mysql.bind_info values('select * from `test` . `t`', 'select * from `test` . `t`', '', 'enabled', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustQuery("select original_sql, source from mysql.bind_info where source != 'builtin'").Check(testkit.Rows( "select * from `test` . `t` manual", )) @@ -1011,5 +1013,11 @@ func TestCaptureHints(t *testing.T) { res := tk.MustQuery(`show global bindings`).Rows() require.Equal(t, len(res), 1) // this query is captured, and require.True(t, strings.Contains(res[0][1].(string), capCase.hint)) // the binding contains the expected hint + // test sql digest + parser4binding := parser.New() + originNode, err := parser4binding.ParseOneStmt(capCase.query, "utf8mb4", "utf8mb4_general_ci") + require.NoError(t, err) + _, sqlDigestWithDB := parser.NormalizeDigest(utilparser.RestoreWithDefaultDB(originNode, "test", capCase.query)) + require.Equal(t, res[0][9], sqlDigestWithDB.String()) } } diff --git a/bindinfo/handle.go b/bindinfo/handle.go index f4a9d372e9d85..907b6e94ccde0 100644 --- a/bindinfo/handle.go +++ b/bindinfo/handle.go @@ -146,7 +146,7 @@ func (h *BindHandle) Update(fullLoad bool) (err error) { ctx := kv.WithInternalSourceType(context.Background(), kv.InternalTxnBindInfo) // No need to acquire the session context lock for ExecRestrictedSQL, it // uses another background session. - rows, _, err := exec.ExecRestrictedSQL(ctx, nil, `SELECT original_sql, bind_sql, default_db, status, create_time, update_time, charset, collation, source + rows, _, err := exec.ExecRestrictedSQL(ctx, nil, `SELECT original_sql, bind_sql, default_db, status, create_time, update_time, charset, collation, source, sql_digest, plan_digest FROM mysql.bind_info WHERE update_time > %? ORDER BY update_time, create_time`, updateTime) if err != nil { @@ -261,7 +261,7 @@ func (h *BindHandle) CreateBindRecord(sctx sessionctx.Context, record *BindRecor record.Bindings[i].UpdateTime = now // Insert the BindRecord to the storage. - _, err = exec.ExecuteInternal(ctx, `INSERT INTO mysql.bind_info VALUES (%?,%?, %?, %?, %?, %?, %?, %?, %?)`, + _, err = exec.ExecuteInternal(ctx, `INSERT INTO mysql.bind_info VALUES (%?,%?, %?, %?, %?, %?, %?, %?, %?, %?, %?)`, record.OriginalSQL, record.Bindings[i].BindSQL, record.Db, @@ -271,6 +271,8 @@ func (h *BindHandle) CreateBindRecord(sctx sessionctx.Context, record *BindRecor record.Bindings[i].Charset, record.Bindings[i].Collation, record.Bindings[i].Source, + record.Bindings[i].SQLDigest, + record.Bindings[i].PlanDigest, ) if err != nil { return err @@ -349,8 +351,18 @@ func (h *BindHandle) AddBindRecord(sctx sessionctx.Context, record *BindRecord) } record.Bindings[i].UpdateTime = now + if record.Bindings[i].SQLDigest == "" { + parser4binding := parser.New() + var originNode ast.StmtNode + originNode, err = parser4binding.ParseOneStmt(record.OriginalSQL, record.Bindings[i].Charset, record.Bindings[i].Collation) + if err != nil { + return err + } + _, sqlDigestWithDB := parser.NormalizeDigest(utilparser.RestoreWithDefaultDB(originNode, record.Db, record.OriginalSQL)) + record.Bindings[i].SQLDigest = sqlDigestWithDB.String() + } // Insert the BindRecord to the storage. - _, err = exec.ExecuteInternal(ctx, `INSERT INTO mysql.bind_info VALUES (%?, %?, %?, %?, %?, %?, %?, %?, %?)`, + _, err = exec.ExecuteInternal(ctx, `INSERT INTO mysql.bind_info VALUES (%?, %?, %?, %?, %?, %?, %?, %?, %?, %?, %?)`, record.OriginalSQL, record.Bindings[i].BindSQL, record.Db, @@ -360,6 +372,8 @@ func (h *BindHandle) AddBindRecord(sctx sessionctx.Context, record *BindRecord) record.Bindings[i].Charset, record.Bindings[i].Collation, record.Bindings[i].Source, + record.Bindings[i].SQLDigest, + record.Bindings[i].PlanDigest, ) if err != nil { return err @@ -423,6 +437,15 @@ func (h *BindHandle) DropBindRecord(originalSQL, db string, binding *Binding) (d return h.sctx.Context.GetSessionVars().StmtCtx.AffectedRows(), nil } +// DropBindRecordByDigest drop BindRecord to the storage and BindRecord int the cache. +func (h *BindHandle) DropBindRecordByDigest(sqlDigest string) (deletedRows uint64, err error) { + oldRecord, err := h.GetBindRecordBySQLDigest(sqlDigest) + if err != nil { + return 0, err + } + return h.DropBindRecord(oldRecord.OriginalSQL, strings.ToLower(oldRecord.Db), nil) +} + // SetBindRecordStatus set a BindRecord's status to the storage and bind cache. func (h *BindHandle) SetBindRecordStatus(originalSQL string, binding *Binding, newStatus string) (ok bool, err error) { h.bindInfo.Lock() @@ -644,6 +667,11 @@ func (h *BindHandle) GetBindRecord(hash, normdOrigSQL, db string) *BindRecord { return h.bindInfo.Load().(*bindCache).GetBindRecord(hash, normdOrigSQL, db) } +// GetBindRecordBySQLDigest returns the BindRecord of the sql digest. +func (h *BindHandle) GetBindRecordBySQLDigest(sqlDigest string) (*BindRecord, error) { + return h.bindInfo.Load().(*bindCache).GetBindRecordBySQLDigest(sqlDigest) +} + // GetAllBindRecord returns all bind records in cache. func (h *BindHandle) GetAllBindRecord() (bindRecords []*BindRecord) { return h.bindInfo.Load().(*bindCache).GetAllBindRecords() @@ -680,6 +708,8 @@ func (h *BindHandle) newBindRecord(row chunk.Row) (string, *BindRecord, error) { Charset: row.GetString(6), Collation: row.GetString(7), Source: row.GetString(8), + SQLDigest: row.GetString(9), + PlanDigest: row.GetString(10), } bindRecord := &BindRecord{ OriginalSQL: row.GetString(0), @@ -900,6 +930,7 @@ func (h *BindHandle) CaptureBaselines() { Charset: charset, Collation: collation, Source: Capture, + SQLDigest: digest.String(), } // We don't need to pass the `sctx` because the BindSQL has been validated already. err = h.CreateBindRecord(nil, &BindRecord{OriginalSQL: normalizedSQL, Db: dbName, Bindings: []Binding{binding}}) @@ -940,12 +971,12 @@ func getHintsForSQL(sctx sessionctx.Context, sql string) (string, error) { } // GenerateBindSQL generates binding sqls from stmt node and plan hints. -func GenerateBindSQL(ctx context.Context, stmtNode ast.StmtNode, planHint string, captured bool, defaultDB string) string { +func GenerateBindSQL(ctx context.Context, stmtNode ast.StmtNode, planHint string, skipCheckIfHasParam bool, defaultDB string) string { // If would be nil for very simple cases such as point get, we do not need to evolve for them. if planHint == "" { return "" } - if !captured { + if !skipCheckIfHasParam { paramChecker := ¶mMarkerChecker{} stmtNode.Accept(paramChecker) // We need to evolve on current sql, but we cannot restore values for paramMarkers yet, @@ -1121,6 +1152,7 @@ func (h *BindHandle) getRunningDuration(sctx sessionctx.Context, db, sql string, } ctx, cancelFunc := context.WithCancel(ctx) timer := time.NewTimer(maxTime) + defer timer.Stop() resultChan := make(chan error) startTime := time.Now() go runSQL(ctx, sctx, sql, resultChan) diff --git a/bindinfo/handle_test.go b/bindinfo/handle_test.go index 01ff0628feb5c..ffea398781f8b 100644 --- a/bindinfo/handle_test.go +++ b/bindinfo/handle_test.go @@ -107,7 +107,7 @@ func TestBindingLastUpdateTimeWithInvalidBind(t *testing.T) { require.Equal(t, updateTime0, "0000-00-00 00:00:00") tk.MustExec("insert into mysql.bind_info values('select * from `test` . `t`', 'select * from `test` . `t` use index(`idx`)', 'test', 'enabled', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("use test") tk.MustExec("drop table if exists t") tk.MustExec("create table t(a int)") @@ -137,8 +137,9 @@ func TestBindParse(t *testing.T) { charset := "utf8mb4" collation := "utf8mb4_bin" source := bindinfo.Manual - sql := fmt.Sprintf(`INSERT INTO mysql.bind_info(original_sql,bind_sql,default_db,status,create_time,update_time,charset,collation,source) VALUES ('%s', '%s', '%s', '%s', NOW(), NOW(),'%s', '%s', '%s')`, - originSQL, bindSQL, defaultDb, status, charset, collation, source) + mockDigest := "0f644e22c38ecc71d4592c52df127df7f86b6ca7f7c0ee899113b794578f9396" + sql := fmt.Sprintf(`INSERT INTO mysql.bind_info(original_sql,bind_sql,default_db,status,create_time,update_time,charset,collation,source, sql_digest, plan_digest) VALUES ('%s', '%s', '%s', '%s', NOW(), NOW(),'%s', '%s', '%s', '%s', '%s')`, + originSQL, bindSQL, defaultDb, status, charset, collation, source, mockDigest, mockDigest) tk.MustExec(sql) bindHandle := bindinfo.NewBindHandle(tk.Session()) err := bindHandle.Update(true) @@ -221,7 +222,7 @@ func TestEvolveInvalidBindings(t *testing.T) { tk.MustExec("create global binding for select * from t where a > 10 using select /*+ USE_INDEX(t) */ * from t where a > 10") // Manufacture a rejected binding by hacking mysql.bind_info. tk.MustExec("insert into mysql.bind_info values('select * from test . t where a > ?', 'SELECT /*+ USE_INDEX(t,idx_a) */ * FROM test.t WHERE a > 10', 'test', 'rejected', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustQuery("select bind_sql, status from mysql.bind_info where source != 'builtin'").Sort().Check(testkit.Rows( "SELECT /*+ USE_INDEX(`t` )*/ * FROM `test`.`t` WHERE `a` > 10 enabled", "SELECT /*+ USE_INDEX(t,idx_a) */ * FROM test.t WHERE a > 10 rejected", @@ -242,6 +243,8 @@ func TestEvolveInvalidBindings(t *testing.T) { require.Equal(t, "SELECT /*+ USE_INDEX(t,idx_a) */ * FROM test.t WHERE a > 10", rows[1][1]) status = rows[1][3].(string) require.True(t, status == bindinfo.Enabled || status == bindinfo.Rejected) + _, sqlDigestWithDB := parser.NormalizeDigest("select * from test.t where a > 10") // test sqlDigest if exists after add columns to mysql.bind_info + require.Equal(t, rows[0][9], sqlDigestWithDB.String()) } func TestSetBindingStatus(t *testing.T) { @@ -319,9 +322,9 @@ func TestSetBindingStatusWithoutBindingInCache(t *testing.T) { // Simulate creating bindings on other machines tk.MustExec("insert into mysql.bind_info values('select * from `test` . `t` where `a` > ?', 'SELECT /*+ USE_INDEX(`t` `idx_a`)*/ * FROM `test`.`t` WHERE `a` > 10', 'test', 'deleted', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("insert into mysql.bind_info values('select * from `test` . `t` where `a` > ?', 'SELECT /*+ USE_INDEX(`t` `idx_a`)*/ * FROM `test`.`t` WHERE `a` > 10', 'test', 'enabled', '2000-01-02 09:00:00', '2000-01-02 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") dom.BindHandle().Clear() tk.MustExec("set binding disabled for select * from t where a > 10") tk.MustExec("admin reload bindings") @@ -334,9 +337,9 @@ func TestSetBindingStatusWithoutBindingInCache(t *testing.T) { // Simulate creating bindings on other machines tk.MustExec("insert into mysql.bind_info values('select * from `test` . `t` where `a` > ?', 'SELECT * FROM `test`.`t` WHERE `a` > 10', 'test', 'deleted', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("insert into mysql.bind_info values('select * from `test` . `t` where `a` > ?', 'SELECT * FROM `test`.`t` WHERE `a` > 10', 'test', 'disabled', '2000-01-02 09:00:00', '2000-01-02 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") dom.BindHandle().Clear() tk.MustExec("set binding enabled for select * from t where a > 10") tk.MustExec("admin reload bindings") diff --git a/bindinfo/session_handle.go b/bindinfo/session_handle.go index e6baebe3ea960..27b8168ef8e17 100644 --- a/bindinfo/session_handle.go +++ b/bindinfo/session_handle.go @@ -33,13 +33,12 @@ import ( // SessionHandle is used to handle all session sql bind operations. type SessionHandle struct { - ch *bindCache - parser *parser.Parser + ch *bindCache } // NewSessionBindHandle creates a new SessionBindHandle. -func NewSessionBindHandle(parser *parser.Parser) *SessionHandle { - sessionHandle := &SessionHandle{parser: parser} +func NewSessionBindHandle() *SessionHandle { + sessionHandle := &SessionHandle{} sessionHandle.ch = newBindCache() return sessionHandle } @@ -98,11 +97,25 @@ func (h *SessionHandle) DropBindRecord(originalSQL, db string, binding *Binding) return nil } +// DropBindRecordByDigest drop BindRecord in the cache. +func (h *SessionHandle) DropBindRecordByDigest(sqlDigest string) error { + oldRecord, err := h.GetBindRecordBySQLDigest(sqlDigest) + if err != nil { + return err + } + return h.DropBindRecord(oldRecord.OriginalSQL, strings.ToLower(oldRecord.Db), nil) +} + // GetBindRecord return the BindMeta of the (normdOrigSQL,db) if BindMeta exist. func (h *SessionHandle) GetBindRecord(hash, normdOrigSQL, db string) *BindRecord { return h.ch.GetBindRecord(hash, normdOrigSQL, db) } +// GetBindRecordBySQLDigest return all BindMeta corresponding to sqlDigest. +func (h *SessionHandle) GetBindRecordBySQLDigest(sqlDigest string) (*BindRecord, error) { + return h.ch.GetBindRecordBySQLDigest(sqlDigest) +} + // GetAllBindRecord return all session bind info. func (h *SessionHandle) GetAllBindRecord() (bindRecords []*BindRecord) { return h.ch.GetAllBindRecords() diff --git a/bindinfo/session_handle_test.go b/bindinfo/session_handle_test.go index a60f8ff41cd12..0b8f929d1d215 100644 --- a/bindinfo/session_handle_test.go +++ b/bindinfo/session_handle_test.go @@ -219,7 +219,7 @@ func TestBaselineDBLowerCase(t *testing.T) { // Simulate existing bindings with upper case default_db. tk.MustExec("insert into mysql.bind_info values('select * from `spm` . `t`', 'select * from `spm` . `t`', 'SPM', 'enabled', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustQuery("select original_sql, default_db from mysql.bind_info where original_sql = 'select * from `spm` . `t`'").Check(testkit.Rows( "select * from `spm` . `t` SPM", )) @@ -237,7 +237,7 @@ func TestBaselineDBLowerCase(t *testing.T) { utilCleanBindingEnv(tk, dom) // Simulate existing bindings with upper case default_db. tk.MustExec("insert into mysql.bind_info values('select * from `spm` . `t`', 'select * from `spm` . `t`', 'SPM', 'enabled', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustQuery("select original_sql, default_db from mysql.bind_info where original_sql = 'select * from `spm` . `t`'").Check(testkit.Rows( "select * from `spm` . `t` SPM", )) @@ -274,13 +274,13 @@ func TestShowGlobalBindings(t *testing.T) { require.Len(t, rows, 0) // Simulate existing bindings in the mysql.bind_info. tk.MustExec("insert into mysql.bind_info values('select * from `spm` . `t`', 'select * from `spm` . `t` USE INDEX (`a`)', 'SPM', 'enabled', '2000-01-01 09:00:00', '2000-01-01 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("insert into mysql.bind_info values('select * from `spm` . `t0`', 'select * from `spm` . `t0` USE INDEX (`a`)', 'SPM', 'enabled', '2000-01-02 09:00:00', '2000-01-02 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("insert into mysql.bind_info values('select * from `spm` . `t`', 'select /*+ use_index(`t` `a`)*/ * from `spm` . `t`', 'SPM', 'enabled', '2000-01-03 09:00:00', '2000-01-03 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("insert into mysql.bind_info values('select * from `spm` . `t0`', 'select /*+ use_index(`t0` `a`)*/ * from `spm` . `t0`', 'SPM', 'enabled', '2000-01-04 09:00:00', '2000-01-04 09:00:00', '', '','" + - bindinfo.Manual + "')") + bindinfo.Manual + "', '', '')") tk.MustExec("admin reload bindings") rows = tk.MustQuery("show global bindings").Rows() require.Len(t, rows, 4) diff --git a/br/cmd/br/restore.go b/br/cmd/br/restore.go index 5f91bee91c6a9..e826df0e59e77 100644 --- a/br/cmd/br/restore.go +++ b/br/cmd/br/restore.go @@ -199,6 +199,5 @@ func newStreamRestoreCommand() *cobra.Command { } task.DefineFilterFlags(command, filterOutSysAndMemTables, true) task.DefineStreamRestoreFlags(command) - command.Hidden = true return command } diff --git a/br/pkg/backup/BUILD.bazel b/br/pkg/backup/BUILD.bazel index c8cad292f4607..65ff4288987a1 100644 --- a/br/pkg/backup/BUILD.bazel +++ b/br/pkg/backup/BUILD.bazel @@ -12,6 +12,7 @@ go_library( importpath = "github.com/pingcap/tidb/br/pkg/backup", visibility = ["//visibility:public"], deps = [ + "//br/pkg/checkpoint", "//br/pkg/checksum", "//br/pkg/conn", "//br/pkg/conn/util", diff --git a/br/pkg/backup/client.go b/br/pkg/backup/client.go index 6ce3d24b0e209..0241789e65103 100644 --- a/br/pkg/backup/client.go +++ b/br/pkg/backup/client.go @@ -3,7 +3,9 @@ package backup import ( + "bytes" "context" + "encoding/base64" "encoding/hex" "encoding/json" "fmt" @@ -21,6 +23,7 @@ import ( "github.com/pingcap/kvproto/pkg/kvrpcpb" "github.com/pingcap/kvproto/pkg/metapb" "github.com/pingcap/log" + "github.com/pingcap/tidb/br/pkg/checkpoint" "github.com/pingcap/tidb/br/pkg/conn" connutil "github.com/pingcap/tidb/br/pkg/conn/util" berrors "github.com/pingcap/tidb/br/pkg/errors" @@ -90,18 +93,31 @@ type Client struct { backend *backuppb.StorageBackend apiVersion kvrpcpb.APIVersion + cipher *backuppb.CipherInfo + checkpointMeta *checkpoint.CheckpointMetadata + checkpointRunner *checkpoint.CheckpointRunner + gcTTL int64 } // NewBackupClient returns a new backup client. -func NewBackupClient(ctx context.Context, mgr ClientMgr) (*Client, error) { +func NewBackupClient(ctx context.Context, mgr ClientMgr) *Client { log.Info("new backup client") pdClient := mgr.GetPDClient() clusterID := pdClient.GetClusterID(ctx) return &Client{ clusterID: clusterID, mgr: mgr, - }, nil + + cipher: nil, + checkpointMeta: nil, + checkpointRunner: nil, + } +} + +// SetCipher for checkpoint to encrypt sst file's metadata +func (bc *Client) SetCipher(cipher *backuppb.CipherInfo) { + bc.cipher = cipher } // GetTS gets a new timestamp from PD. @@ -120,6 +136,11 @@ func (bc *Client) GetTS(ctx context.Context, duration time.Duration, ts uint64) backupTS uint64 err error ) + + if bc.checkpointMeta != nil { + log.Info("reuse checkpoint BackupTS", zap.Uint64("backup-ts", bc.checkpointMeta.BackupTS)) + return bc.checkpointMeta.BackupTS, nil + } if ts > 0 { backupTS = ts } else { @@ -160,6 +181,15 @@ func (bc *Client) SetLockFile(ctx context.Context) error { "This file exists to remind other backup jobs won't use this path")) } +// GetSafePointID get the gc-safe-point's service-id from either checkpoint or immediate generation +func (bc *Client) GetSafePointID() string { + if bc.checkpointMeta != nil { + log.Info("reuse the checkpoint gc-safepoint service id", zap.String("service-id", bc.checkpointMeta.GCServiceId)) + return bc.checkpointMeta.GCServiceId + } + return utils.MakeSafePointID() +} + // SetGCTTL set gcTTL for client. func (bc *Client) SetGCTTL(ttl int64) { if ttl <= 0 { @@ -204,13 +234,145 @@ func (bc *Client) SetStorageAndCheckNotInUse( "there may be some backup files in the path already, "+ "please specify a correct backup directory!", bc.storage.URI()+"/"+metautil.MetaFile) } - err = CheckBackupStorageIsLocked(ctx, bc.storage) + // use checkpoint mode if checkpoint meta exists + exist, err = bc.storage.FileExists(ctx, checkpoint.CheckpointMetaPath) if err != nil { - return err + return errors.Annotatef(err, "error occurred when checking %s file", checkpoint.CheckpointMetaPath) + } + + // if there is no checkpoint meta, then checkpoint mode is not used + // or it is the first execution + if exist { + // load the config's hash to keep the config unchanged. + log.Info("load the checkpoint meta, so the existence of lockfile is allowed.") + bc.checkpointMeta, err = checkpoint.LoadCheckpointMetadata(ctx, bc.storage) + if err != nil { + return errors.Annotatef(err, "error occurred when loading %s file", checkpoint.CheckpointMetaPath) + } + } else { + err = CheckBackupStorageIsLocked(ctx, bc.storage) + if err != nil { + return err + } + } + + return nil +} + +// CheckCheckpoint check whether the configs are the same +func (bc *Client) CheckCheckpoint(hash []byte) error { + if bc.checkpointMeta != nil && !bytes.Equal(bc.checkpointMeta.ConfigHash, hash) { + return errors.Annotatef(berrors.ErrInvalidArgument, "failed to backup to %v, "+ + "because the checkpoint mode is used, "+ + "but the hashs of the configs are not the same. Please check the config", + bc.storage.URI(), + ) + } + + // first execution or not using checkpoint mode yet + // or using the same config can pass the check + return nil +} + +func (bc *Client) GetCheckpointRunner() *checkpoint.CheckpointRunner { + return bc.checkpointRunner +} + +// StartCheckpointMeta will +// 1. saves the initial status into the external storage; +// 2. load the checkpoint data from external storage +// 3. start checkpoint runner +func (bc *Client) StartCheckpointRunner( + ctx context.Context, + cfgHash []byte, + backupTS uint64, + ranges []rtree.Range, + safePointID string, + progressCallBack func(ProgressUnit), +) (err error) { + if bc.checkpointMeta == nil { + bc.checkpointMeta = &checkpoint.CheckpointMetadata{ + GCServiceId: safePointID, + ConfigHash: cfgHash, + BackupTS: backupTS, + Ranges: ranges, + } + + // sync the checkpoint meta to the external storage at first + if err := checkpoint.SaveCheckpointMetadata(ctx, bc.storage, bc.checkpointMeta); err != nil { + return errors.Trace(err) + } + } else { + // otherwise, the checkpoint meta is loaded from the external storage, + // no need to save it again + // besides, there are exist checkpoint data need to be loaded before start checkpoint runner + bc.checkpointMeta.CheckpointDataMap, err = bc.loadCheckpointRanges(ctx, progressCallBack) + if err != nil { + return errors.Trace(err) + } } + + bc.checkpointRunner = checkpoint.StartCheckpointRunner(ctx, bc.storage, bc.cipher) return nil } +func (bc *Client) WaitForFinishCheckpoint() { + if bc.checkpointRunner != nil { + bc.checkpointRunner.WaitForFinish() + } +} + +// GetProgressRange loads the checkpoint(finished) sub-ranges of the current range, and calculate its incompleted sub-ranges. +func (bc *Client) GetProgressRange(r rtree.Range) (*rtree.ProgressRange, error) { + // use groupKey to distinguish different ranges + groupKey := base64.URLEncoding.EncodeToString(r.StartKey) + if bc.checkpointMeta != nil && len(bc.checkpointMeta.CheckpointDataMap) > 0 { + rangeTree, exists := bc.checkpointMeta.CheckpointDataMap[groupKey] + if exists { + incomplete := rangeTree.GetIncompleteRange(r.StartKey, r.EndKey) + delete(bc.checkpointMeta.CheckpointDataMap, groupKey) + return &rtree.ProgressRange{ + Res: rangeTree, + Incomplete: incomplete, + Origin: r, + GroupKey: groupKey, + }, nil + } + } + + // the origin range are not recorded in checkpoint + // return the default progress range + return &rtree.ProgressRange{ + Res: rtree.NewRangeTree(), + Incomplete: []rtree.Range{ + r, + }, + Origin: r, + GroupKey: groupKey, + }, nil +} + +// LoadCheckpointRange loads the checkpoint(finished) sub-ranges of the current range, and calculate its incompleted sub-ranges. +func (bc *Client) loadCheckpointRanges(ctx context.Context, progressCallBack func(ProgressUnit)) (map[string]rtree.RangeTree, error) { + rangeDataMap := make(map[string]rtree.RangeTree) + + pastDureTime, err := checkpoint.WalkCheckpointFile(ctx, bc.storage, bc.cipher, func(groupKey string, rg *rtree.Range) { + rangeTree, exists := rangeDataMap[groupKey] + if !exists { + rangeTree = rtree.NewRangeTree() + rangeDataMap[groupKey] = rangeTree + } + rangeTree.Put(rg.StartKey, rg.EndKey, rg.Files) + progressCallBack(RegionUnit) + }) + + // we should adjust start-time of the summary to `pastDureTime` earlier + log.Info("past cost time", zap.Duration("cost", pastDureTime)) + summary.AdjustStartTimeToEarlierTime(pastDureTime) + + return rangeDataMap, errors.Trace(err) +} + // SetStorage sets ExternalStorage for client. func (bc *Client) SetStorage( ctx context.Context, @@ -239,6 +401,22 @@ func (bc *Client) SetApiVersion(v kvrpcpb.APIVersion) { bc.apiVersion = v } +// Client.BuildBackupRangeAndSchema calls BuildBackupRangeAndSchema, +// if the checkpoint mode is used, return the ranges from checkpoint meta +func (bc *Client) BuildBackupRangeAndSchema( + storage kv.Storage, + tableFilter filter.Filter, + backupTS uint64, + isFullBackup bool, +) ([]rtree.Range, *Schemas, []*backuppb.PlacementPolicy, error) { + if bc.checkpointMeta == nil { + return BuildBackupRangeAndSchema(storage, tableFilter, backupTS, isFullBackup, true) + } + _, schemas, policies, err := BuildBackupRangeAndSchema(storage, tableFilter, backupTS, isFullBackup, false) + schemas.SetCheckpointChecksum(bc.checkpointMeta.CheckpointChecksum) + return bc.checkpointMeta.Ranges, schemas, policies, errors.Trace(err) +} + // CheckBackupStorageIsLocked checks whether backups is locked. // which means we found other backup progress already write // some data files into the same backup directory or cloud prefix. @@ -252,7 +430,7 @@ func CheckBackupStorageIsLocked(ctx context.Context, s storage.ExternalStorage) // should return error to break the walkDir when found lock file and other .sst files. if strings.HasSuffix(path, ".sst") { return errors.Annotatef(berrors.ErrInvalidArgument, "backup lock file and sst file exist in %v, "+ - "there are some backup files in the path already, "+ + "there are some backup files in the path already, but hasn't checkpoint metadata, "+ "please specify a correct backup directory!", s.URI()+"/"+metautil.LockFile) } return nil @@ -290,10 +468,12 @@ func appendRanges(tbl *model.TableInfo, tblID int64) ([]kv.KeyRange, error) { ranges = ranger.FullIntRange(false) } + retRanges := make([]kv.KeyRange, 0, 1+len(tbl.Indices)) kvRanges, err := distsql.TableHandleRangesToKVRanges(nil, []int64{tblID}, tbl.IsCommonHandle, ranges, nil) if err != nil { return nil, errors.Trace(err) } + retRanges = kvRanges.AppendSelfTo(retRanges) for _, index := range tbl.Indices { if index.State != model.StatePublic { @@ -304,9 +484,9 @@ func appendRanges(tbl *model.TableInfo, tblID int64) ([]kv.KeyRange, error) { if err != nil { return nil, errors.Trace(err) } - kvRanges = append(kvRanges, idxRanges...) + retRanges = idxRanges.AppendSelfTo(retRanges) } - return kvRanges, nil + return retRanges, nil } // BuildBackupRangeAndSchema gets KV range and schema of tables. @@ -317,6 +497,7 @@ func BuildBackupRangeAndSchema( tableFilter filter.Filter, backupTS uint64, isFullBackup bool, + buildRange bool, ) ([]rtree.Range, *Schemas, []*backuppb.PlacementPolicy, error) { snapshot := storage.GetSnapshot(kv.NewVersion(backupTS)) m := meta.NewSnapshotMeta(snapshot) @@ -433,15 +614,17 @@ func BuildBackupRangeAndSchema( backupSchemas.AddSchema(dbInfo, tableInfo) - tableRanges, err := BuildTableRanges(tableInfo) - if err != nil { - return nil, nil, nil, errors.Trace(err) - } - for _, r := range tableRanges { - ranges = append(ranges, rtree.Range{ - StartKey: r.StartKey, - EndKey: r.EndKey, - }) + if buildRange { + tableRanges, err := BuildTableRanges(tableInfo) + if err != nil { + return nil, nil, nil, errors.Trace(err) + } + for _, r := range tableRanges { + ranges = append(ranges, rtree.Range{ + StartKey: r.StartKey, + EndKey: r.EndKey, + }) + } } } } @@ -602,10 +785,13 @@ func (bc *Client) BackupRanges( id := id req := request req.StartKey, req.EndKey = r.StartKey, r.EndKey - + pr, err := bc.GetProgressRange(r) + if err != nil { + return errors.Trace(err) + } workerPool.ApplyOnErrorGroup(eg, func() error { elctx := logutil.ContextWithField(ectx, logutil.RedactAny("range-sn", id)) - err := bc.BackupRange(elctx, req, metaWriter, progressCallBack) + err := bc.BackupRange(elctx, req, pr, metaWriter, progressCallBack) if err != nil { // The error due to context cancel, stack trace is meaningless, the stack shall be suspended (also clear) if errors.Cause(err) == context.Canceled { @@ -616,6 +802,7 @@ func (bc *Client) BackupRanges( return nil }) } + return eg.Wait() } @@ -623,7 +810,8 @@ func (bc *Client) BackupRanges( // Returns an array of files backed up. func (bc *Client) BackupRange( ctx context.Context, - req backuppb.BackupRequest, + request backuppb.BackupRequest, + progressRange *rtree.ProgressRange, metaWriter *metautil.MetaWriter, progressCallBack func(ProgressUnit), ) (err error) { @@ -631,17 +819,17 @@ func (bc *Client) BackupRange( defer func() { elapsed := time.Since(start) logutil.CL(ctx).Info("backup range completed", - logutil.Key("startKey", req.StartKey), logutil.Key("endKey", req.EndKey), + logutil.Key("startKey", progressRange.Origin.StartKey), logutil.Key("endKey", progressRange.Origin.EndKey), zap.Duration("take", elapsed)) - key := "range start:" + hex.EncodeToString(req.StartKey) + " end:" + hex.EncodeToString(req.EndKey) + key := "range start:" + hex.EncodeToString(progressRange.Origin.StartKey) + " end:" + hex.EncodeToString(progressRange.Origin.EndKey) if err != nil { summary.CollectFailureUnit(key, err) } }() logutil.CL(ctx).Info("backup range started", - logutil.Key("startKey", req.StartKey), logutil.Key("endKey", req.EndKey), - zap.Uint64("rateLimit", req.RateLimit), - zap.Uint32("concurrency", req.Concurrency)) + logutil.Key("startKey", progressRange.Origin.StartKey), logutil.Key("endKey", progressRange.Origin.EndKey), + zap.Uint64("rateLimit", request.RateLimit), + zap.Uint32("concurrency", request.Concurrency)) var allStores []*metapb.Store allStores, err = conn.GetAllTiKVStoresWithRetry(ctx, bc.mgr.GetPDClient(), connutil.SkipTiFlash) @@ -650,35 +838,57 @@ func (bc *Client) BackupRange( } logutil.CL(ctx).Info("backup push down started") - push := newPushDown(bc.mgr, len(allStores)) - results, err := push.pushBackup(ctx, req, allStores, progressCallBack) - if err != nil { - return errors.Trace(err) + // either the `incomplete` is origin range itself, + // or the `incomplete` is sub-ranges split by checkpoint of origin range + if len(progressRange.Incomplete) > 0 { + // don't make the origin request dirty, + // since fineGrainedBackup need to use it. + req := request + if len(progressRange.Incomplete) > 1 { + subRanges := make([]*kvrpcpb.KeyRange, 0, len(progressRange.Incomplete)) + for _, r := range progressRange.Incomplete { + subRanges = append(subRanges, &kvrpcpb.KeyRange{ + StartKey: r.StartKey, + EndKey: r.EndKey, + }) + } + req.SubRanges = subRanges + } else { + // compatible with older version of TiKV + req.StartKey = progressRange.Incomplete[0].StartKey + req.EndKey = progressRange.Incomplete[0].EndKey + } + + push := newPushDown(bc.mgr, len(allStores)) + err = push.pushBackup(ctx, req, progressRange, allStores, bc.checkpointRunner, progressCallBack) + if err != nil { + return errors.Trace(err) + } } - logutil.CL(ctx).Info("backup push down completed", zap.Int("small-range-count", results.Len())) + logutil.CL(ctx).Info("backup push down completed", zap.Int("small-range-count", progressRange.Res.Len())) // Find and backup remaining ranges. // TODO: test fine grained backup. - if err := bc.fineGrainedBackup(ctx, req, results, progressCallBack); err != nil { + if err := bc.fineGrainedBackup(ctx, request, progressRange, progressCallBack); err != nil { return errors.Trace(err) } // update progress of range unit progressCallBack(RangeUnit) - if req.IsRawKv { + if request.IsRawKv { logutil.CL(ctx).Info("raw ranges backed up", - logutil.Key("startKey", req.StartKey), - logutil.Key("endKey", req.EndKey), - zap.String("cf", req.Cf)) + logutil.Key("startKey", progressRange.Origin.StartKey), + logutil.Key("endKey", progressRange.Origin.EndKey), + zap.String("cf", request.Cf)) } else { logutil.CL(ctx).Info("transactional range backup completed", - zap.Reflect("StartTS", req.StartVersion), - zap.Reflect("EndTS", req.EndVersion)) + zap.Reflect("StartTS", request.StartVersion), + zap.Reflect("EndTS", request.EndVersion)) } var ascendErr error - results.Ascend(func(i btree.Item) bool { + progressRange.Res.Ascend(func(i btree.Item) bool { r := i.(*rtree.Range) for _, f := range r.Files { summary.CollectSuccessUnit(summary.TotalKV, 1, f.TotalKvs) @@ -697,7 +907,7 @@ func (bc *Client) BackupRange( } // Check if there are duplicated files. - checkDupFiles(&results) + checkDupFiles(&progressRange.Res) return nil } @@ -730,7 +940,7 @@ func (bc *Client) findRegionLeader(ctx context.Context, key []byte, isRawKv bool func (bc *Client) fineGrainedBackup( ctx context.Context, req backuppb.BackupRequest, - rangeTree rtree.RangeTree, + pr *rtree.ProgressRange, progressCallBack func(ProgressUnit), ) error { if span := opentracing.SpanFromContext(ctx); span != nil && span.Tracer() != nil { @@ -757,7 +967,7 @@ func (bc *Client) fineGrainedBackup( bo := tikv.NewBackoffer(ctx, backupFineGrainedMaxBackoff) for { // Step1, check whether there is any incomplete range - incomplete := rangeTree.GetIncompleteRange(req.StartKey, req.EndKey) + incomplete := pr.Res.GetIncompleteRange(req.StartKey, req.EndKey) if len(incomplete) == 0 { return nil } @@ -825,7 +1035,18 @@ func (bc *Client) fineGrainedBackup( logutil.Key("fine-grained-range-start", resp.StartKey), logutil.Key("fine-grained-range-end", resp.EndKey), ) - rangeTree.Put(resp.StartKey, resp.EndKey, resp.Files) + if bc.checkpointRunner != nil { + if err := bc.checkpointRunner.Append( + ctx, + pr.GroupKey, + resp.StartKey, + resp.EndKey, + resp.Files, + ); err != nil { + return errors.Annotate(err, "failed to flush checkpoint when fineGrainedBackup") + } + } + pr.Res.Put(resp.StartKey, resp.EndKey, resp.Files) apiVersion := resp.ApiVersion bc.SetApiVersion(apiVersion) diff --git a/br/pkg/backup/client_test.go b/br/pkg/backup/client_test.go index 76d885e04a201..592416e8ec03c 100644 --- a/br/pkg/backup/client_test.go +++ b/br/pkg/backup/client_test.go @@ -57,8 +57,7 @@ func createBackupSuite(t *testing.T) *testBackup { mockMgr := &conn.Mgr{PdController: &pdutil.PdController{}} mockMgr.SetPDClient(s.mockPDClient) mockMgr.SetHTTP([]string{"test"}, nil) - s.backupClient, err = backup.NewBackupClient(s.ctx, mockMgr) - require.NoError(t, err) + s.backupClient = backup.NewBackupClient(s.ctx, mockMgr) s.cluster, err = mock.NewCluster() require.NoError(t, err) diff --git a/br/pkg/backup/push.go b/br/pkg/backup/push.go index 45c2b9acca01c..2ffffe690ffe5 100644 --- a/br/pkg/backup/push.go +++ b/br/pkg/backup/push.go @@ -13,6 +13,7 @@ import ( backuppb "github.com/pingcap/kvproto/pkg/brpb" "github.com/pingcap/kvproto/pkg/errorpb" "github.com/pingcap/kvproto/pkg/metapb" + "github.com/pingcap/tidb/br/pkg/checkpoint" berrors "github.com/pingcap/tidb/br/pkg/errors" "github.com/pingcap/tidb/br/pkg/logutil" "github.com/pingcap/tidb/br/pkg/redact" @@ -54,9 +55,11 @@ func newPushDown(mgr ClientMgr, capacity int) *pushDown { func (push *pushDown) pushBackup( ctx context.Context, req backuppb.BackupRequest, + pr *rtree.ProgressRange, stores []*metapb.Store, + checkpointRunner *checkpoint.CheckpointRunner, progressCallBack func(ProgressUnit), -) (rtree.RangeTree, error) { +) error { if span := opentracing.SpanFromContext(ctx); span != nil && span.Tracer() != nil { span1 := span.Tracer().StartSpan("pushDown.pushBackup", opentracing.ChildOf(span.Context())) defer span1.Finish() @@ -64,10 +67,9 @@ func (push *pushDown) pushBackup( } // Push down backup tasks to all tikv instances. - res := rtree.NewRangeTree() failpoint.Inject("noop-backup", func(_ failpoint.Value) { logutil.CL(ctx).Warn("skipping normal backup, jump to fine-grained backup, meow :3", logutil.Key("start-key", req.StartKey), logutil.Key("end-key", req.EndKey)) - failpoint.Return(res, nil) + failpoint.Return(nil) }) wg := new(sync.WaitGroup) @@ -84,7 +86,7 @@ func (push *pushDown) pushBackup( // BR should be able to backup even some of stores disconnected. // The regions managed by this store can be retried at fine-grained backup then. logutil.CL(lctx).Warn("fail to connect store, skipping", zap.Error(err)) - return res, nil + return nil } wg.Add(1) go func() { @@ -125,7 +127,7 @@ func (push *pushDown) pushBackup( store := respAndStore.GetStore() if !ok { // Finished. - return res, nil + return nil } failpoint.Inject("backup-timeout-error", func(val failpoint.Value) { msg := val.(string) @@ -165,7 +167,19 @@ func (push *pushDown) pushBackup( }) if resp.GetError() == nil { // None error means range has been backuped successfully. - res.Put( + if checkpointRunner != nil { + if err := checkpointRunner.Append( + ctx, + pr.GroupKey, + resp.StartKey, + resp.EndKey, + resp.Files, + ); err != nil { + // the error is only from flush operator + return errors.Annotate(err, "failed to flush checkpoint") + } + } + pr.Res.Put( resp.GetStartKey(), resp.GetEndKey(), resp.GetFiles()) // Update progress @@ -181,7 +195,7 @@ func (push *pushDown) pushBackup( case *backuppb.Error_ClusterIdError: logutil.CL(ctx).Error("backup occur cluster ID error", zap.Reflect("error", v)) - return res, errors.Annotatef(berrors.ErrKVClusterIDMismatch, "%v", errPb) + return errors.Annotatef(berrors.ErrKVClusterIDMismatch, "%v", errPb) default: if utils.MessageIsRetryableStorageError(errPb.GetMsg()) { logutil.CL(ctx).Warn("backup occur storage error", zap.String("error", errPb.GetMsg())) @@ -204,7 +218,7 @@ func (push *pushDown) pushBackup( if len(errMsg) <= 0 { errMsg = errPb.Msg } - return res, errors.Annotatef(berrors.ErrKVStorage, "error happen in store %v at %s: %s %s", + return errors.Annotatef(berrors.ErrKVStorage, "error happen in store %v at %s: %s %s", store.GetId(), redact.String(store.GetAddress()), req.StorageBackend.String(), @@ -214,10 +228,10 @@ func (push *pushDown) pushBackup( } case err := <-push.errCh: if !berrors.Is(err, berrors.ErrFailedToConnect) { - return res, errors.Annotatef(err, "failed to backup range [%s, %s)", redact.Key(req.StartKey), redact.Key(req.EndKey)) + return errors.Annotatef(err, "failed to backup range [%s, %s)", redact.Key(req.StartKey), redact.Key(req.EndKey)) } logutil.CL(ctx).Warn("skipping disconnected stores", logutil.ShortError(err)) - return res, nil + return nil } } } diff --git a/br/pkg/backup/schema.go b/br/pkg/backup/schema.go index 066043c224064..bb0cf7f884189 100644 --- a/br/pkg/backup/schema.go +++ b/br/pkg/backup/schema.go @@ -12,6 +12,7 @@ import ( "github.com/pingcap/errors" backuppb "github.com/pingcap/kvproto/pkg/brpb" "github.com/pingcap/log" + "github.com/pingcap/tidb/br/pkg/checkpoint" "github.com/pingcap/tidb/br/pkg/checksum" "github.com/pingcap/tidb/br/pkg/glue" "github.com/pingcap/tidb/br/pkg/logutil" @@ -44,14 +45,22 @@ type schemaInfo struct { type Schemas struct { // name -> schema schemas map[string]*schemaInfo + + // checkpoint: table id -> checksum + checkpointChecksum map[int64]*checkpoint.ChecksumItem } func NewBackupSchemas() *Schemas { return &Schemas{ - schemas: make(map[string]*schemaInfo), + schemas: make(map[string]*schemaInfo), + checkpointChecksum: nil, } } +func (ss *Schemas) SetCheckpointChecksum(checkpointChecksum map[int64]*checkpoint.ChecksumItem) { + ss.checkpointChecksum = checkpointChecksum +} + func (ss *Schemas) AddSchema( dbInfo *model.DBInfo, tableInfo *model.TableInfo, ) { @@ -73,6 +82,7 @@ func (ss *Schemas) AddSchema( func (ss *Schemas) BackupSchemas( ctx context.Context, metaWriter *metautil.MetaWriter, + checkpointRunner *checkpoint.CheckpointRunner, store kv.Storage, statsHandle *handle.Handle, backupTS uint64, @@ -100,6 +110,11 @@ func (ss *Schemas) BackupSchemas( schema.dbInfo.Name = utils.TemporaryDBName(schema.dbInfo.Name.O) } + var checksum *checkpoint.ChecksumItem + var exists bool = false + if ss.checkpointChecksum != nil { + checksum, exists = ss.checkpointChecksum[schema.tableInfo.ID] + } workerPool.ApplyOnErrorGroup(errg, func() error { if schema.tableInfo != nil { logger := log.With( @@ -109,16 +124,38 @@ func (ss *Schemas) BackupSchemas( if !skipChecksum { logger.Info("Calculate table checksum start") - start := time.Now() - err := schema.calculateChecksum(ectx, store.GetClient(), backupTS, copConcurrency) - if err != nil { - return errors.Trace(err) + if exists && checksum != nil { + schema.crc64xor = checksum.Crc64xor + schema.totalKvs = checksum.TotalKvs + schema.totalBytes = checksum.TotalBytes + logger.Info("Calculate table checksum completed (from checkpoint)", + zap.Uint64("Crc64Xor", schema.crc64xor), + zap.Uint64("TotalKvs", schema.totalKvs), + zap.Uint64("TotalBytes", schema.totalBytes)) + } else { + start := time.Now() + err := schema.calculateChecksum(ectx, store.GetClient(), backupTS, copConcurrency) + if err != nil { + return errors.Trace(err) + } + calculateCost := time.Since(start) + var flushCost time.Duration + if checkpointRunner != nil { + // if checkpoint runner is running and the checksum is not from checkpoint + // then flush the checksum by the checkpoint runner + startFlush := time.Now() + if err = checkpointRunner.FlushChecksum(ctx, schema.tableInfo.ID, schema.crc64xor, schema.totalKvs, schema.totalBytes, calculateCost.Seconds()); err != nil { + return errors.Trace(err) + } + flushCost = time.Since(startFlush) + } + logger.Info("Calculate table checksum completed", + zap.Uint64("Crc64Xor", schema.crc64xor), + zap.Uint64("TotalKvs", schema.totalKvs), + zap.Uint64("TotalBytes", schema.totalBytes), + zap.Duration("calculate-take", calculateCost), + zap.Duration("flush-take", flushCost)) } - logger.Info("Calculate table checksum completed", - zap.Uint64("Crc64Xor", schema.crc64xor), - zap.Uint64("TotalKvs", schema.totalKvs), - zap.Uint64("TotalBytes", schema.totalBytes), - zap.Duration("take", time.Since(start))) } if statsHandle != nil { if err := schema.dumpStatsToJSON(statsHandle); err != nil { diff --git a/br/pkg/backup/schema_test.go b/br/pkg/backup/schema_test.go index bed9d834d2e10..08d560bf03c25 100644 --- a/br/pkg/backup/schema_test.go +++ b/br/pkg/backup/schema_test.go @@ -108,7 +108,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { testFilter, err := filter.Parse([]string{"test.t1"}) require.NoError(t, err) _, backupSchemas, _, err := backup.BuildBackupRangeAndSchema( - m.Storage, testFilter, math.MaxUint64, false) + m.Storage, testFilter, math.MaxUint64, false, true) require.NoError(t, err) require.NotNil(t, backupSchemas) @@ -116,7 +116,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { fooFilter, err := filter.Parse([]string{"foo.t1"}) require.NoError(t, err) _, backupSchemas, _, err = backup.BuildBackupRangeAndSchema( - m.Storage, fooFilter, math.MaxUint64, false) + m.Storage, fooFilter, math.MaxUint64, false, true) require.NoError(t, err) require.Nil(t, backupSchemas) @@ -125,7 +125,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { noFilter, err := filter.Parse([]string{"*.*", "!mysql.*"}) require.NoError(t, err) _, backupSchemas, _, err = backup.BuildBackupRangeAndSchema( - m.Storage, noFilter, math.MaxUint64, false) + m.Storage, noFilter, math.MaxUint64, false, true) require.NoError(t, err) require.NotNil(t, backupSchemas) @@ -137,7 +137,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { var policies []*backuppb.PlacementPolicy _, backupSchemas, policies, err = backup.BuildBackupRangeAndSchema( - m.Storage, testFilter, math.MaxUint64, false) + m.Storage, testFilter, math.MaxUint64, false, true) require.NoError(t, err) require.Equal(t, 1, backupSchemas.Len()) // we expect no policies collected, because it's not full backup. @@ -151,7 +151,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { metaWriter := metautil.NewMetaWriter(es, metautil.MetaFileSize, false, "", &cipher) ctx := context.Background() err = backupSchemas.BackupSchemas( - ctx, metaWriter, m.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) + ctx, metaWriter, nil, m.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) require.Equal(t, int64(1), updateCh.get()) require.NoError(t, err) err = metaWriter.FlushBackupMeta(ctx) @@ -170,7 +170,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { tk.MustExec("insert into t2 values (11);") _, backupSchemas, policies, err = backup.BuildBackupRangeAndSchema( - m.Storage, noFilter, math.MaxUint64, true) + m.Storage, noFilter, math.MaxUint64, true, true) require.NoError(t, err) require.Equal(t, 2, backupSchemas.Len()) // we expect the policy fivereplicas collected in full backup. @@ -180,7 +180,7 @@ func TestBuildBackupRangeAndSchema(t *testing.T) { es2 := GetRandomStorage(t) metaWriter2 := metautil.NewMetaWriter(es2, metautil.MetaFileSize, false, "", &cipher) err = backupSchemas.BackupSchemas( - ctx, metaWriter2, m.Storage, nil, math.MaxUint64, 2, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) + ctx, metaWriter2, nil, m.Storage, nil, math.MaxUint64, 2, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) require.Equal(t, int64(2), updateCh.get()) require.NoError(t, err) err = metaWriter2.FlushBackupMeta(ctx) @@ -219,7 +219,7 @@ func TestBuildBackupRangeAndSchemaWithBrokenStats(t *testing.T) { f, err := filter.Parse([]string{"test.t3"}) require.NoError(t, err) - _, backupSchemas, _, err := backup.BuildBackupRangeAndSchema(m.Storage, f, math.MaxUint64, false) + _, backupSchemas, _, err := backup.BuildBackupRangeAndSchema(m.Storage, f, math.MaxUint64, false, true) require.NoError(t, err) require.Equal(t, 1, backupSchemas.Len()) @@ -234,7 +234,7 @@ func TestBuildBackupRangeAndSchemaWithBrokenStats(t *testing.T) { metaWriter := metautil.NewMetaWriter(es, metautil.MetaFileSize, false, "", &cipher) ctx := context.Background() err = backupSchemas.BackupSchemas( - ctx, metaWriter, m.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) + ctx, metaWriter, nil, m.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) require.NoError(t, err) err = metaWriter.FlushBackupMeta(ctx) require.NoError(t, err) @@ -253,7 +253,7 @@ func TestBuildBackupRangeAndSchemaWithBrokenStats(t *testing.T) { // recover the statistics. tk.MustExec("analyze table t3;") - _, backupSchemas, _, err = backup.BuildBackupRangeAndSchema(m.Storage, f, math.MaxUint64, false) + _, backupSchemas, _, err = backup.BuildBackupRangeAndSchema(m.Storage, f, math.MaxUint64, false, true) require.NoError(t, err) require.Equal(t, 1, backupSchemas.Len()) @@ -262,7 +262,7 @@ func TestBuildBackupRangeAndSchemaWithBrokenStats(t *testing.T) { es2 := GetRandomStorage(t) metaWriter2 := metautil.NewMetaWriter(es2, metautil.MetaFileSize, false, "", &cipher) err = backupSchemas.BackupSchemas( - ctx, metaWriter2, m.Storage, statsHandle, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) + ctx, metaWriter2, nil, m.Storage, statsHandle, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) require.NoError(t, err) err = metaWriter2.FlushBackupMeta(ctx) require.NoError(t, err) @@ -294,7 +294,7 @@ func TestBackupSchemasForSystemTable(t *testing.T) { f, err := filter.Parse([]string{"mysql.systable*"}) require.NoError(t, err) - _, backupSchemas, _, err := backup.BuildBackupRangeAndSchema(m.Storage, f, math.MaxUint64, false) + _, backupSchemas, _, err := backup.BuildBackupRangeAndSchema(m.Storage, f, math.MaxUint64, false, true) require.NoError(t, err) require.Equal(t, systemTablesCount, backupSchemas.Len()) @@ -305,7 +305,7 @@ func TestBackupSchemasForSystemTable(t *testing.T) { updateCh := new(simpleProgress) metaWriter2 := metautil.NewMetaWriter(es2, metautil.MetaFileSize, false, "", &cipher) - err = backupSchemas.BackupSchemas(ctx, metaWriter2, m.Storage, nil, + err = backupSchemas.BackupSchemas(ctx, metaWriter2, nil, m.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, true, updateCh) require.NoError(t, err) err = metaWriter2.FlushBackupMeta(ctx) diff --git a/br/pkg/checkpoint/BUILD.bazel b/br/pkg/checkpoint/BUILD.bazel new file mode 100644 index 0000000000000..baae284d545fb --- /dev/null +++ b/br/pkg/checkpoint/BUILD.bazel @@ -0,0 +1,32 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "checkpoint", + srcs = ["checkpoint.go"], + importpath = "github.com/pingcap/tidb/br/pkg/checkpoint", + visibility = ["//visibility:public"], + deps = [ + "//br/pkg/metautil", + "//br/pkg/rtree", + "//br/pkg/storage", + "//br/pkg/summary", + "//br/pkg/utils", + "@com_github_pingcap_errors//:errors", + "@com_github_pingcap_kvproto//pkg/brpb", + "@com_github_pingcap_log//:log", + "@org_uber_go_zap//:zap", + ], +) + +go_test( + name = "checkpoint_test", + srcs = ["checkpoint_test.go"], + deps = [ + ":checkpoint", + "//br/pkg/rtree", + "//br/pkg/storage", + "@com_github_pingcap_kvproto//pkg/brpb", + "@com_github_pingcap_kvproto//pkg/encryptionpb", + "@com_github_stretchr_testify//require", + ], +) diff --git a/br/pkg/checkpoint/checkpoint.go b/br/pkg/checkpoint/checkpoint.go new file mode 100644 index 0000000000000..bbe2d4e44d1df --- /dev/null +++ b/br/pkg/checkpoint/checkpoint.go @@ -0,0 +1,581 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package checkpoint + +import ( + "bytes" + "context" + "crypto/sha256" + "encoding/base64" + "encoding/json" + "fmt" + "math/rand" + "strings" + "sync" + "time" + + "github.com/pingcap/errors" + backuppb "github.com/pingcap/kvproto/pkg/brpb" + "github.com/pingcap/log" + "github.com/pingcap/tidb/br/pkg/metautil" + "github.com/pingcap/tidb/br/pkg/rtree" + "github.com/pingcap/tidb/br/pkg/storage" + "github.com/pingcap/tidb/br/pkg/summary" + "github.com/pingcap/tidb/br/pkg/utils" + "go.uber.org/zap" +) + +const ( + CheckpointMetaPath = "checkpoint.meta" + CheckpointDir = "/checkpoints" + + CheckpointDataDir = CheckpointDir + "/data" + CheckpointChecksumDir = CheckpointDir + "/checksum" +) + +const MaxChecksumTotalCost float64 = 60.0 + +const tickDuration = 30 * time.Second + +type CheckpointMessage struct { + // start-key of the origin range + GroupKey string + + Group *rtree.Range +} + +// A Checkpoint Range File is like this: +// +// ChecksumData +// +----------------+ RangeGroupData RangeGroups +// | DureTime | +--------------------------+ encrypted +-------------+ +// | RangeGroupData-+---> | RangeGroupsEncriptedData-+----------> | GroupKey | +// | RangeGroupData | | Checksum | | Range | +// | ... | | CipherIv | | ... | +// | RangeGroupData | | Size | | Range | +// +----------------+ +--------------------------+ +-------------+ + +type RangeGroups struct { + GroupKey string `json:"group-key"` + Groups []*rtree.Range `json:"groups"` +} + +type RangeGroupData struct { + RangeGroupsEncriptedData []byte + Checksum []byte + CipherIv []byte + + Size int +} + +type CheckpointData struct { + DureTime time.Duration `json:"dure-time"` + RangeGroupMetas []*RangeGroupData `json:"range-group-metas"` +} + +// A Checkpoint Checksum File is like this: +// +// ChecksumInfo ChecksumItems ChecksumItem +// +-------------+ +--------------+ +--------------+ +// | Content---+-> | ChecksumItem-+---> | TableID | +// | Checksum | | ChecksumItem | | Crc64xor | +// +-------------+ | ... | | TotalKvs | +// | ChecksumItem | | TotalBytes | +// +--------------+ +--------------+ + +type ChecksumItem struct { + TableID int64 `json:"table-id"` + Crc64xor uint64 `json:"crc64-xor"` + TotalKvs uint64 `json:"total-kvs"` + TotalBytes uint64 `json:"total-bytes"` +} + +type ChecksumItems struct { + Items []*ChecksumItem `json:"checksum-items"` +} + +type ChecksumInfo struct { + Content []byte `json:"content"` + Checksum []byte `json:"checksum"` +} + +type ChecksumRunner struct { + sync.Mutex + + checksumItems ChecksumItems + + // when the total time cost is large than the threshold, + // begin to flush checksum + totalCost float64 + + err error + wg sync.WaitGroup + workerPool utils.WorkerPool +} + +func NewChecksumRunner() *ChecksumRunner { + return &ChecksumRunner{ + workerPool: *utils.NewWorkerPool(4, "checksum flush worker"), + } +} + +// FlushChecksum save the checksum in the memory temporarily +// and flush to the external storage if checksum take much time +func (cr *ChecksumRunner) FlushChecksum( + ctx context.Context, + s storage.ExternalStorage, + tableID int64, + crc64xor uint64, + totalKvs uint64, + totalBytes uint64, + timeCost float64, +) error { + checksumItem := &ChecksumItem{ + TableID: tableID, + Crc64xor: crc64xor, + TotalKvs: totalKvs, + TotalBytes: totalBytes, + } + var toBeFlushedChecksumItems *ChecksumItems = nil + cr.Lock() + if cr.err != nil { + err := cr.err + cr.Unlock() + return err + } + if cr.checksumItems.Items == nil { + // reset the checksumInfo + cr.totalCost = 0 + cr.checksumItems.Items = make([]*ChecksumItem, 0) + } + cr.totalCost += timeCost + cr.checksumItems.Items = append(cr.checksumItems.Items, checksumItem) + if cr.totalCost > MaxChecksumTotalCost { + toBeFlushedChecksumItems = &ChecksumItems{ + Items: cr.checksumItems.Items, + } + cr.checksumItems.Items = nil + } + cr.Unlock() + + // now lock is free + if toBeFlushedChecksumItems == nil { + return nil + } + + // create a goroutine to flush checksumInfo to external storage + cr.wg.Add(1) + cr.workerPool.Apply(func() { + defer cr.wg.Done() + recordErr := func(err error) { + cr.Lock() + cr.err = err + cr.Unlock() + } + + content, err := json.Marshal(toBeFlushedChecksumItems) + if err != nil { + recordErr(err) + return + } + + checksum := sha256.Sum256(content) + checksumInfo := &ChecksumInfo{ + Content: content, + Checksum: checksum[:], + } + + data, err := json.Marshal(checksumInfo) + if err != nil { + recordErr(err) + return + } + + fname := fmt.Sprintf("%s/t%d_and__", CheckpointChecksumDir, tableID) + err = s.WriteFile(ctx, fname, data) + if err != nil { + recordErr(err) + return + } + }) + return nil +} + +type CheckpointRunner struct { + meta map[string]*RangeGroups + + checksumRunner *ChecksumRunner + + storage storage.ExternalStorage + cipher *backuppb.CipherInfo + + appendCh chan *CheckpointMessage + metaCh chan map[string]*RangeGroups + errCh chan error + + wg sync.WaitGroup +} + +// only for test +func StartCheckpointRunnerForTest(ctx context.Context, storage storage.ExternalStorage, cipher *backuppb.CipherInfo, tick time.Duration) *CheckpointRunner { + runner := &CheckpointRunner{ + meta: make(map[string]*RangeGroups), + + checksumRunner: NewChecksumRunner(), + + storage: storage, + cipher: cipher, + + appendCh: make(chan *CheckpointMessage), + metaCh: make(chan map[string]*RangeGroups), + errCh: make(chan error), + } + + runner.startCheckpointLoop(ctx, tick) + return runner +} + +func StartCheckpointRunner(ctx context.Context, storage storage.ExternalStorage, cipher *backuppb.CipherInfo) *CheckpointRunner { + runner := &CheckpointRunner{ + meta: make(map[string]*RangeGroups), + + checksumRunner: NewChecksumRunner(), + + storage: storage, + cipher: cipher, + + appendCh: make(chan *CheckpointMessage), + metaCh: make(chan map[string]*RangeGroups), + errCh: make(chan error), + } + + runner.startCheckpointLoop(ctx, tickDuration) + return runner +} + +func (r *CheckpointRunner) FlushChecksum(ctx context.Context, tableID int64, crc64xor uint64, totalKvs uint64, totalBytes uint64, timeCost float64) error { + return r.checksumRunner.FlushChecksum(ctx, r.storage, tableID, crc64xor, totalKvs, totalBytes, timeCost) +} + +func (r *CheckpointRunner) Append( + ctx context.Context, + groupKey string, + startKey []byte, + endKey []byte, + files []*backuppb.File, +) error { + select { + case <-ctx.Done(): + return nil + case err := <-r.errCh: + return err + case r.appendCh <- &CheckpointMessage{ + GroupKey: groupKey, + Group: &rtree.Range{ + StartKey: startKey, + EndKey: endKey, + Files: files, + }, + }: + return nil + } +} + +// Note: Cannot be parallel with `Append` function +func (r *CheckpointRunner) WaitForFinish() { + // can not append anymore + close(r.appendCh) + // wait the range flusher exit + r.wg.Wait() + // wait the checksum flusher exit + r.checksumRunner.wg.Wait() +} + +// Send the meta to the flush goroutine, and reset the CheckpointRunner's meta +func (r *CheckpointRunner) flushMeta(ctx context.Context, errCh chan error) error { + meta := r.meta + r.meta = make(map[string]*RangeGroups) + // do flush + select { + case <-ctx.Done(): + case err := <-errCh: + return err + case r.metaCh <- meta: + } + return nil +} + +// start a goroutine to flush the meta, which is sent from `checkpoint looper`, to the external storage +func (r *CheckpointRunner) startCheckpointRunner(ctx context.Context, wg *sync.WaitGroup) chan error { + errCh := make(chan error, 1) + wg.Add(1) + flushWorker := func(ctx context.Context, errCh chan error) { + defer wg.Done() + for { + select { + case <-ctx.Done(): + return + case meta, ok := <-r.metaCh: + if !ok { + log.Info("stop checkpoint flush worker") + return + } + if err := r.doFlush(ctx, meta); err != nil { + errCh <- err + return + } + } + } + } + + go flushWorker(ctx, errCh) + return errCh +} + +func (r *CheckpointRunner) startCheckpointLoop(ctx context.Context, tickDuration time.Duration) { + r.wg.Add(1) + checkpointLoop := func(ctx context.Context) { + defer r.wg.Done() + cctx, cancel := context.WithCancel(ctx) + defer cancel() + var wg sync.WaitGroup + errCh := r.startCheckpointRunner(cctx, &wg) + ticker := time.NewTicker(tickDuration) + defer ticker.Stop() + for { + select { + case <-ctx.Done(): + return + case <-ticker.C: + if err := r.flushMeta(ctx, errCh); err != nil { + r.errCh <- err + return + } + case msg, ok := <-r.appendCh: + if !ok { + log.Info("stop checkpoint runner") + if err := r.flushMeta(ctx, errCh); err != nil { + r.errCh <- err + } + // close the channel to flush worker + // and wait it to consumes all the metas + close(r.metaCh) + wg.Wait() + return + } + groups, exist := r.meta[msg.GroupKey] + if !exist { + groups = &RangeGroups{ + GroupKey: msg.GroupKey, + Groups: make([]*rtree.Range, 0), + } + r.meta[msg.GroupKey] = groups + } + groups.Groups = append(groups.Groups, msg.Group) + case err := <-errCh: + // pass flush worker's error back + r.errCh <- err + return + } + } + } + + go checkpointLoop(ctx) +} + +// flush the meta to the external storage +func (r *CheckpointRunner) doFlush(ctx context.Context, meta map[string]*RangeGroups) error { + if len(meta) == 0 { + return nil + } + + checkpointData := &CheckpointData{ + DureTime: summary.NowDureTime(), + RangeGroupMetas: make([]*RangeGroupData, 0, len(meta)), + } + + var fname []byte = nil + + for _, group := range meta { + if len(group.Groups) == 0 { + continue + } + + // use the first item's group-key and sub-range-key as the filename + if len(fname) == 0 { + fname = append(append([]byte(group.GroupKey), '.', '.'), group.Groups[0].StartKey...) + } + + // Flush the metaFile to storage + content, err := json.Marshal(group) + if err != nil { + return errors.Trace(err) + } + + encryptBuff, iv, err := metautil.Encrypt(content, r.cipher) + if err != nil { + return errors.Trace(err) + } + + checksum := sha256.Sum256(content) + + checkpointData.RangeGroupMetas = append(checkpointData.RangeGroupMetas, &RangeGroupData{ + RangeGroupsEncriptedData: encryptBuff, + Checksum: checksum[:], + Size: len(content), + CipherIv: iv, + }) + } + + if len(checkpointData.RangeGroupMetas) > 0 { + data, err := json.Marshal(checkpointData) + if err != nil { + return errors.Trace(err) + } + + checksum := sha256.Sum256(fname) + checksumEncoded := base64.URLEncoding.EncodeToString(checksum[:]) + path := fmt.Sprintf("%s/%s_%d.cpt", CheckpointDataDir, checksumEncoded, rand.Uint64()) + if err := r.storage.WriteFile(ctx, path, data); err != nil { + return errors.Trace(err) + } + } + return nil +} + +// walk the whole checkpoint range files and retrieve the metadatat of backed up ranges +// and return the total time cost in the past executions +func WalkCheckpointFile(ctx context.Context, s storage.ExternalStorage, cipher *backuppb.CipherInfo, fn func(groupKey string, rg *rtree.Range)) (time.Duration, error) { + // records the total time cost in the past executions + var pastDureTime time.Duration = 0 + err := s.WalkDir(ctx, &storage.WalkOption{SubDir: CheckpointDataDir}, func(path string, size int64) error { + if strings.HasSuffix(path, ".cpt") { + content, err := s.ReadFile(ctx, path) + if err != nil { + return errors.Trace(err) + } + + checkpointData := &CheckpointData{} + if err = json.Unmarshal(content, checkpointData); err != nil { + return errors.Trace(err) + } + + if checkpointData.DureTime > pastDureTime { + pastDureTime = checkpointData.DureTime + } + for _, meta := range checkpointData.RangeGroupMetas { + decryptContent, err := metautil.Decrypt(meta.RangeGroupsEncriptedData, cipher, meta.CipherIv) + if err != nil { + return errors.Trace(err) + } + + checksum := sha256.Sum256(decryptContent) + if !bytes.Equal(meta.Checksum, checksum[:]) { + log.Error("checkpoint checksum info's checksum mismatch, skip it", + zap.ByteString("expect", meta.Checksum), + zap.ByteString("got", checksum[:]), + ) + continue + } + + group := &RangeGroups{} + if err = json.Unmarshal(decryptContent, group); err != nil { + return errors.Trace(err) + } + + for _, g := range group.Groups { + fn(group.GroupKey, g) + } + } + } + return nil + }) + + return pastDureTime, errors.Trace(err) +} + +type CheckpointMetadata struct { + GCServiceId string `json:"gc-service-id"` + ConfigHash []byte `json:"config-hash"` + BackupTS uint64 `json:"backup-ts"` + Ranges []rtree.Range `json:"ranges"` + + CheckpointChecksum map[int64]*ChecksumItem `json:"-"` + CheckpointDataMap map[string]rtree.RangeTree `json:"-"` +} + +// load checkpoint metadata from the external storage +func LoadCheckpointMetadata(ctx context.Context, s storage.ExternalStorage) (*CheckpointMetadata, error) { + data, err := s.ReadFile(ctx, CheckpointMetaPath) + if err != nil { + return nil, errors.Trace(err) + } + m := &CheckpointMetadata{} + err = json.Unmarshal(data, m) + if err != nil { + return nil, errors.Trace(err) + } + m.CheckpointChecksum, err = loadCheckpointChecksum(ctx, s) + return m, errors.Trace(err) +} + +// walk the whole checkpoint checksum files and retrieve checksum information of tables calculated +func loadCheckpointChecksum(ctx context.Context, s storage.ExternalStorage) (map[int64]*ChecksumItem, error) { + checkpointChecksum := make(map[int64]*ChecksumItem) + + err := s.WalkDir(ctx, &storage.WalkOption{SubDir: CheckpointChecksumDir}, func(path string, size int64) error { + data, err := s.ReadFile(ctx, path) + if err != nil { + return errors.Trace(err) + } + info := &ChecksumInfo{} + err = json.Unmarshal(data, info) + if err != nil { + return errors.Trace(err) + } + + checksum := sha256.Sum256(info.Content) + if !bytes.Equal(info.Checksum, checksum[:]) { + log.Error("checkpoint checksum info's checksum mismatch, skip it", + zap.ByteString("expect", info.Checksum), + zap.ByteString("got", checksum[:]), + ) + return nil + } + + items := &ChecksumItems{} + err = json.Unmarshal(info.Content, items) + if err != nil { + return errors.Trace(err) + } + + for _, c := range items.Items { + checkpointChecksum[c.TableID] = c + } + return nil + }) + return checkpointChecksum, errors.Trace(err) +} + +// save the checkpoint metadata into the external storage +func SaveCheckpointMetadata(ctx context.Context, s storage.ExternalStorage, meta *CheckpointMetadata) error { + data, err := json.Marshal(meta) + if err != nil { + return errors.Trace(err) + } + + err = s.WriteFile(ctx, CheckpointMetaPath, data) + return errors.Trace(err) +} diff --git a/br/pkg/checkpoint/checkpoint_test.go b/br/pkg/checkpoint/checkpoint_test.go new file mode 100644 index 0000000000000..f52b1c6ad2b02 --- /dev/null +++ b/br/pkg/checkpoint/checkpoint_test.go @@ -0,0 +1,175 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package checkpoint_test + +import ( + "context" + "os" + "strings" + "testing" + "time" + + backuppb "github.com/pingcap/kvproto/pkg/brpb" + "github.com/pingcap/kvproto/pkg/encryptionpb" + "github.com/pingcap/tidb/br/pkg/checkpoint" + "github.com/pingcap/tidb/br/pkg/rtree" + "github.com/pingcap/tidb/br/pkg/storage" + "github.com/stretchr/testify/require" +) + +func TestCheckpointMeta(t *testing.T) { + ctx := context.Background() + base := t.TempDir() + s, err := storage.NewLocalStorage(base) + require.NoError(t, err) + + checkpointMeta := &checkpoint.CheckpointMetadata{ + ConfigHash: []byte("123456"), + BackupTS: 123456, + } + + err = checkpoint.SaveCheckpointMetadata(ctx, s, checkpointMeta) + require.NoError(t, err) + + checkpointMeta2, err := checkpoint.LoadCheckpointMetadata(ctx, s) + require.NoError(t, err) + require.Equal(t, checkpointMeta.ConfigHash, checkpointMeta2.ConfigHash) + require.Equal(t, checkpointMeta.BackupTS, checkpointMeta2.BackupTS) +} + +func TestCheckpointRunner(t *testing.T) { + ctx := context.Background() + base := t.TempDir() + s, err := storage.NewLocalStorage(base) + require.NoError(t, err) + os.MkdirAll(base+checkpoint.CheckpointDataDir, 0o755) + os.MkdirAll(base+checkpoint.CheckpointChecksumDir, 0o755) + + cipher := &backuppb.CipherInfo{ + CipherType: encryptionpb.EncryptionMethod_AES256_CTR, + CipherKey: []byte("01234567890123456789012345678901"), + } + checkpointRunner := checkpoint.StartCheckpointRunnerForTest(ctx, s, cipher, 5*time.Second) + + data := map[string]struct { + StartKey string + EndKey string + Name string + Name2 string + }{ + "a": { + StartKey: "a", + EndKey: "b", + Name: "c", + Name2: "d", + }, + "A": { + StartKey: "A", + EndKey: "B", + Name: "C", + Name2: "D", + }, + "1": { + StartKey: "1", + EndKey: "2", + Name: "3", + Name2: "4", + }, + } + + data2 := map[string]struct { + StartKey string + EndKey string + Name string + Name2 string + }{ + "+": { + StartKey: "+", + EndKey: "-", + Name: "*", + Name2: "/", + }, + } + + for _, d := range data { + err = checkpointRunner.Append(ctx, "a", []byte(d.StartKey), []byte(d.EndKey), []*backuppb.File{ + {Name: d.Name}, + {Name: d.Name2}, + }) + require.NoError(t, err) + } + + checkpointRunner.FlushChecksum(ctx, 1, 1, 1, 1, checkpoint.MaxChecksumTotalCost-20.0) + checkpointRunner.FlushChecksum(ctx, 2, 2, 2, 2, 40.0) + // now the checksum is flushed, because the total time cost is larger than `MaxChecksumTotalCost` + checkpointRunner.FlushChecksum(ctx, 3, 3, 3, 3, checkpoint.MaxChecksumTotalCost-20.0) + time.Sleep(6 * time.Second) + // the checksum has not been flushed even though after 6 seconds, + // because the total time cost is less than `MaxChecksumTotalCost` + checkpointRunner.FlushChecksum(ctx, 4, 4, 4, 4, 40.0) + + for _, d := range data2 { + err = checkpointRunner.Append(ctx, "+", []byte(d.StartKey), []byte(d.EndKey), []*backuppb.File{ + {Name: d.Name}, + {Name: d.Name2}, + }) + require.NoError(t, err) + } + + checkpointRunner.WaitForFinish() + + checker := func(groupKey string, resp *rtree.Range) { + require.NotNil(t, resp) + d, ok := data[string(resp.StartKey)] + if !ok { + d, ok = data2[string(resp.StartKey)] + require.True(t, ok) + } + require.Equal(t, d.StartKey, string(resp.StartKey)) + require.Equal(t, d.EndKey, string(resp.EndKey)) + require.Equal(t, d.Name, resp.Files[0].Name) + require.Equal(t, d.Name2, resp.Files[1].Name) + } + + _, err = checkpoint.WalkCheckpointFile(ctx, s, cipher, checker) + require.NoError(t, err) + + checkpointMeta := &checkpoint.CheckpointMetadata{ + ConfigHash: []byte("123456"), + BackupTS: 123456, + } + + err = checkpoint.SaveCheckpointMetadata(ctx, s, checkpointMeta) + require.NoError(t, err) + meta, err := checkpoint.LoadCheckpointMetadata(ctx, s) + require.NoError(t, err) + + var i int64 + for i = 1; i <= 4; i++ { + require.Equal(t, meta.CheckpointChecksum[i].Crc64xor, uint64(i)) + } + + // only 2 checksum files exists, they are t2_and__ and t4_and__ + count := 0 + err = s.WalkDir(ctx, &storage.WalkOption{SubDir: checkpoint.CheckpointChecksumDir}, func(s string, i int64) error { + count += 1 + if !strings.Contains(s, "t2") { + require.True(t, strings.Contains(s, "t4")) + } + return nil + }) + require.NoError(t, err) + require.Equal(t, count, 2) +} diff --git a/br/pkg/checksum/executor_test.go b/br/pkg/checksum/executor_test.go index adcaed9c314f9..876103bc055a2 100644 --- a/br/pkg/checksum/executor_test.go +++ b/br/pkg/checksum/executor_test.go @@ -104,7 +104,7 @@ func TestChecksum(t *testing.T) { first = false ranges, err := backup.BuildTableRanges(tableInfo3) require.NoError(t, err) - require.Equalf(t, ranges[:1], req.KeyRanges, "%v", req.KeyRanges) + require.Equalf(t, ranges[:1], req.KeyRanges.FirstPartitionRange(), "%v", req.KeyRanges.FirstPartitionRange()) } return nil })) diff --git a/br/pkg/errors/errors.go b/br/pkg/errors/errors.go index 07e9fb6317cb9..2b7d76e28d795 100644 --- a/br/pkg/errors/errors.go +++ b/br/pkg/errors/errors.go @@ -83,8 +83,9 @@ var ( ErrStorageInvalidPermission = errors.Normalize("external storage permission", errors.RFCCodeText("BR:ExternalStorage:ErrStorageInvalidPermission")) // Snapshot restore - ErrRestoreTotalKVMismatch = errors.Normalize("restore total tikvs mismatch", errors.RFCCodeText("BR:EBS:ErrRestoreTotalKVMismatch")) - ErrRestoreInvalidPeer = errors.Normalize("restore met a invalid peer", errors.RFCCodeText("BR:EBS:ErrRestoreInvalidPeer")) + ErrRestoreTotalKVMismatch = errors.Normalize("restore total tikvs mismatch", errors.RFCCodeText("BR:EBS:ErrRestoreTotalKVMismatch")) + ErrRestoreInvalidPeer = errors.Normalize("restore met a invalid peer", errors.RFCCodeText("BR:EBS:ErrRestoreInvalidPeer")) + ErrRestoreRegionWithoutPeer = errors.Normalize("restore met a region without any peer", errors.RFCCodeText("BR:EBS:ErrRestoreRegionWithoutPeer")) // Errors reported from TiKV. ErrKVStorage = errors.Normalize("tikv storage occur I/O error", errors.RFCCodeText("BR:KV:ErrKVStorage")) diff --git a/br/pkg/errors/errors_test.go b/br/pkg/errors/errors_test.go index a6f4c412280cc..fab655ba60c7e 100644 --- a/br/pkg/errors/errors_test.go +++ b/br/pkg/errors/errors_test.go @@ -22,3 +22,9 @@ func TestIsContextCanceled(t *testing.T) { require.True(t, berrors.IsContextCanceled(&url.Error{Err: context.Canceled})) require.True(t, berrors.IsContextCanceled(&url.Error{Err: context.DeadlineExceeded})) } + +func TestEqual(t *testing.T) { + err := errors.Annotate(berrors.ErrPDBatchScanRegion, "test error equla") + r := berrors.ErrPDBatchScanRegion.Equal(err) + require.True(t, r) +} diff --git a/br/pkg/gluetidb/glue.go b/br/pkg/gluetidb/glue.go index 5483380d03e65..3b1675921afd3 100644 --- a/br/pkg/gluetidb/glue.go +++ b/br/pkg/gluetidb/glue.go @@ -208,6 +208,8 @@ func (gs *tidbSession) CreateTables(ctx context.Context, tables map[string][]*mo d := domain.GetDomain(gs.se).DDL() var dbName model.CIStr + // Disable foreign key check when batch create tables. + gs.se.GetSessionVars().ForeignKeyChecks = false for db, tablesInDB := range tables { dbName = model.NewCIStr(db) queryBuilder := strings.Builder{} @@ -303,7 +305,8 @@ func (gs *tidbSession) showCreatePlacementPolicy(policy *model.PolicyInfo) strin // mockSession is used for test. type mockSession struct { - se session.Session + se session.Session + globalVars map[string]string } // GetSessionCtx implements glue.Glue @@ -368,12 +371,16 @@ func (s *mockSession) Close() { // GetGlobalVariables implements glue.Session. func (s *mockSession) GetGlobalVariable(name string) (string, error) { - return "true", nil + if ret, ok := s.globalVars[name]; ok { + return ret, nil + } + return "True", nil } // MockGlue only used for test type MockGlue struct { - se session.Session + se session.Session + GlobalVars map[string]string } func (m *MockGlue) SetSession(se session.Session) { @@ -388,7 +395,8 @@ func (*MockGlue) GetDomain(store kv.Storage) (*domain.Domain, error) { // CreateSession implements glue.Glue. func (m *MockGlue) CreateSession(store kv.Storage) (glue.Session, error) { glueSession := &mockSession{ - se: m.se, + se: m.se, + globalVars: m.GlobalVars, } return glueSession, nil } diff --git a/br/pkg/lightning/BUILD.bazel b/br/pkg/lightning/BUILD.bazel index 6b3c5f8e3ce31..95aca448f786a 100644 --- a/br/pkg/lightning/BUILD.bazel +++ b/br/pkg/lightning/BUILD.bazel @@ -37,6 +37,7 @@ go_library( "@com_github_prometheus_client_golang//prometheus/promhttp", "@com_github_shurcool_httpgzip//:httpgzip", "@org_golang_x_exp//slices", + "@org_uber_go_atomic//:atomic", "@org_uber_go_zap//:zap", "@org_uber_go_zap//zapcore", ], diff --git a/br/pkg/lightning/backend/kv/BUILD.bazel b/br/pkg/lightning/backend/kv/BUILD.bazel index ea2cfefc2440e..b0da8a0e7deb4 100644 --- a/br/pkg/lightning/backend/kv/BUILD.bazel +++ b/br/pkg/lightning/backend/kv/BUILD.bazel @@ -46,13 +46,14 @@ go_test( name = "kv_test", timeout = "short", srcs = [ + "session_internal_test.go", "session_test.go", "sql2kv_test.go", ], + embed = [":kv"], flaky = True, race = "on", deps = [ - ":kv", "//br/pkg/lightning/common", "//br/pkg/lightning/log", "//br/pkg/lightning/verification", @@ -69,6 +70,7 @@ go_test( "//tablecodec", "//types", "//util/mock", + "@com_github_docker_go_units//:go-units", "@com_github_stretchr_testify//require", "@org_uber_go_zap//:zap", "@org_uber_go_zap//zapcore", diff --git a/br/pkg/lightning/backend/kv/allocator.go b/br/pkg/lightning/backend/kv/allocator.go index 02f46ea8c7e36..14703e1143a45 100644 --- a/br/pkg/lightning/backend/kv/allocator.go +++ b/br/pkg/lightning/backend/kv/allocator.go @@ -34,6 +34,7 @@ type panickingAllocator struct { func NewPanickingAllocators(base int64) autoid.Allocators { sharedBase := &base return autoid.NewAllocators( + false, &panickingAllocator{base: sharedBase, ty: autoid.RowIDAllocType}, &panickingAllocator{base: sharedBase, ty: autoid.AutoIncrementType}, &panickingAllocator{base: sharedBase, ty: autoid.AutoRandomType}, diff --git a/br/pkg/lightning/backend/kv/session.go b/br/pkg/lightning/backend/kv/session.go index 1cc261b677fe4..a8c5b5970cdf8 100644 --- a/br/pkg/lightning/backend/kv/session.go +++ b/br/pkg/lightning/backend/kv/session.go @@ -38,6 +38,8 @@ import ( "go.uber.org/zap" ) +const maxAvailableBufSize int = 20 + // invalidIterator is a trimmed down Iterator type which is invalid. type invalidIterator struct { kv.Iterator @@ -92,6 +94,12 @@ func (mb *kvMemBuf) Recycle(buf *bytesBuf) { buf.idx = 0 buf.cap = len(buf.buf) mb.Lock() + if len(mb.availableBufs) >= maxAvailableBufSize { + // too many byte buffers, evict one byte buffer and continue + evictedByteBuf := mb.availableBufs[0] + evictedByteBuf.destroy() + mb.availableBufs = mb.availableBufs[1:] + } mb.availableBufs = append(mb.availableBufs, buf) mb.Unlock() } @@ -99,8 +107,20 @@ func (mb *kvMemBuf) Recycle(buf *bytesBuf) { func (mb *kvMemBuf) AllocateBuf(size int) { mb.Lock() size = mathutil.Max(units.MiB, int(utils.NextPowerOfTwo(int64(size)))*2) - if len(mb.availableBufs) > 0 && mb.availableBufs[0].cap >= size { - mb.buf = mb.availableBufs[0] + var ( + existingBuf *bytesBuf + existingBufIdx int + ) + for i, buf := range mb.availableBufs { + if buf.cap >= size { + existingBuf = buf + existingBufIdx = i + break + } + } + if existingBuf != nil { + mb.buf = existingBuf + mb.availableBufs[existingBufIdx] = mb.availableBufs[0] mb.availableBufs = mb.availableBufs[1:] } else { mb.buf = newBytesBuf(size) diff --git a/br/pkg/lightning/backend/kv/session_internal_test.go b/br/pkg/lightning/backend/kv/session_internal_test.go new file mode 100644 index 0000000000000..97ebd8cc82d1b --- /dev/null +++ b/br/pkg/lightning/backend/kv/session_internal_test.go @@ -0,0 +1,126 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package kv + +import ( + "testing" + + "github.com/docker/go-units" + "github.com/stretchr/testify/require" +) + +func TestKVMemBufInterweaveAllocAndRecycle(t *testing.T) { + type testCase struct { + AllocSizes []int + FinalAvailableByteBufCaps []int + } + for _, tc := range []testCase{ + { + AllocSizes: []int{ + 1 * units.MiB, + 2 * units.MiB, + 3 * units.MiB, + 4 * units.MiB, + 5 * units.MiB, + }, + // [2] => [2,4] => [2,4,8] => [4,2,8] => [4,2,8,16] + FinalAvailableByteBufCaps: []int{ + 4 * units.MiB, + 2 * units.MiB, + 8 * units.MiB, + 16 * units.MiB, + }, + }, + { + AllocSizes: []int{ + 5 * units.MiB, + 4 * units.MiB, + 3 * units.MiB, + 2 * units.MiB, + 1 * units.MiB, + }, + // [16] => [16] => [16] => [16] => [16] + FinalAvailableByteBufCaps: []int{16 * units.MiB}, + }, + { + AllocSizes: []int{5, 4, 3, 2, 1}, + // [1] => [1] => [1] => [1] => [1] + FinalAvailableByteBufCaps: []int{1 * units.MiB}, + }, + { + AllocSizes: []int{ + 1 * units.MiB, + 2 * units.MiB, + 3 * units.MiB, + 2 * units.MiB, + 1 * units.MiB, + 5 * units.MiB, + }, + // [2] => [2,4] => [2,4,8] => [2,8,4] => [8,4,2] => [8,4,2,16] + FinalAvailableByteBufCaps: []int{ + 8 * units.MiB, + 4 * units.MiB, + 2 * units.MiB, + 16 * units.MiB, + }, + }, + } { + testKVMemBuf := &kvMemBuf{} + for _, allocSize := range tc.AllocSizes { + testKVMemBuf.AllocateBuf(allocSize) + testKVMemBuf.Recycle(testKVMemBuf.buf) + } + require.Equal(t, len(tc.FinalAvailableByteBufCaps), len(testKVMemBuf.availableBufs)) + for i, bb := range testKVMemBuf.availableBufs { + require.Equal(t, tc.FinalAvailableByteBufCaps[i], bb.cap) + } + } +} + +func TestKVMemBufBatchAllocAndRecycle(t *testing.T) { + type testCase struct { + AllocSizes []int + FinalAvailableByteBufCaps []int + } + testKVMemBuf := &kvMemBuf{} + bBufs := []*bytesBuf{} + for i := 0; i < maxAvailableBufSize; i++ { + testKVMemBuf.AllocateBuf(1 * units.MiB) + bBufs = append(bBufs, testKVMemBuf.buf) + } + for i := 0; i < maxAvailableBufSize; i++ { + testKVMemBuf.AllocateBuf(2 * units.MiB) + bBufs = append(bBufs, testKVMemBuf.buf) + } + for _, bb := range bBufs { + testKVMemBuf.Recycle(bb) + } + require.Equal(t, maxAvailableBufSize, len(testKVMemBuf.availableBufs)) + for _, bb := range testKVMemBuf.availableBufs { + require.Equal(t, 4*units.MiB, bb.cap) + } + bBufs = bBufs[:0] + for i := 0; i < maxAvailableBufSize; i++ { + testKVMemBuf.AllocateBuf(1 * units.MiB) + bb := testKVMemBuf.buf + require.Equal(t, 4*units.MiB, bb.cap) + bBufs = append(bBufs, bb) + require.Equal(t, maxAvailableBufSize-i-1, len(testKVMemBuf.availableBufs)) + } + for _, bb := range bBufs { + testKVMemBuf.Recycle(bb) + } + require.Equal(t, maxAvailableBufSize, len(testKVMemBuf.availableBufs)) +} diff --git a/br/pkg/lightning/backend/local/BUILD.bazel b/br/pkg/lightning/backend/local/BUILD.bazel index 6e2b5e9a1c43c..c034e6bdb2b3c 100644 --- a/br/pkg/lightning/backend/local/BUILD.bazel +++ b/br/pkg/lightning/backend/local/BUILD.bazel @@ -94,7 +94,7 @@ go_test( ], embed = [":local"], flaky = True, - shard_count = 20, + shard_count = 40, deps = [ "//br/pkg/errors", "//br/pkg/lightning/backend", diff --git a/br/pkg/lightning/backend/local/duplicate.go b/br/pkg/lightning/backend/local/duplicate.go index b2858a8456f36..8877c16ae7740 100644 --- a/br/pkg/lightning/backend/local/duplicate.go +++ b/br/pkg/lightning/backend/local/duplicate.go @@ -211,7 +211,7 @@ func physicalTableIDs(tableInfo *model.TableInfo) []int64 { } // tableHandleKeyRanges returns all key ranges associated with the tableInfo. -func tableHandleKeyRanges(tableInfo *model.TableInfo) ([]tidbkv.KeyRange, error) { +func tableHandleKeyRanges(tableInfo *model.TableInfo) (*tidbkv.KeyRanges, error) { ranges := ranger.FullIntRange(false) if tableInfo.IsCommonHandle { ranges = ranger.FullRange() @@ -221,18 +221,9 @@ func tableHandleKeyRanges(tableInfo *model.TableInfo) ([]tidbkv.KeyRange, error) } // tableIndexKeyRanges returns all key ranges associated with the tableInfo and indexInfo. -func tableIndexKeyRanges(tableInfo *model.TableInfo, indexInfo *model.IndexInfo) ([]tidbkv.KeyRange, error) { +func tableIndexKeyRanges(tableInfo *model.TableInfo, indexInfo *model.IndexInfo) (*tidbkv.KeyRanges, error) { tableIDs := physicalTableIDs(tableInfo) - //nolint: prealloc - var keyRanges []tidbkv.KeyRange - for _, tid := range tableIDs { - partitionKeysRanges, err := distsql.IndexRangesToKVRanges(nil, tid, indexInfo.ID, ranger.FullRange(), nil) - if err != nil { - return nil, errors.Trace(err) - } - keyRanges = append(keyRanges, partitionKeysRanges...) - } - return keyRanges, nil + return distsql.IndexRangesToKVRangesForTables(nil, tableIDs, indexInfo.ID, ranger.FullRange(), nil) } // DupKVStream is a streaming interface for collecting duplicate key-value pairs. @@ -561,14 +552,23 @@ func (m *DuplicateManager) buildDupTasks() ([]dupTask, error) { if err != nil { return nil, errors.Trace(err) } - tasks := make([]dupTask, 0, len(keyRanges)) - for _, kr := range keyRanges { - tableID := tablecodec.DecodeTableID(kr.StartKey) - tasks = append(tasks, dupTask{ - KeyRange: kr, - tableID: tableID, - }) + tasks := make([]dupTask, 0, keyRanges.TotalRangeNum()*(1+len(m.tbl.Meta().Indices))) + putToTaskFunc := func(ranges []tidbkv.KeyRange, indexInfo *model.IndexInfo) { + if len(ranges) == 0 { + return + } + tid := tablecodec.DecodeTableID(ranges[0].StartKey) + for _, r := range ranges { + tasks = append(tasks, dupTask{ + KeyRange: r, + tableID: tid, + indexInfo: indexInfo, + }) + } } + keyRanges.ForEachPartition(func(ranges []tidbkv.KeyRange) { + putToTaskFunc(ranges, nil) + }) for _, indexInfo := range m.tbl.Meta().Indices { if indexInfo.State != model.StatePublic { continue @@ -577,14 +577,9 @@ func (m *DuplicateManager) buildDupTasks() ([]dupTask, error) { if err != nil { return nil, errors.Trace(err) } - for _, kr := range keyRanges { - tableID := tablecodec.DecodeTableID(kr.StartKey) - tasks = append(tasks, dupTask{ - KeyRange: kr, - tableID: tableID, - indexInfo: indexInfo, - }) - } + keyRanges.ForEachPartition(func(ranges []tidbkv.KeyRange) { + putToTaskFunc(ranges, indexInfo) + }) } return tasks, nil } @@ -598,15 +593,19 @@ func (m *DuplicateManager) buildIndexDupTasks() ([]dupTask, error) { if err != nil { return nil, errors.Trace(err) } - tasks := make([]dupTask, 0, len(keyRanges)) - for _, kr := range keyRanges { - tableID := tablecodec.DecodeTableID(kr.StartKey) - tasks = append(tasks, dupTask{ - KeyRange: kr, - tableID: tableID, - indexInfo: indexInfo, - }) - } + tasks := make([]dupTask, 0, keyRanges.TotalRangeNum()) + keyRanges.ForEachPartition(func(ranges []tidbkv.KeyRange) { + if len(ranges) == 0 { + return + } + tid := tablecodec.DecodeTableID(ranges[0].StartKey) + for _, r := range ranges { + tasks = append(tasks, dupTask{ + KeyRange: r, + tableID: tid, + }) + } + }) return tasks, nil } return nil, nil diff --git a/br/pkg/lightning/checkpoints/checkpoints.go b/br/pkg/lightning/checkpoints/checkpoints.go index 13817e28eb668..d20134660de9c 100644 --- a/br/pkg/lightning/checkpoints/checkpoints.go +++ b/br/pkg/lightning/checkpoints/checkpoints.go @@ -262,6 +262,29 @@ func (ccp *ChunkCheckpoint) DeepCopy() *ChunkCheckpoint { } } +func (ccp *ChunkCheckpoint) UnfinishedSize() int64 { + if ccp.FileMeta.Compression == mydump.CompressionNone { + return ccp.Chunk.EndOffset - ccp.Chunk.Offset + } + return ccp.FileMeta.FileSize - ccp.Chunk.RealOffset +} + +func (ccp *ChunkCheckpoint) TotalSize() int64 { + if ccp.FileMeta.Compression == mydump.CompressionNone { + return ccp.Chunk.EndOffset - ccp.Key.Offset + } + // TODO: compressed file won't be split into chunks, so using FileSize as TotalSize is ok + // change this when we support split compressed file into chunks + return ccp.FileMeta.FileSize +} + +func (ccp *ChunkCheckpoint) FinishedSize() int64 { + if ccp.FileMeta.Compression == mydump.CompressionNone { + return ccp.Chunk.Offset - ccp.Key.Offset + } + return ccp.Chunk.RealOffset - ccp.Key.Offset +} + type EngineCheckpoint struct { Status CheckpointStatus Chunks []*ChunkCheckpoint // a sorted array diff --git a/br/pkg/lightning/common/errors.go b/br/pkg/lightning/common/errors.go index c2fc3dbaa901f..1b23ff99fc1b4 100644 --- a/br/pkg/lightning/common/errors.go +++ b/br/pkg/lightning/common/errors.go @@ -51,6 +51,7 @@ var ( ErrCheckTableEmpty = errors.Normalize("check table empty error", errors.RFCCodeText("Lightning:PreCheck:ErrCheckTableEmpty")) ErrCheckCSVHeader = errors.Normalize("check csv header error", errors.RFCCodeText("Lightning:PreCheck:ErrCheckCSVHeader")) ErrCheckDataSource = errors.Normalize("check data source error", errors.RFCCodeText("Lightning:PreCheck:ErrCheckDataSource")) + ErrCheckCDCPiTR = errors.Normalize("check TiCDC/PiTR task error", errors.RFCCodeText("Lightning:PreCheck:ErrCheckCDCPiTR")) ErrOpenCheckpoint = errors.Normalize("open checkpoint error", errors.RFCCodeText("Lightning:Checkpoint:ErrOpenCheckpoint")) ErrReadCheckpoint = errors.Normalize("read checkpoint error", errors.RFCCodeText("Lightning:Checkpoint:ErrReadCheckpoint")) diff --git a/br/pkg/lightning/errormanager/errormanager.go b/br/pkg/lightning/errormanager/errormanager.go index 43035716d729c..373ba572779d4 100644 --- a/br/pkg/lightning/errormanager/errormanager.go +++ b/br/pkg/lightning/errormanager/errormanager.go @@ -40,9 +40,10 @@ const ( CREATE SCHEMA IF NOT EXISTS %s; ` - syntaxErrorTableName = "syntax_error_v1" - typeErrorTableName = "type_error_v1" - conflictErrorTableName = "conflict_error_v1" + syntaxErrorTableName = "syntax_error_v1" + typeErrorTableName = "type_error_v1" + // ConflictErrorTableName is the table name for duplicate detection. + ConflictErrorTableName = "conflict_error_v1" createSyntaxErrorTable = ` CREATE TABLE IF NOT EXISTS %s.` + syntaxErrorTableName + ` ( @@ -69,7 +70,7 @@ const ( ` createConflictErrorTable = ` - CREATE TABLE IF NOT EXISTS %s.` + conflictErrorTableName + ` ( + CREATE TABLE IF NOT EXISTS %s.` + ConflictErrorTableName + ` ( task_id bigint NOT NULL, create_time datetime(6) NOT NULL DEFAULT now(6), table_name varchar(261) NOT NULL, @@ -91,7 +92,7 @@ const ( ` insertIntoConflictErrorData = ` - INSERT INTO %s.` + conflictErrorTableName + ` + INSERT INTO %s.` + ConflictErrorTableName + ` (task_id, table_name, index_name, key_data, row_data, raw_key, raw_value, raw_handle, raw_row) VALUES ` @@ -99,7 +100,7 @@ const ( sqlValuesConflictErrorData = "(?,?,'PRIMARY',?,?,?,?,raw_key,raw_value)" insertIntoConflictErrorIndex = ` - INSERT INTO %s.` + conflictErrorTableName + ` + INSERT INTO %s.` + ConflictErrorTableName + ` (task_id, table_name, index_name, key_data, row_data, raw_key, raw_value, raw_handle, raw_row) VALUES ` @@ -108,7 +109,7 @@ const ( selectConflictKeys = ` SELECT _tidb_rowid, raw_handle, raw_row - FROM %s.` + conflictErrorTableName + ` + FROM %s.` + ConflictErrorTableName + ` WHERE table_name = ? AND _tidb_rowid >= ? and _tidb_rowid < ? ORDER BY _tidb_rowid LIMIT ?; ` @@ -468,7 +469,7 @@ func (em *ErrorManager) LogErrorDetails() { em.logger.Warn(fmtErrMsg(errCnt, "data type", "")) } if errCnt := em.conflictError(); errCnt > 0 { - em.logger.Warn(fmtErrMsg(errCnt, "data type", conflictErrorTableName)) + em.logger.Warn(fmtErrMsg(errCnt, "data type", ConflictErrorTableName)) } } @@ -511,7 +512,7 @@ func (em *ErrorManager) Output() string { } if errCnt := em.conflictError(); errCnt > 0 { count++ - t.AppendRow(table.Row{count, "Unique Key Conflict", errCnt, em.fmtTableName(conflictErrorTableName)}) + t.AppendRow(table.Row{count, "Unique Key Conflict", errCnt, em.fmtTableName(ConflictErrorTableName)}) } res := "\nImport Data Error Summary: \n" diff --git a/br/pkg/lightning/lightning.go b/br/pkg/lightning/lightning.go index 3770f7c8f07a4..2db76b1001078 100644 --- a/br/pkg/lightning/lightning.go +++ b/br/pkg/lightning/lightning.go @@ -77,6 +77,7 @@ type Lightning struct { promFactory promutil.Factory promRegistry promutil.Registry + metrics *metric.Metrics cancelLock sync.Mutex curTask *config.Config @@ -388,6 +389,7 @@ func (l *Lightning) run(taskCtx context.Context, taskCfg *config.Config, o *opti defer func() { metrics.UnregisterFrom(o.promRegistry) }() + l.metrics = metrics ctx := metric.NewContext(taskCtx, metrics) ctx = log.NewContext(ctx, o.logger) @@ -433,6 +435,16 @@ func (l *Lightning) run(taskCtx context.Context, taskCfg *config.Config, o *opti } }) + failpoint.Inject("PrintStatus", func() { + defer func() { + finished, total := l.Status() + o.logger.Warn("PrintStatus Failpoint", + zap.Int64("finished", finished), + zap.Int64("total", total), + zap.Bool("equal", finished == total)) + }() + }) + if err := taskCfg.TiDB.Security.RegisterMySQL(); err != nil { return common.ErrInvalidTLSConfig.Wrap(err) } @@ -502,8 +514,6 @@ func (l *Lightning) run(taskCtx context.Context, taskCfg *config.Config, o *opti dbMetas := mdl.GetDatabases() web.BroadcastInitProgress(dbMetas) - var procedure *restore.Controller - param := &restore.ControllerParam{ DBMetas: dbMetas, Status: &l.status, @@ -512,8 +522,10 @@ func (l *Lightning) run(taskCtx context.Context, taskCfg *config.Config, o *opti Glue: g, CheckpointStorage: o.checkpointStorage, CheckpointName: o.checkpointName, + DupIndicator: o.dupIndicator, } + var procedure *restore.Controller procedure, err = restore.NewRestoreController(ctx, taskCfg, param) if err != nil { o.logger.Error("restore failed", log.ShortError(err)) @@ -544,6 +556,12 @@ func (l *Lightning) Status() (finished int64, total int64) { return } +// Metrics returns the metrics of lightning. +// it's inited during `run`, so might return nil. +func (l *Lightning) Metrics() *metric.Metrics { + return l.metrics +} + func writeJSONError(w http.ResponseWriter, code int, prefix string, err error) { type errorResponse struct { Error string `json:"error"` diff --git a/br/pkg/lightning/mydump/parquet_parser.go b/br/pkg/lightning/mydump/parquet_parser.go index e7ac2baa6d80f..a1b612903c5e8 100644 --- a/br/pkg/lightning/mydump/parquet_parser.go +++ b/br/pkg/lightning/mydump/parquet_parser.go @@ -351,6 +351,12 @@ func (pp *ParquetParser) SetPos(pos int64, rowID int64) error { return nil } +// RealPos implements the Parser interface. +// For parquet it's equal to Pos(). +func (pp *ParquetParser) RealPos() (int64, error) { + return pp.curStart + int64(pp.curIndex), nil +} + // Close closes the parquet file of the parser. // It implements the Parser interface. func (pp *ParquetParser) Close() error { diff --git a/br/pkg/lightning/mydump/parser.go b/br/pkg/lightning/mydump/parser.go index 73f84424bf5e3..512c3789cfa7f 100644 --- a/br/pkg/lightning/mydump/parser.go +++ b/br/pkg/lightning/mydump/parser.go @@ -94,6 +94,7 @@ type ChunkParser struct { type Chunk struct { Offset int64 EndOffset int64 + RealOffset int64 PrevRowIDMax int64 RowIDMax int64 Columns []string @@ -126,6 +127,7 @@ const ( type Parser interface { Pos() (pos int64, rowID int64) SetPos(pos int64, rowID int64) error + RealPos() (int64, error) Close() error ReadRow() error LastRow() Row @@ -175,6 +177,11 @@ func (parser *blockParser) SetPos(pos int64, rowID int64) error { return nil } +// RealPos gets the read position of current reader. +func (parser *blockParser) RealPos() (int64, error) { + return parser.reader.Seek(0, io.SeekCurrent) +} + // Pos returns the current file offset. // Attention: for compressed sql/csv files, pos is the position in uncompressed files func (parser *blockParser) Pos() (pos int64, lastRowID int64) { diff --git a/br/pkg/lightning/mydump/reader.go b/br/pkg/lightning/mydump/reader.go index 2988c3675dfa9..4837b35aceab2 100644 --- a/br/pkg/lightning/mydump/reader.go +++ b/br/pkg/lightning/mydump/reader.go @@ -70,6 +70,13 @@ func decodeCharacterSet(data []byte, characterSet string) ([]byte, error) { // ExportStatement exports the SQL statement in the schema file. func ExportStatement(ctx context.Context, store storage.ExternalStorage, sqlFile FileInfo, characterSet string) ([]byte, error) { + if sqlFile.FileMeta.Compression != CompressionNone { + compressType, err := ToStorageCompressType(sqlFile.FileMeta.Compression) + if err != nil { + return nil, errors.Trace(err) + } + store = storage.WithCompression(store, compressType) + } fd, err := store.Open(ctx, sqlFile.FileMeta.Path) if err != nil { return nil, errors.Trace(err) diff --git a/br/pkg/lightning/mydump/reader_test.go b/br/pkg/lightning/mydump/reader_test.go index e7506ea869782..1f67f2c31c43a 100644 --- a/br/pkg/lightning/mydump/reader_test.go +++ b/br/pkg/lightning/mydump/reader_test.go @@ -15,6 +15,7 @@ package mydump_test import ( + "compress/gzip" "context" "errors" "os" @@ -173,3 +174,28 @@ func TestExportStatementHandleNonEOFError(t *testing.T) { _, err := ExportStatement(ctx, mockStorage, f, "auto") require.Contains(t, err.Error(), "read error") } + +func TestExportStatementCompressed(t *testing.T) { + dir := t.TempDir() + file, err := os.Create(filepath.Join(dir, "tidb_lightning_test_reader")) + require.NoError(t, err) + defer os.Remove(file.Name()) + + store, err := storage.NewLocalStorage(dir) + require.NoError(t, err) + + gzipFile := gzip.NewWriter(file) + _, err = gzipFile.Write([]byte("CREATE DATABASE whatever;")) + require.NoError(t, err) + err = gzipFile.Close() + require.NoError(t, err) + stat, err := file.Stat() + require.NoError(t, err) + err = file.Close() + require.NoError(t, err) + + f := FileInfo{FileMeta: SourceFileMeta{Path: stat.Name(), FileSize: stat.Size(), Compression: CompressionGZ}} + data, err := ExportStatement(context.TODO(), store, f, "auto") + require.NoError(t, err) + require.Equal(t, []byte("CREATE DATABASE whatever;"), data) +} diff --git a/br/pkg/lightning/mydump/region.go b/br/pkg/lightning/mydump/region.go index 8562acc2867b3..f1eb7934c55e8 100644 --- a/br/pkg/lightning/mydump/region.go +++ b/br/pkg/lightning/mydump/region.go @@ -31,9 +31,16 @@ import ( ) const ( - tableRegionSizeWarningThreshold int64 = 1024 * 1024 * 1024 + tableRegionSizeWarningThreshold int64 = 1024 * 1024 * 1024 + compressedTableRegionSizeWarningThreshold int64 = 410 * 1024 * 1024 // 0.4 * tableRegionSizeWarningThreshold // the increment ratio of large CSV file size threshold by `region-split-size` largeCSVLowerThresholdRation = 10 + // TableFileSizeINF for compressed size, for lightning 10TB is a relatively big value and will strongly affect efficiency + // It's used to make sure compressed files can be read until EOF. Because we can't get the exact decompressed size of the compressed files. + TableFileSizeINF = 10 * 1024 * tableRegionSizeWarningThreshold + // compressDataRatio is a relatively maximum compress ratio for normal compressed data + // It's used to estimate rowIDMax, we use a large value to try to avoid overlapping + compressDataRatio = 500 ) // TableRegion contains information for a table region during import. @@ -292,19 +299,36 @@ func MakeSourceFileRegion( return regions, subFileSizes, err } + fileSize := fi.FileMeta.FileSize + rowIDMax := fileSize / divisor + // for compressed files, suggest the compress ratio is 1% to calculate the rowIDMax. + // set fileSize to INF to make sure compressed files can be read until EOF. Because we can't get the exact size of the compressed files. + // TODO: update progress bar calculation for compressed files. + if fi.FileMeta.Compression != CompressionNone { + // FIXME: this is not accurate. Need sample ratio in the future and use sampled ratio to compute rowIDMax + // currently we use 500 here. It's a relatively large value for most data. + rowIDMax = fileSize * compressDataRatio / divisor + fileSize = TableFileSizeINF + } tableRegion := &TableRegion{ DB: meta.DB, Table: meta.Name, FileMeta: fi.FileMeta, Chunk: Chunk{ Offset: 0, - EndOffset: fi.FileMeta.FileSize, + EndOffset: fileSize, PrevRowIDMax: 0, - RowIDMax: fi.FileMeta.FileSize / divisor, + RowIDMax: rowIDMax, }, } - if tableRegion.Size() > tableRegionSizeWarningThreshold { + regionTooBig := false + if fi.FileMeta.Compression == CompressionNone { + regionTooBig = tableRegion.Size() > tableRegionSizeWarningThreshold + } else { + regionTooBig = fi.FileMeta.FileSize > compressedTableRegionSizeWarningThreshold + } + if regionTooBig { log.FromContext(ctx).Warn( "file is too big to be processed efficiently; we suggest splitting it at 256 MB each", zap.String("file", fi.FileMeta.Path), diff --git a/br/pkg/lightning/mydump/region_test.go b/br/pkg/lightning/mydump/region_test.go index 0830d378f47ff..0c990278e65cd 100644 --- a/br/pkg/lightning/mydump/region_test.go +++ b/br/pkg/lightning/mydump/region_test.go @@ -217,7 +217,7 @@ func TestMakeSourceFileRegion(t *testing.T) { assert.NoError(t, err) assert.Len(t, regions, 1) assert.Equal(t, int64(0), regions[0].Chunk.Offset) - assert.Equal(t, fileInfo.FileMeta.FileSize, regions[0].Chunk.EndOffset) + assert.Equal(t, TableFileSizeINF, regions[0].Chunk.EndOffset) assert.Len(t, regions[0].Chunk.Columns, 0) } diff --git a/br/pkg/lightning/mydump/router.go b/br/pkg/lightning/mydump/router.go index bdc2a922f12f7..bf0ccba834fe0 100644 --- a/br/pkg/lightning/mydump/router.go +++ b/br/pkg/lightning/mydump/router.go @@ -134,7 +134,7 @@ func parseCompressionType(t string) (Compression, error) { return CompressionGZ, nil case "lz4": return CompressionLZ4, nil - case "zstd": + case "zstd", "zst": return CompressionZStd, nil case "xz": return CompressionXZ, nil @@ -324,6 +324,9 @@ func (p regexRouterParser) Parse(r *config.FileRouteRule, logger log.Logger) (*R if err != nil { return err } + if result.Type == SourceTypeParquet && compression != CompressionNone { + return errors.Errorf("can't support whole compressed parquet file, should compress parquet files by choosing correct parquet compress writer, path: %s", r.Path) + } result.Compression = compression return nil }) diff --git a/br/pkg/lightning/mydump/router_test.go b/br/pkg/lightning/mydump/router_test.go index 4e3d8a4215a0d..ab97769e30ce8 100644 --- a/br/pkg/lightning/mydump/router_test.go +++ b/br/pkg/lightning/mydump/router_test.go @@ -292,3 +292,21 @@ func TestRouteWithPath(t *testing.T) { require.NoError(t, err) require.Nil(t, res) } + +func TestRouteWithCompressedParquet(t *testing.T) { + fileName := "myschema.my_table.000.parquet.gz" + rule := &config.FileRouteRule{ + Pattern: `(?i)^(?:[^/]*/)*([^/.]+)\.(.*?)(?:\.([0-9]+))?\.(sql|csv|parquet)(?:\.(\w+))?$`, + Schema: "$1", + Table: "$2", + Type: "$4", + Key: "$3", + Compression: "$5", + Unescape: true, + } + r := *rule + router, err := NewFileRouter([]*config.FileRouteRule{&r}, log.L()) + require.NoError(t, err) + _, err = router.Route(fileName) + require.Error(t, err) +} diff --git a/br/pkg/lightning/restore/BUILD.bazel b/br/pkg/lightning/restore/BUILD.bazel index 175e69e22d02f..ef5aeb106585b 100644 --- a/br/pkg/lightning/restore/BUILD.bazel +++ b/br/pkg/lightning/restore/BUILD.bazel @@ -39,6 +39,7 @@ go_library( "//br/pkg/pdutil", "//br/pkg/redact", "//br/pkg/storage", + "//br/pkg/streamhelper", "//br/pkg/utils", "//br/pkg/version", "//br/pkg/version/build", @@ -77,6 +78,9 @@ go_library( "@com_github_pingcap_tipb//go-tipb", "@com_github_tikv_client_go_v2//oracle", "@com_github_tikv_pd_client//:client", + "@io_etcd_go_etcd_client_v3//:client", + "@org_golang_google_grpc//:grpc", + "@org_golang_google_grpc//keepalive", "@org_golang_x_exp//maps", "@org_golang_x_exp//slices", "@org_golang_x_sync//errgroup", @@ -124,6 +128,7 @@ go_test( "//br/pkg/lightning/worker", "//br/pkg/mock", "//br/pkg/storage", + "//br/pkg/streamhelper", "//br/pkg/version/build", "//ddl", "//errno", @@ -158,6 +163,8 @@ go_test( "@com_github_tikv_pd_client//:client", "@com_github_xitongsys_parquet_go//writer", "@com_github_xitongsys_parquet_go_source//buffer", + "@io_etcd_go_etcd_client_v3//:client", + "@io_etcd_go_etcd_tests_v3//integration", "@org_uber_go_atomic//:atomic", "@org_uber_go_zap//:zap", ], diff --git a/br/pkg/lightning/restore/check_info.go b/br/pkg/lightning/restore/check_info.go index cc4b3b734ebaa..aab9e5ebacef5 100644 --- a/br/pkg/lightning/restore/check_info.go +++ b/br/pkg/lightning/restore/check_info.go @@ -155,3 +155,10 @@ func (rc *Controller) checkSourceSchema(ctx context.Context) error { } return rc.doPreCheckOnItem(ctx, CheckSourceSchemaValid) } + +func (rc *Controller) checkCDCPiTR(ctx context.Context) error { + if rc.cfg.TikvImporter.Backend == config.BackendTiDB { + return nil + } + return rc.doPreCheckOnItem(ctx, CheckTargetUsingCDCPITR) +} diff --git a/br/pkg/lightning/restore/check_info_test.go b/br/pkg/lightning/restore/check_info_test.go index 3a8a666699164..36903ab93b22c 100644 --- a/br/pkg/lightning/restore/check_info_test.go +++ b/br/pkg/lightning/restore/check_info_test.go @@ -493,11 +493,11 @@ func TestCheckTableEmpty(t *testing.T) { require.NoError(t, err) mock.MatchExpectationsInOrder(false) targetInfoGetter.targetDBGlue = glue.NewExternalTiDBGlue(db, mysql.ModeNone) - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) - mock.ExpectQuery("SELECT 1 FROM `test2`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test2`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) rc.checkTemplate = NewSimpleTemplate() err = rc.checkTableEmpty(ctx) @@ -510,13 +510,13 @@ func TestCheckTableEmpty(t *testing.T) { targetInfoGetter.targetDBGlue = glue.NewExternalTiDBGlue(db, mysql.ModeNone) mock.MatchExpectationsInOrder(false) // test auto retry retryable error - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnError(&gmysql.MySQLError{Number: errno.ErrPDServerTimeout}) - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) - mock.ExpectQuery("SELECT 1 FROM `test2`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test2`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).AddRow(1)) rc.checkTemplate = NewSimpleTemplate() err = rc.checkTableEmpty(ctx) @@ -532,11 +532,11 @@ func TestCheckTableEmpty(t *testing.T) { require.NoError(t, err) targetInfoGetter.targetDBGlue = glue.NewExternalTiDBGlue(db, mysql.ModeNone) mock.MatchExpectationsInOrder(false) - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).AddRow(1)) - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) - mock.ExpectQuery("SELECT 1 FROM `test2`.`tbl1` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test2`.`tbl1` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).AddRow(1)) rc.checkTemplate = NewSimpleTemplate() err = rc.checkTableEmpty(ctx) @@ -576,7 +576,7 @@ func TestCheckTableEmpty(t *testing.T) { require.NoError(t, err) targetInfoGetter.targetDBGlue = glue.NewExternalTiDBGlue(db, mysql.ModeNone) // only need to check the one that is not in checkpoint - mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test1`.`tbl2` USE INDEX\\(\\) LIMIT 1"). WillReturnRows(sqlmock.NewRows([]string{""}).RowError(0, sql.ErrNoRows)) err = rc.checkTableEmpty(ctx) require.NoError(t, err) diff --git a/br/pkg/lightning/restore/checksum.go b/br/pkg/lightning/restore/checksum.go index 71b02801dc2dc..b30fe14e01fc1 100644 --- a/br/pkg/lightning/restore/checksum.go +++ b/br/pkg/lightning/restore/checksum.go @@ -374,7 +374,7 @@ func newGCTTLManager(pdClient pd.Client) gcTTLManager { func (m *gcTTLManager) addOneJob(ctx context.Context, table string, ts uint64) error { // start gc ttl loop if not started yet. - if m.started.CAS(false, true) { + if m.started.CompareAndSwap(false, true) { m.start(ctx) } m.lock.Lock() diff --git a/br/pkg/lightning/restore/get_pre_info.go b/br/pkg/lightning/restore/get_pre_info.go index 287d59c6145a4..4273ff708a89b 100644 --- a/br/pkg/lightning/restore/get_pre_info.go +++ b/br/pkg/lightning/restore/get_pre_info.go @@ -189,7 +189,12 @@ func (g *TargetInfoGetterImpl) IsTableEmpty(ctx context.Context, schemaName stri } var dump int err = exec.QueryRow(ctx, "check table empty", - fmt.Sprintf("SELECT 1 FROM %s LIMIT 1", common.UniqueTable(schemaName, tableName)), + // Here we use the `USE INDEX()` hint to skip fetch the record from index. + // In Lightning, if previous importing is halted half-way, it is possible that + // the data is partially imported, but the index data has not been imported. + // In this situation, if no hint is added, the SQL executor might fetch the record from index, + // which is empty. This will result in missing check. + fmt.Sprintf("SELECT 1 FROM %s USE INDEX() LIMIT 1", common.UniqueTable(schemaName, tableName)), &dump, ) @@ -444,15 +449,7 @@ func (p *PreRestoreInfoGetterImpl) ReadFirstNRowsByTableName(ctx context.Context // ReadFirstNRowsByFileMeta reads the first N rows of an data file. // It implements the PreRestoreInfoGetter interface. func (p *PreRestoreInfoGetterImpl) ReadFirstNRowsByFileMeta(ctx context.Context, dataFileMeta mydump.SourceFileMeta, n int) ([]string, [][]types.Datum, error) { - var ( - reader storage.ReadSeekCloser - err error - ) - if dataFileMeta.Type == mydump.SourceTypeParquet { - reader, err = mydump.OpenParquetReader(ctx, p.srcStorage, dataFileMeta.Path, dataFileMeta.FileSize) - } else { - reader, err = p.srcStorage.Open(ctx, dataFileMeta.Path) - } + reader, err := openReader(ctx, dataFileMeta, p.srcStorage) if err != nil { return nil, nil, errors.Trace(err) } @@ -590,13 +587,7 @@ func (p *PreRestoreInfoGetterImpl) sampleDataFromTable( return resultIndexRatio, isRowOrdered, nil } sampleFile := tableMeta.DataFiles[0].FileMeta - var reader storage.ReadSeekCloser - var err error - if sampleFile.Type == mydump.SourceTypeParquet { - reader, err = mydump.OpenParquetReader(ctx, p.srcStorage, sampleFile.Path, sampleFile.FileSize) - } else { - reader, err = p.srcStorage.Open(ctx, sampleFile.Path) - } + reader, err := openReader(ctx, sampleFile, p.srcStorage) if err != nil { return 0.0, false, errors.Trace(err) } diff --git a/br/pkg/lightning/restore/get_pre_info_test.go b/br/pkg/lightning/restore/get_pre_info_test.go index 8ea57d023c679..71c2810d0b60e 100644 --- a/br/pkg/lightning/restore/get_pre_info_test.go +++ b/br/pkg/lightning/restore/get_pre_info_test.go @@ -14,6 +14,8 @@ package restore import ( + "bytes" + "compress/gzip" "context" "database/sql" "fmt" @@ -24,6 +26,7 @@ import ( mysql_sql_driver "github.com/go-sql-driver/mysql" "github.com/pingcap/errors" "github.com/pingcap/tidb/br/pkg/lightning/config" + "github.com/pingcap/tidb/br/pkg/lightning/mydump" "github.com/pingcap/tidb/br/pkg/lightning/restore/mock" ropts "github.com/pingcap/tidb/br/pkg/lightning/restore/opts" "github.com/pingcap/tidb/errno" @@ -412,6 +415,118 @@ INSERT INTO db01.tbl01 (ival, sval) VALUES (444, 'ddd');` require.Equal(t, theDataInfo.ExpectFirstRowDatums, rowDatums) } +func compressGz(t *testing.T, data []byte) []byte { + t.Helper() + var buf bytes.Buffer + w := gzip.NewWriter(&buf) + _, err := w.Write(data) + require.NoError(t, err) + require.NoError(t, w.Close()) + return buf.Bytes() +} + +func TestGetPreInfoReadCompressedFirstRow(t *testing.T) { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + var ( + testCSVData01 = []byte(`ival,sval +111,"aaa" +222,"bbb" +`) + testSQLData01 = []byte(`INSERT INTO db01.tbl01 (ival, sval) VALUES (333, 'ccc'); +INSERT INTO db01.tbl01 (ival, sval) VALUES (444, 'ddd');`) + ) + + test1CSVCompressed := compressGz(t, testCSVData01) + test1SQLCompressed := compressGz(t, testSQLData01) + + testDataInfos := []struct { + FileName string + Data []byte + FirstN int + CSVConfig *config.CSVConfig + ExpectFirstRowDatums [][]types.Datum + ExpectColumns []string + }{ + { + FileName: "/db01/tbl01/data.001.csv.gz", + Data: test1CSVCompressed, + FirstN: 1, + ExpectFirstRowDatums: [][]types.Datum{ + { + types.NewStringDatum("111"), + types.NewStringDatum("aaa"), + }, + }, + ExpectColumns: []string{"ival", "sval"}, + }, + { + FileName: "/db01/tbl01/data.001.sql.gz", + Data: test1SQLCompressed, + FirstN: 1, + ExpectFirstRowDatums: [][]types.Datum{ + { + types.NewUintDatum(333), + types.NewStringDatum("ccc"), + }, + }, + ExpectColumns: []string{"ival", "sval"}, + }, + } + + tbl01SchemaBytes := []byte("CREATE TABLE db01.tbl01(id INTEGER PRIMARY KEY AUTO_INCREMENT, ival INTEGER, sval VARCHAR(64));") + tbl01SchemaBytesCompressed := compressGz(t, tbl01SchemaBytes) + + tblMockSourceData := &mock.MockTableSourceData{ + DBName: "db01", + TableName: "tbl01", + SchemaFile: &mock.MockSourceFile{ + FileName: "/db01/tbl01/tbl01.schema.sql.gz", + Data: tbl01SchemaBytesCompressed, + }, + DataFiles: []*mock.MockSourceFile{}, + } + for _, testInfo := range testDataInfos { + tblMockSourceData.DataFiles = append(tblMockSourceData.DataFiles, &mock.MockSourceFile{ + FileName: testInfo.FileName, + Data: testInfo.Data, + }) + } + mockDataMap := map[string]*mock.MockDBSourceData{ + "db01": { + Name: "db01", + Tables: map[string]*mock.MockTableSourceData{ + "tbl01": tblMockSourceData, + }, + }, + } + mockSrc, err := mock.NewMockImportSource(mockDataMap) + require.Nil(t, err) + mockTarget := mock.NewMockTargetInfo() + cfg := config.NewConfig() + cfg.TikvImporter.Backend = config.BackendLocal + ig, err := NewPreRestoreInfoGetter(cfg, mockSrc.GetAllDBFileMetas(), mockSrc.GetStorage(), mockTarget, nil, nil) + require.NoError(t, err) + + cfg.Mydumper.CSV.Header = true + tblMeta := mockSrc.GetDBMetaMap()["db01"].Tables[0] + for i, dataFile := range tblMeta.DataFiles { + theDataInfo := testDataInfos[i] + dataFile.FileMeta.Compression = mydump.CompressionGZ + cols, rowDatums, err := ig.ReadFirstNRowsByFileMeta(ctx, dataFile.FileMeta, theDataInfo.FirstN) + require.Nil(t, err) + t.Logf("%v, %v", cols, rowDatums) + require.Equal(t, theDataInfo.ExpectColumns, cols) + require.Equal(t, theDataInfo.ExpectFirstRowDatums, rowDatums) + } + + theDataInfo := testDataInfos[0] + cols, rowDatums, err := ig.ReadFirstNRowsByTableName(ctx, "db01", "tbl01", theDataInfo.FirstN) + require.NoError(t, err) + require.Equal(t, theDataInfo.ExpectColumns, cols) + require.Equal(t, theDataInfo.ExpectFirstRowDatums, rowDatums) +} + func TestGetPreInfoSampleSource(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() @@ -497,6 +612,100 @@ func TestGetPreInfoSampleSource(t *testing.T) { } } +func TestGetPreInfoSampleSourceCompressed(t *testing.T) { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + dataFileName := "/db01/tbl01/tbl01.data.001.csv.gz" + schemaFileData := []byte("CREATE TABLE db01.tbl01 (id INTEGER PRIMARY KEY AUTO_INCREMENT, ival INTEGER, sval VARCHAR(64));") + schemaFileDataCompressed := compressGz(t, schemaFileData) + mockDataMap := map[string]*mock.MockDBSourceData{ + "db01": { + Name: "db01", + Tables: map[string]*mock.MockTableSourceData{ + "tbl01": { + DBName: "db01", + TableName: "tbl01", + SchemaFile: &mock.MockSourceFile{ + FileName: "/db01/tbl01/tbl01.schema.sql.gz", + Data: schemaFileDataCompressed, + }, + DataFiles: []*mock.MockSourceFile{ + { + FileName: dataFileName, + Data: []byte(nil), + }, + }, + }, + }, + }, + } + mockSrc, err := mock.NewMockImportSource(mockDataMap) + require.Nil(t, err) + mockTarget := mock.NewMockTargetInfo() + cfg := config.NewConfig() + cfg.TikvImporter.Backend = config.BackendLocal + ig, err := NewPreRestoreInfoGetter(cfg, mockSrc.GetAllDBFileMetas(), mockSrc.GetStorage(), mockTarget, nil, nil, ropts.WithIgnoreDBNotExist(true)) + require.NoError(t, err) + + mdDBMeta := mockSrc.GetAllDBFileMetas()[0] + mdTblMeta := mdDBMeta.Tables[0] + dbInfos, err := ig.GetAllTableStructures(ctx) + require.NoError(t, err) + + data := [][]byte{ + []byte(`id,ival,sval +1,111,"aaa" +2,222,"bbb" +`), + []byte(`sval,ival,id +"aaa",111,1 +"bbb",222,2 +`), + []byte(`id,ival,sval +2,222,"bbb" +1,111,"aaa" +`), + []byte(`sval,ival,id +"aaa",111,2 +"bbb",222,1 +`), + } + compressedData := make([][]byte, 0, 4) + for _, d := range data { + compressedData = append(compressedData, compressGz(t, d)) + } + + subTests := []struct { + Data []byte + ExpectIsOrdered bool + }{ + { + Data: compressedData[0], + ExpectIsOrdered: true, + }, + { + Data: compressedData[1], + ExpectIsOrdered: true, + }, + { + Data: compressedData[2], + ExpectIsOrdered: false, + }, + { + Data: compressedData[3], + ExpectIsOrdered: false, + }, + } + for _, subTest := range subTests { + require.NoError(t, mockSrc.GetStorage().WriteFile(ctx, dataFileName, subTest.Data)) + sampledIndexRatio, isRowOrderedFromSample, err := ig.sampleDataFromTable(ctx, "db01", mdTblMeta, dbInfos["db01"].Tables["tbl01"].Core, nil, defaultImportantVariables) + require.NoError(t, err) + t.Logf("%v, %v", sampledIndexRatio, isRowOrderedFromSample) + require.Greater(t, sampledIndexRatio, 1.0) + require.Equal(t, subTest.ExpectIsOrdered, isRowOrderedFromSample) + } +} + func TestGetPreInfoEstimateSourceSize(t *testing.T) { ctx, cancel := context.WithCancel(context.Background()) defer cancel() @@ -553,7 +762,7 @@ func TestGetPreInfoIsTableEmpty(t *testing.T) { require.NoError(t, err) require.Equal(t, lnConfig, targetGetter.cfg) - mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` USE INDEX\\(\\) LIMIT 1"). WillReturnError(&mysql_sql_driver.MySQLError{ Number: errno.ErrNoSuchTable, Message: "Table 'test_db.test_tbl' doesn't exist", @@ -563,7 +772,7 @@ func TestGetPreInfoIsTableEmpty(t *testing.T) { require.NotNil(t, pIsEmpty) require.Equal(t, true, *pIsEmpty) - mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` USE INDEX\\(\\) LIMIT 1"). WillReturnRows( sqlmock.NewRows([]string{"1"}). RowError(0, sql.ErrNoRows), @@ -573,7 +782,7 @@ func TestGetPreInfoIsTableEmpty(t *testing.T) { require.NotNil(t, pIsEmpty) require.Equal(t, true, *pIsEmpty) - mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` USE INDEX\\(\\) LIMIT 1"). WillReturnRows( sqlmock.NewRows([]string{"1"}).AddRow(1), ) @@ -582,7 +791,7 @@ func TestGetPreInfoIsTableEmpty(t *testing.T) { require.NotNil(t, pIsEmpty) require.Equal(t, false, *pIsEmpty) - mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` LIMIT 1"). + mock.ExpectQuery("SELECT 1 FROM `test_db`.`test_tbl` USE INDEX\\(\\) LIMIT 1"). WillReturnError(errors.New("some dummy error")) _, err = targetGetter.IsTableEmpty(ctx, "test_db", "test_tbl") require.Error(t, err) diff --git a/br/pkg/lightning/restore/mock/mock.go b/br/pkg/lightning/restore/mock/mock.go index f43e6c022673e..5556e1caf3363 100644 --- a/br/pkg/lightning/restore/mock/mock.go +++ b/br/pkg/lightning/restore/mock/mock.go @@ -77,14 +77,19 @@ func NewMockImportSource(dbSrcDataMap map[string]*MockDBSourceData) (*MockImport tblMeta := mydump.NewMDTableMeta("binary") tblMeta.DB = dbName tblMeta.Name = tblName + compression := mydump.CompressionNone + if strings.HasSuffix(tblData.SchemaFile.FileName, ".gz") { + compression = mydump.CompressionGZ + } tblMeta.SchemaFile = mydump.FileInfo{ TableName: filter.Table{ Schema: dbName, Name: tblName, }, FileMeta: mydump.SourceFileMeta{ - Path: tblData.SchemaFile.FileName, - Type: mydump.SourceTypeTableSchema, + Path: tblData.SchemaFile.FileName, + Type: mydump.SourceTypeTableSchema, + Compression: compression, }, } tblMeta.DataFiles = []mydump.FileInfo{} @@ -108,12 +113,17 @@ func NewMockImportSource(dbSrcDataMap map[string]*MockDBSourceData) (*MockImport FileSize: int64(fileSize), }, } + fileName := tblDataFile.FileName + if strings.HasSuffix(fileName, ".gz") { + fileName = strings.TrimSuffix(tblDataFile.FileName, ".gz") + fileInfo.FileMeta.Compression = mydump.CompressionGZ + } switch { - case strings.HasSuffix(tblDataFile.FileName, ".csv"): + case strings.HasSuffix(fileName, ".csv"): fileInfo.FileMeta.Type = mydump.SourceTypeCSV - case strings.HasSuffix(tblDataFile.FileName, ".sql"): + case strings.HasSuffix(fileName, ".sql"): fileInfo.FileMeta.Type = mydump.SourceTypeSQL - case strings.HasSuffix(tblDataFile.FileName, ".parquet"): + case strings.HasSuffix(fileName, ".parquet"): fileInfo.FileMeta.Type = mydump.SourceTypeParquet default: return nil, errors.Errorf("unsupported file type: %s", tblDataFile.FileName) diff --git a/br/pkg/lightning/restore/precheck.go b/br/pkg/lightning/restore/precheck.go index 7dc578053492d..a76854556a165 100644 --- a/br/pkg/lightning/restore/precheck.go +++ b/br/pkg/lightning/restore/precheck.go @@ -25,6 +25,7 @@ const ( CheckTargetClusterVersion CheckItemID = "CHECK_TARGET_CLUSTER_VERSION" CheckLocalDiskPlacement CheckItemID = "CHECK_LOCAL_DISK_PLACEMENT" CheckLocalTempKVDir CheckItemID = "CHECK_LOCAL_TEMP_KV_DIR" + CheckTargetUsingCDCPITR CheckItemID = "CHECK_TARGET_USING_CDC_PITR" ) type CheckResult struct { @@ -139,6 +140,8 @@ func (b *PrecheckItemBuilder) BuildPrecheckItem(checkID CheckItemID) (PrecheckIt return NewLocalDiskPlacementCheckItem(b.cfg), nil case CheckLocalTempKVDir: return NewLocalTempKVDirCheckItem(b.cfg, b.preInfoGetter), nil + case CheckTargetUsingCDCPITR: + return NewCDCPITRCheckItem(b.cfg), nil default: return nil, errors.Errorf("unsupported check item: %v", checkID) } diff --git a/br/pkg/lightning/restore/precheck_impl.go b/br/pkg/lightning/restore/precheck_impl.go index 64e15d5aa828a..b3c3c2fc00f25 100644 --- a/br/pkg/lightning/restore/precheck_impl.go +++ b/br/pkg/lightning/restore/precheck_impl.go @@ -14,6 +14,7 @@ package restore import ( + "bytes" "context" "fmt" "path/filepath" @@ -21,6 +22,7 @@ import ( "strconv" "strings" "sync" + "time" "github.com/docker/go-units" "github.com/pingcap/errors" @@ -32,6 +34,7 @@ import ( "github.com/pingcap/tidb/br/pkg/lightning/log" "github.com/pingcap/tidb/br/pkg/lightning/mydump" "github.com/pingcap/tidb/br/pkg/storage" + "github.com/pingcap/tidb/br/pkg/streamhelper" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/store/pdtypes" @@ -40,9 +43,12 @@ import ( "github.com/pingcap/tidb/util/engine" "github.com/pingcap/tidb/util/mathutil" "github.com/pingcap/tidb/util/set" + clientv3 "go.etcd.io/etcd/client/v3" "go.uber.org/zap" "golang.org/x/exp/slices" "golang.org/x/sync/errgroup" + "google.golang.org/grpc" + "google.golang.org/grpc/keepalive" ) type clusterResourceCheckItem struct { @@ -672,6 +678,154 @@ func (ci *checkpointCheckItem) checkpointIsValid(ctx context.Context, tableInfo return msgs, nil } +// CDCPITRCheckItem check downstream has enabled CDC or PiTR. It's exposed to let +// caller override the Instruction message. +type CDCPITRCheckItem struct { + cfg *config.Config + Instruction string + // used in test + etcdCli *clientv3.Client +} + +// NewCDCPITRCheckItem creates a checker to check downstream has enabled CDC or PiTR. +func NewCDCPITRCheckItem(cfg *config.Config) PrecheckItem { + return &CDCPITRCheckItem{ + cfg: cfg, + Instruction: "local backend is not compatible with them. Please switch to tidb backend then try again.", + } +} + +// GetCheckItemID implements PrecheckItem interface. +func (ci *CDCPITRCheckItem) GetCheckItemID() CheckItemID { + return CheckTargetUsingCDCPITR +} + +func dialEtcdWithCfg(ctx context.Context, cfg *config.Config) (*clientv3.Client, error) { + cfg2, err := cfg.ToTLS() + if err != nil { + return nil, err + } + tlsConfig := cfg2.TLSConfig() + + return clientv3.New(clientv3.Config{ + TLS: tlsConfig, + Endpoints: []string{cfg.TiDB.PdAddr}, + AutoSyncInterval: 30 * time.Second, + DialTimeout: 5 * time.Second, + DialOptions: []grpc.DialOption{ + grpc.WithKeepaliveParams(keepalive.ClientParameters{ + Time: 10 * time.Second, + Timeout: 3 * time.Second, + PermitWithoutStream: false, + }), + grpc.WithBlock(), + grpc.WithReturnConnectionError(), + }, + Context: ctx, + }) +} + +// Check implements PrecheckItem interface. +func (ci *CDCPITRCheckItem) Check(ctx context.Context) (*CheckResult, error) { + theResult := &CheckResult{ + Item: ci.GetCheckItemID(), + Severity: Critical, + } + + if ci.cfg.TikvImporter.Backend != config.BackendLocal { + theResult.Passed = true + theResult.Message = "TiDB Lightning is not using local backend, skip this check" + return theResult, nil + } + + if ci.etcdCli == nil { + var err error + ci.etcdCli, err = dialEtcdWithCfg(ctx, ci.cfg) + if err != nil { + return nil, errors.Trace(err) + } + //nolint: errcheck + defer ci.etcdCli.Close() + } + + errorMsg := make([]string, 0, 2) + + pitrCli := streamhelper.NewMetaDataClient(ci.etcdCli) + tasks, err := pitrCli.GetAllTasks(ctx) + if err != nil { + return nil, errors.Trace(err) + } + if len(tasks) > 0 { + names := make([]string, 0, len(tasks)) + for _, task := range tasks { + names = append(names, task.Info.GetName()) + } + errorMsg = append(errorMsg, fmt.Sprintf("found PiTR log streaming task(s): %v,", names)) + } + + // check etcd KV of CDC >= v6.2 + cdcPrefix := "/tidb/cdc/" + capturePath := []byte("/__cdc_meta__/capture/") + nameSet := make(map[string][]string, 1) + resp, err := ci.etcdCli.Get(ctx, cdcPrefix, clientv3.WithPrefix(), clientv3.WithKeysOnly()) + if err != nil { + return nil, errors.Trace(err) + } + for _, kv := range resp.Kvs { + // example: /tidb/cdc//__cdc_meta__/capture/ + k := kv.Key[len(cdcPrefix):] + clusterID, captureID, found := bytes.Cut(k, capturePath) + if found { + nameSet[string(clusterID)] = append(nameSet[string(clusterID)], string(captureID)) + } + } + if len(nameSet) == 0 { + // check etcd KV of CDC <= v6.1 + cdcPrefixV61 := "/tidb/cdc/capture/" + resp, err = ci.etcdCli.Get(ctx, cdcPrefixV61, clientv3.WithPrefix(), clientv3.WithKeysOnly()) + if err != nil { + return nil, errors.Trace(err) + } + for _, kv := range resp.Kvs { + // example: /tidb/cdc/capture/ + k := kv.Key[len(cdcPrefixV61):] + if len(k) == 0 { + continue + } + nameSet[""] = append(nameSet[""], string(k)) + } + } + + if len(nameSet) > 0 { + var captureMsgBuf strings.Builder + captureMsgBuf.WriteString("found CDC capture(s): ") + isFirst := true + for clusterID, captureIDs := range nameSet { + if !isFirst { + captureMsgBuf.WriteString(", ") + } + isFirst = false + captureMsgBuf.WriteString("clusterID: ") + captureMsgBuf.WriteString(clusterID) + captureMsgBuf.WriteString(" captureID(s): ") + captureMsgBuf.WriteString(fmt.Sprintf("%v", captureIDs)) + } + captureMsgBuf.WriteString(",") + errorMsg = append(errorMsg, captureMsgBuf.String()) + } + + if len(errorMsg) > 0 { + errorMsg = append(errorMsg, ci.Instruction) + theResult.Passed = false + theResult.Message = strings.Join(errorMsg, "\n") + } else { + theResult.Passed = true + theResult.Message = "no CDC or PiTR task found" + } + + return theResult, nil +} + type schemaCheckItem struct { cfg *config.Config preInfoGetter PreRestoreInfoGetter diff --git a/br/pkg/lightning/restore/precheck_impl_test.go b/br/pkg/lightning/restore/precheck_impl_test.go index 88f3cf8f9a30b..2811937a71c82 100644 --- a/br/pkg/lightning/restore/precheck_impl_test.go +++ b/br/pkg/lightning/restore/precheck_impl_test.go @@ -24,7 +24,11 @@ import ( "github.com/pingcap/tidb/br/pkg/lightning/log" "github.com/pingcap/tidb/br/pkg/lightning/restore/mock" ropts "github.com/pingcap/tidb/br/pkg/lightning/restore/opts" + "github.com/pingcap/tidb/br/pkg/storage" + "github.com/pingcap/tidb/br/pkg/streamhelper" "github.com/stretchr/testify/suite" + clientv3 "go.etcd.io/etcd/client/v3" + "go.etcd.io/etcd/tests/v3/integration" ) type precheckImplSuite struct { @@ -581,3 +585,86 @@ func (s *precheckImplSuite) TestTableEmptyCheckBasic() { s.T().Logf("check result message: %s", result.Message) s.Require().False(result.Passed) } + +func (s *precheckImplSuite) TestCDCPITRCheckItem() { + integration.BeforeTestExternal(s.T()) + testEtcdCluster := integration.NewClusterV3(s.T(), &integration.ClusterConfig{Size: 1}) + defer testEtcdCluster.Terminate(s.T()) + + ctx := context.Background() + cfg := &config.Config{ + TikvImporter: config.TikvImporter{ + Backend: config.BackendLocal, + }, + } + ci := NewCDCPITRCheckItem(cfg) + checker := ci.(*CDCPITRCheckItem) + checker.etcdCli = testEtcdCluster.RandClient() + result, err := ci.Check(ctx) + s.Require().NoError(err) + s.Require().NotNil(result) + s.Require().Equal(ci.GetCheckItemID(), result.Item) + s.Require().Equal(Critical, result.Severity) + s.Require().True(result.Passed) + s.Require().Equal("no CDC or PiTR task found", result.Message) + + cli := testEtcdCluster.RandClient() + brCli := streamhelper.NewMetaDataClient(cli) + backend, _ := storage.ParseBackend("noop://", nil) + taskInfo, err := streamhelper.NewTaskInfo("br_name"). + FromTS(1). + UntilTS(1000). + WithTableFilter("*.*", "!mysql"). + ToStorage(backend). + Check() + s.Require().NoError(err) + err = brCli.PutTask(ctx, *taskInfo) + s.Require().NoError(err) + checkEtcdPut := func(key string) { + _, err := cli.Put(ctx, key, "") + s.Require().NoError(err) + } + // TiCDC >= v6.2 + checkEtcdPut("/tidb/cdc/default/__cdc_meta__/capture/3ecd5c98-0148-4086-adfd-17641995e71f") + checkEtcdPut("/tidb/cdc/default/__cdc_meta__/meta/meta-version") + checkEtcdPut("/tidb/cdc/default/__cdc_meta__/meta/ticdc-delete-etcd-key-count") + checkEtcdPut("/tidb/cdc/default/__cdc_meta__/owner/22318498f4dd6639") + checkEtcdPut("/tidb/cdc/default/default/changefeed/info/test") + checkEtcdPut("/tidb/cdc/default/default/changefeed/info/test-1") + checkEtcdPut("/tidb/cdc/default/default/changefeed/status/test") + checkEtcdPut("/tidb/cdc/default/default/changefeed/status/test-1") + checkEtcdPut("/tidb/cdc/default/default/task/position/3ecd5c98-0148-4086-adfd-17641995e71f/test-1") + checkEtcdPut("/tidb/cdc/default/default/upstream/7168358383033671922") + + result, err = ci.Check(ctx) + s.Require().NoError(err) + s.Require().False(result.Passed) + s.Require().Equal("found PiTR log streaming task(s): [br_name],\n"+ + "found CDC capture(s): clusterID: default captureID(s): [3ecd5c98-0148-4086-adfd-17641995e71f],\n"+ + "local backend is not compatible with them. Please switch to tidb backend then try again.", + result.Message) + + _, err = cli.Delete(ctx, "/tidb/cdc/", clientv3.WithPrefix()) + s.Require().NoError(err) + + // TiCDC <= v6.1 + checkEtcdPut("/tidb/cdc/capture/f14cb04d-5ba1-410e-a59b-ccd796920e9d") + checkEtcdPut("/tidb/cdc/changefeed/info/test") + checkEtcdPut("/tidb/cdc/job/test") + checkEtcdPut("/tidb/cdc/owner/223184ad80a88b0b") + checkEtcdPut("/tidb/cdc/task/position/f14cb04d-5ba1-410e-a59b-ccd796920e9d/test") + + result, err = ci.Check(ctx) + s.Require().NoError(err) + s.Require().False(result.Passed) + s.Require().Equal("found PiTR log streaming task(s): [br_name],\n"+ + "found CDC capture(s): clusterID: captureID(s): [f14cb04d-5ba1-410e-a59b-ccd796920e9d],\n"+ + "local backend is not compatible with them. Please switch to tidb backend then try again.", + result.Message) + + checker.cfg.TikvImporter.Backend = config.BackendTiDB + result, err = ci.Check(ctx) + s.Require().NoError(err) + s.Require().True(result.Passed) + s.Require().Equal("TiDB Lightning is not using local backend, skip this check", result.Message) +} diff --git a/br/pkg/lightning/restore/restore.go b/br/pkg/lightning/restore/restore.go index 0a0e05b45ac5d..329ef29c98667 100644 --- a/br/pkg/lightning/restore/restore.go +++ b/br/pkg/lightning/restore/restore.go @@ -227,12 +227,21 @@ type Controller struct { diskQuotaState atomic.Int32 compactState atomic.Int32 status *LightningStatus + dupIndicator *atomic.Bool preInfoGetter PreRestoreInfoGetter precheckItemBuilder *PrecheckItemBuilder } +// LightningStatus provides the finished bytes and total bytes of the current task. +// It should keep the value after restart from checkpoint. +// When it is tidb backend, FinishedFileSize can be counted after chunk data is +// restored to tidb. When it is local backend it's counted after whole engine is +// imported. +// TotalFileSize may be an estimated value, so when the task is finished, it may +// not equal to FinishedFileSize. type LightningStatus struct { + backend string FinishedFileSize atomic.Int64 TotalFileSize atomic.Int64 } @@ -255,6 +264,8 @@ type ControllerParam struct { CheckpointStorage storage.ExternalStorage // when CheckpointStorage is not nil, save file checkpoint to it with this name CheckpointName string + // DupIndicator can expose the duplicate detection result to the caller + DupIndicator *atomic.Bool } func NewRestoreController( @@ -353,6 +364,7 @@ func NewRestoreControllerWithPauser( default: return nil, common.ErrUnknownBackend.GenWithStackByArgs(cfg.TikvImporter.Backend) } + p.Status.backend = cfg.TikvImporter.Backend var metaBuilder metaMgrBuilder isSSTImport := cfg.TikvImporter.Backend == config.BackendLocal @@ -421,6 +433,7 @@ func NewRestoreControllerWithPauser( errorMgr: errorMgr, status: p.Status, taskMgr: nil, + dupIndicator: p.DupIndicator, preInfoGetter: preInfoGetter, precheckItemBuilder: preCheckBuilder, @@ -925,7 +938,7 @@ func (rc *Controller) estimateChunkCountIntoMetrics(ctx context.Context) error { if _, ok := fileChunks[c.Key.Path]; !ok { fileChunks[c.Key.Path] = 0.0 } - remainChunkCnt := float64(c.Chunk.EndOffset-c.Chunk.Offset) / float64(c.Chunk.EndOffset-c.Key.Offset) + remainChunkCnt := float64(c.UnfinishedSize()) / float64(c.TotalSize()) fileChunks[c.Key.Path] += remainChunkCnt } } @@ -1606,7 +1619,7 @@ func (rc *Controller) restoreTables(ctx context.Context) (finalErr error) { } else { for _, eng := range cp.Engines { for _, chunk := range eng.Chunks { - totalDataSizeToRestore += chunk.Chunk.EndOffset - chunk.Chunk.Offset + totalDataSizeToRestore += chunk.UnfinishedSize() } } } @@ -1832,7 +1845,7 @@ func (rc *Controller) fullCompact(ctx context.Context) error { // wait until any existing level-1 compact to complete first. task := log.FromContext(ctx).Begin(zap.InfoLevel, "wait for completion of existing level 1 compaction") - for !rc.compactState.CAS(compactStateIdle, compactStateDoing) { + for !rc.compactState.CompareAndSwap(compactStateIdle, compactStateDoing) { time.Sleep(100 * time.Millisecond) } task.End(zap.ErrorLevel, nil) @@ -1892,7 +1905,7 @@ func (rc *Controller) switchTiKVMode(ctx context.Context, mode sstpb.SwitchMode) } func (rc *Controller) enforceDiskQuota(ctx context.Context) { - if !rc.diskQuotaState.CAS(diskQuotaStateIdle, diskQuotaStateChecking) { + if !rc.diskQuotaState.CompareAndSwap(diskQuotaStateIdle, diskQuotaStateChecking) { // do not run multiple the disk quota check / import simultaneously. // (we execute the lock check in background to avoid blocking the cron thread) return @@ -2127,6 +2140,10 @@ func (rc *Controller) preCheckRequirements(ctx context.Context) error { return common.ErrCheckClusterRegion.Wrap(err).GenWithStackByArgs() } } + // even if checkpoint exists, we still need to make sure CDC/PiTR task is not running. + if err := rc.checkCDCPiTR(ctx); err != nil { + return common.ErrCheckCDCPiTR.Wrap(err).GenWithStackByArgs() + } } } @@ -2190,23 +2207,7 @@ func newChunkRestore( ) (*chunkRestore, error) { blockBufSize := int64(cfg.Mydumper.ReadBlockSize) - var ( - reader storage.ReadSeekCloser - compressType storage.CompressType - err error - ) - switch { - case chunk.FileMeta.Type == mydump.SourceTypeParquet: - reader, err = mydump.OpenParquetReader(ctx, store, chunk.FileMeta.Path, chunk.FileMeta.FileSize) - case chunk.FileMeta.Compression != mydump.CompressionNone: - compressType, err = mydump.ToStorageCompressType(chunk.FileMeta.Compression) - if err != nil { - break - } - reader, err = storage.WithCompression(store, compressType).Open(ctx, chunk.FileMeta.Path) - default: - reader, err = store.Open(ctx, chunk.FileMeta.Path) - } + reader, err := openReader(ctx, chunk.FileMeta, store) if err != nil { return nil, errors.Trace(err) } @@ -2298,6 +2299,8 @@ type deliveredKVs struct { columns []string offset int64 rowID int64 + + realOffset int64 // indicates file reader's current position, only used for compressed files } type deliverResult struct { @@ -2326,6 +2329,8 @@ func (cr *chunkRestore) deliverLoop( dataSynced := true hasMoreKVs := true + var startRealOffset, currRealOffset int64 // save to 0 at first + for hasMoreKVs { var dataChecksum, indexChecksum verify.KVChecksum var columns []string @@ -2334,6 +2339,8 @@ func (cr *chunkRestore) deliverLoop( // chunk checkpoint should stay the same startOffset := cr.chunk.Chunk.Offset currOffset := startOffset + startRealOffset = cr.chunk.Chunk.RealOffset + currRealOffset = startRealOffset rowID := cr.chunk.Chunk.PrevRowIDMax populate: @@ -2348,12 +2355,14 @@ func (cr *chunkRestore) deliverLoop( if p.kvs == nil { // This is the last message. currOffset = p.offset + currRealOffset = p.realOffset hasMoreKVs = false break populate } p.kvs.ClassifyAndAppend(&dataKVs, &dataChecksum, &indexKVs, &indexChecksum) columns = p.columns currOffset = p.offset + currRealOffset = p.realOffset rowID = p.rowID } case <-ctx.Done(): @@ -2420,6 +2429,7 @@ func (cr *chunkRestore) deliverLoop( cr.chunk.Checksum.Add(&dataChecksum) cr.chunk.Checksum.Add(&indexChecksum) cr.chunk.Chunk.Offset = currOffset + cr.chunk.Chunk.RealOffset = currRealOffset cr.chunk.Chunk.PrevRowIDMax = rowID if m, ok := metric.FromContext(ctx); ok { @@ -2427,11 +2437,21 @@ func (cr *chunkRestore) deliverLoop( // comes from chunk.Chunk.Offset. so it shouldn't happen that currOffset - startOffset < 0. // but we met it one time, but cannot reproduce it now, we add this check to make code more robust // TODO: reproduce and find the root cause and fix it completely - if currOffset >= startOffset { - m.BytesCounter.WithLabelValues(metric.BytesStateRestored).Add(float64(currOffset - startOffset)) + var lowOffset, highOffset int64 + if cr.chunk.FileMeta.Compression != mydump.CompressionNone { + lowOffset, highOffset = startRealOffset, currRealOffset } else { - deliverLogger.Warn("offset go back", zap.Int64("curr", currOffset), - zap.Int64("start", startOffset)) + lowOffset, highOffset = startOffset, currOffset + } + delta := highOffset - lowOffset + if delta >= 0 { + m.BytesCounter.WithLabelValues(metric.BytesStateRestored).Add(float64(delta)) + if rc.status != nil && rc.status.backend == config.BackendTiDB { + rc.status.FinishedFileSize.Add(delta) + } + } else { + deliverLogger.Warn("offset go back", zap.Int64("curr", highOffset), + zap.Int64("start", lowOffset)) } } @@ -2441,6 +2461,11 @@ func (cr *chunkRestore) deliverLoop( } failpoint.Inject("SlowDownWriteRows", func() { deliverLogger.Warn("Slowed down write rows") + finished := rc.status.FinishedFileSize.Load() + total := rc.status.TotalFileSize.Load() + deliverLogger.Warn("PrintStatus Failpoint", + zap.Int64("finished", finished), + zap.Int64("total", total)) }) failpoint.Inject("FailAfterWriteRows", nil) // TODO: for local backend, we may save checkpoint more frequently, e.g. after written @@ -2607,14 +2632,22 @@ func (cr *chunkRestore) encodeLoop( canDeliver := false kvPacket := make([]deliveredKVs, 0, maxKvPairsCnt) curOffset := offset - var newOffset, rowID int64 + var newOffset, rowID, realOffset int64 var kvSize uint64 + var realOffsetErr error outLoop: for !canDeliver { readDurStart := time.Now() err = cr.parser.ReadRow() columnNames := cr.parser.Columns() newOffset, rowID = cr.parser.Pos() + if cr.chunk.FileMeta.Compression != mydump.CompressionNone { + realOffset, realOffsetErr = cr.parser.RealPos() + if realOffsetErr != nil { + logger.Warn("fail to get data engine RealPos, progress may not be accurate", + log.ShortError(realOffsetErr), zap.String("file", cr.chunk.FileMeta.Path)) + } + } switch errors.Cause(err) { case nil: @@ -2676,7 +2709,8 @@ func (cr *chunkRestore) encodeLoop( continue } - kvPacket = append(kvPacket, deliveredKVs{kvs: kvs, columns: filteredColumns, offset: newOffset, rowID: rowID}) + kvPacket = append(kvPacket, deliveredKVs{kvs: kvs, columns: filteredColumns, offset: newOffset, + rowID: rowID, realOffset: realOffset}) kvSize += kvs.Size() failpoint.Inject("mock-kv-size", func(val failpoint.Value) { kvSize += uint64(val.(int)) @@ -2708,7 +2742,7 @@ func (cr *chunkRestore) encodeLoop( } } - err = send([]deliveredKVs{{offset: cr.chunk.Chunk.EndOffset}}) + err = send([]deliveredKVs{{offset: cr.chunk.Chunk.EndOffset, realOffset: cr.chunk.FileMeta.FileSize}}) return } @@ -2771,3 +2805,20 @@ func (cr *chunkRestore) restore( } return errors.Trace(firstErr(encodeErr, deliverErr)) } + +func openReader(ctx context.Context, fileMeta mydump.SourceFileMeta, store storage.ExternalStorage) ( + reader storage.ReadSeekCloser, err error) { + switch { + case fileMeta.Type == mydump.SourceTypeParquet: + reader, err = mydump.OpenParquetReader(ctx, store, fileMeta.Path, fileMeta.FileSize) + case fileMeta.Compression != mydump.CompressionNone: + compressType, err2 := mydump.ToStorageCompressType(fileMeta.Compression) + if err2 != nil { + return nil, err2 + } + reader, err = storage.WithCompression(store, compressType).Open(ctx, fileMeta.Path) + default: + reader, err = store.Open(ctx, fileMeta.Path) + } + return +} diff --git a/br/pkg/lightning/restore/table_restore.go b/br/pkg/lightning/restore/table_restore.go index 11038d62195ea..86d3ed2622ddc 100644 --- a/br/pkg/lightning/restore/table_restore.go +++ b/br/pkg/lightning/restore/table_restore.go @@ -235,10 +235,12 @@ func (tr *TableRestore) restoreEngines(pCtx context.Context, rc *Controller, cp // data-engines that need to be restore or import. Otherwise, all data-engines should // be finished already. + handleDataEngineThisRun := false idxEngineCfg := &backend.EngineConfig{ TableInfo: tr.tableInfo, } if indexEngineCp.Status < checkpoints.CheckpointStatusClosed { + handleDataEngineThisRun = true indexWorker := rc.indexWorkers.Apply() defer rc.indexWorkers.Recycle(indexWorker) @@ -327,9 +329,9 @@ func (tr *TableRestore) restoreEngines(pCtx context.Context, rc *Controller, cp dataWorker := rc.closedEngineLimit.Apply() defer rc.closedEngineLimit.Recycle(dataWorker) err = tr.importEngine(ctx, dataClosedEngine, rc, eid, ecp) - if rc.status != nil { + if rc.status != nil && rc.status.backend == config.BackendLocal { for _, chunk := range ecp.Chunks { - rc.status.FinishedFileSize.Add(chunk.Chunk.EndOffset - chunk.Key.Offset) + rc.status.FinishedFileSize.Add(chunk.TotalSize()) } } } @@ -339,7 +341,7 @@ func (tr *TableRestore) restoreEngines(pCtx context.Context, rc *Controller, cp }(restoreWorker, engineID, engine) } else { for _, chunk := range engine.Chunks { - rc.status.FinishedFileSize.Add(chunk.Chunk.EndOffset - chunk.Key.Offset) + rc.status.FinishedFileSize.Add(chunk.TotalSize()) } } } @@ -370,11 +372,31 @@ func (tr *TableRestore) restoreEngines(pCtx context.Context, rc *Controller, cp return errors.Trace(restoreErr) } + // if data engine is handled in previous run and we continue importing from checkpoint + if !handleDataEngineThisRun { + for _, engine := range cp.Engines { + for _, chunk := range engine.Chunks { + rc.status.FinishedFileSize.Add(chunk.Chunk.EndOffset - chunk.Key.Offset) + } + } + } + if cp.Status < checkpoints.CheckpointStatusIndexImported { var err error if indexEngineCp.Status < checkpoints.CheckpointStatusImported { + failpoint.Inject("FailBeforeStartImportingIndexEngine", func() { + errMsg := "fail before importing index KV data" + tr.logger.Warn(errMsg) + failpoint.Return(errors.New(errMsg)) + }) err = tr.importKV(ctx, closedIndexEngine, rc, indexEngineID) failpoint.Inject("FailBeforeIndexEngineImported", func() { + finished := rc.status.FinishedFileSize.Load() + total := rc.status.TotalFileSize.Load() + tr.logger.Warn("print lightning status", + zap.Int64("finished", finished), + zap.Int64("total", total), + zap.Bool("equal", finished == total)) panic("forcing failure due to FailBeforeIndexEngineImported") }) } @@ -406,6 +428,11 @@ func (tr *TableRestore) restoreEngine( if err != nil { return closedEngine, errors.Trace(err) } + if rc.status != nil && rc.status.backend == config.BackendTiDB { + for _, chunk := range cp.Chunks { + rc.status.FinishedFileSize.Add(chunk.Chunk.EndOffset - chunk.Key.Offset) + } + } return closedEngine, nil } @@ -475,6 +502,9 @@ func (tr *TableRestore) restoreEngine( // Restore table data for chunkIndex, chunk := range cp.Chunks { + if rc.status != nil && rc.status.backend == config.BackendTiDB { + rc.status.FinishedFileSize.Add(chunk.Chunk.Offset - chunk.Key.Offset) + } if chunk.Chunk.Offset >= chunk.Chunk.EndOffset { continue } @@ -516,7 +546,7 @@ func (tr *TableRestore) restoreEngine( } var remainChunkCnt float64 if chunk.Chunk.Offset < chunk.Chunk.EndOffset { - remainChunkCnt = float64(chunk.Chunk.EndOffset-chunk.Chunk.Offset) / float64(chunk.Chunk.EndOffset-chunk.Key.Offset) + remainChunkCnt = float64(chunk.UnfinishedSize()) / float64(chunk.TotalSize()) if metrics != nil { metrics.ChunkCounter.WithLabelValues(metric.ChunkStatePending).Add(remainChunkCnt) } @@ -591,7 +621,7 @@ func (tr *TableRestore) restoreEngine( totalSQLSize := int64(0) for _, chunk := range cp.Chunks { totalKVSize += chunk.Checksum.SumSize() - totalSQLSize += chunk.Chunk.EndOffset - chunk.Chunk.Offset + totalSQLSize += chunk.UnfinishedSize() } err = chunkErr.Get() @@ -675,7 +705,7 @@ func (tr *TableRestore) importEngine( } // 2. perform a level-1 compact if idling. - if rc.cfg.PostRestore.Level1Compact && rc.compactState.CAS(compactStateIdle, compactStateDoing) { + if rc.cfg.PostRestore.Level1Compact && rc.compactState.CompareAndSwap(compactStateIdle, compactStateDoing) { go func() { // we ignore level-1 compact failure since it is not fatal. // no need log the error, it is done in (*Importer).Compact already. @@ -788,6 +818,11 @@ func (tr *TableRestore) postProcess( } } + if rc.dupIndicator != nil { + tr.logger.Debug("set dupIndicator", zap.Bool("has-duplicate", hasDupe)) + rc.dupIndicator.CompareAndSwap(false, hasDupe) + } + nextStage := checkpoints.CheckpointStatusChecksummed if rc.cfg.PostRestore.Checksum != config.OpLevelOff && !hasDupe && needChecksum { if cp.Checksum.SumKVS() > 0 || baseTotalChecksum.SumKVS() > 0 { diff --git a/br/pkg/lightning/run_options.go b/br/pkg/lightning/run_options.go index a7b5b90770c02..169c2e47088dd 100644 --- a/br/pkg/lightning/run_options.go +++ b/br/pkg/lightning/run_options.go @@ -19,6 +19,7 @@ import ( "github.com/pingcap/tidb/br/pkg/lightning/log" "github.com/pingcap/tidb/br/pkg/storage" "github.com/pingcap/tidb/util/promutil" + "go.uber.org/atomic" "go.uber.org/zap" ) @@ -30,6 +31,7 @@ type options struct { promFactory promutil.Factory promRegistry promutil.Registry logger log.Logger + dupIndicator *atomic.Bool } type Option func(*options) @@ -81,3 +83,10 @@ func WithLogger(logger *zap.Logger) Option { o.logger = log.Logger{Logger: logger} } } + +// WithDupIndicator sets a *bool to indicate duplicate detection has found duplicate data. +func WithDupIndicator(b *atomic.Bool) Option { + return func(o *options) { + o.dupIndicator = b + } +} diff --git a/br/pkg/lightning/web/progress.go b/br/pkg/lightning/web/progress.go index 8a3412087b94f..d5f3494a14040 100644 --- a/br/pkg/lightning/web/progress.go +++ b/br/pkg/lightning/web/progress.go @@ -64,7 +64,7 @@ func (cpm *checkpointsMap) update(diffs map[string]*checkpoints.TableCheckpointD for _, engine := range cp.Engines { for _, chunk := range engine.Chunks { if engine.Status >= checkpoints.CheckpointStatusAllWritten { - tw += chunk.Chunk.EndOffset - chunk.Key.Offset + tw += chunk.TotalSize() } else { tw += chunk.Chunk.Offset - chunk.Key.Offset } diff --git a/br/pkg/logutil/logging.go b/br/pkg/logutil/logging.go index 028cfc00e5f43..41b8e135c220f 100644 --- a/br/pkg/logutil/logging.go +++ b/br/pkg/logutil/logging.go @@ -306,3 +306,13 @@ func (rng StringifyRange) String() string { sb.WriteString(")") return sb.String() } + +// StringifyMany returns an array marshaler for a slice of stringers. +func StringifyMany[T fmt.Stringer](items []T) zapcore.ArrayMarshaler { + return zapcore.ArrayMarshalerFunc(func(ae zapcore.ArrayEncoder) error { + for _, item := range items { + ae.AppendString(item.String()) + } + return nil + }) +} diff --git a/br/pkg/restore/BUILD.bazel b/br/pkg/restore/BUILD.bazel index 2c42717bafe36..772ec438976d7 100644 --- a/br/pkg/restore/BUILD.bazel +++ b/br/pkg/restore/BUILD.bazel @@ -43,6 +43,7 @@ go_library( "//br/pkg/summary", "//br/pkg/utils", "//br/pkg/utils/iter", + "//br/pkg/version", "//config", "//ddl", "//ddl/util", @@ -57,6 +58,7 @@ go_library( "//tablecodec", "//util", "//util/codec", + "//util/collate", "//util/hack", "//util/mathutil", "//util/table-filter", @@ -118,7 +120,7 @@ go_test( embed = [":restore"], flaky = True, race = "on", - shard_count = 20, + shard_count = 50, deps = [ "//br/pkg/backup", "//br/pkg/conn", diff --git a/br/pkg/restore/client.go b/br/pkg/restore/client.go index 81215e675c8c0..9e4e5a389b935 100644 --- a/br/pkg/restore/client.go +++ b/br/pkg/restore/client.go @@ -39,6 +39,7 @@ import ( "github.com/pingcap/tidb/br/pkg/stream" "github.com/pingcap/tidb/br/pkg/summary" "github.com/pingcap/tidb/br/pkg/utils" + "github.com/pingcap/tidb/br/pkg/version" "github.com/pingcap/tidb/config" ddlutil "github.com/pingcap/tidb/ddl/util" "github.com/pingcap/tidb/domain" @@ -50,6 +51,7 @@ import ( "github.com/pingcap/tidb/store/pdtypes" "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/util/codec" + "github.com/pingcap/tidb/util/collate" "github.com/pingcap/tidb/util/mathutil" filter "github.com/pingcap/tidb/util/table-filter" "github.com/tikv/client-go/v2/oracle" @@ -446,7 +448,7 @@ func (rc *Client) GetFilesInRawRange(startKey []byte, endKey []byte, cf string) // SetConcurrency sets the concurrency of dbs tables files. func (rc *Client) SetConcurrency(c uint) { - log.Debug("new worker pool", zap.Uint("currency-count", c)) + log.Info("new worker pool", zap.Uint("currency-count", c)) rc.workerPool = utils.NewWorkerPool(c, "file") } @@ -938,7 +940,9 @@ func (rc *Client) CheckSysTableCompatibility(dom *domain.Domain, tables []*metau return errors.Annotate(berrors.ErrRestoreIncompatibleSys, "missed system table: "+table.Info.Name.O) } backupTi := table.Info - if len(ti.Columns) != len(backupTi.Columns) { + // skip checking the number of columns in mysql.user table, + // because higher versions of TiDB may add new columns. + if len(ti.Columns) != len(backupTi.Columns) && backupTi.Name.L != sysUserTableName { log.Error("column count mismatch", zap.Stringer("table", table.Info.Name), zap.Int("col in cluster", len(ti.Columns)), @@ -957,6 +961,13 @@ func (rc *Client) CheckSysTableCompatibility(dom *domain.Domain, tables []*metau col := ti.Columns[i] backupCol := backupColMap[col.Name.L] if backupCol == nil { + // skip when the backed up mysql.user table is missing columns. + if backupTi.Name.L == sysUserTableName { + log.Warn("missing column in backup data", + zap.Stringer("table", table.Info.Name), + zap.String("col", fmt.Sprintf("%s %s", col.Name, col.FieldType.String()))) + continue + } log.Error("missing column in backup data", zap.Stringer("table", table.Info.Name), zap.String("col", fmt.Sprintf("%s %s", col.Name, col.FieldType.String()))) @@ -1427,7 +1438,7 @@ func (rc *Client) updateMetaAndLoadStats(ctx context.Context, input <-chan *Crea } // Not need to return err when failed because of update analysis-meta - restoreTS, err := rc.GetTS(ctx) + restoreTS, err := rc.GetTSWithRetry(ctx) if err != nil { log.Error("getTS failed", zap.Error(err)) } else { @@ -1807,19 +1818,179 @@ func (rc *Client) FixIndicesOfTable(ctx context.Context, schema string, table *m return nil } +type FilesInRegion struct { + defaultSize uint64 + defaultKVCount int64 + writeSize uint64 + writeKVCount int64 + + defaultFiles []*backuppb.DataFileInfo + writeFiles []*backuppb.DataFileInfo + deleteFiles []*backuppb.DataFileInfo +} + +type FilesInTable struct { + regionMapFiles map[int64]*FilesInRegion +} + +func ApplyKVFilesWithBatchMethod( + ctx context.Context, + iter LogIter, + batchCount int, + batchSize uint64, + applyFunc func(files []*backuppb.DataFileInfo, kvCount int64, size uint64), +) error { + var ( + tableMapFiles = make(map[int64]*FilesInTable) + tmpFiles = make([]*backuppb.DataFileInfo, 0, batchCount) + tmpSize uint64 = 0 + tmpKVCount int64 = 0 + ) + for r := iter.TryNext(ctx); !r.Finished; r = iter.TryNext(ctx) { + if r.Err != nil { + return r.Err + } + + f := r.Item + if f.GetType() == backuppb.FileType_Put && f.GetLength() >= batchSize { + applyFunc([]*backuppb.DataFileInfo{f}, f.GetNumberOfEntries(), f.GetLength()) + continue + } + + fit, exist := tableMapFiles[f.TableId] + if !exist { + fit = &FilesInTable{ + regionMapFiles: make(map[int64]*FilesInRegion), + } + tableMapFiles[f.TableId] = fit + } + fs, exist := fit.regionMapFiles[f.RegionId] + if !exist { + fs = &FilesInRegion{} + fit.regionMapFiles[f.RegionId] = fs + } + + if f.GetType() == backuppb.FileType_Delete { + if fs.defaultFiles == nil { + fs.deleteFiles = make([]*backuppb.DataFileInfo, 0) + } + fs.deleteFiles = append(fs.deleteFiles, f) + } else { + if f.GetCf() == stream.DefaultCF { + if fs.defaultFiles == nil { + fs.defaultFiles = make([]*backuppb.DataFileInfo, 0, batchCount) + } + fs.defaultFiles = append(fs.defaultFiles, f) + fs.defaultSize += f.Length + fs.defaultKVCount += f.GetNumberOfEntries() + if len(fs.defaultFiles) >= batchCount || fs.defaultSize >= batchSize { + applyFunc(fs.defaultFiles, fs.defaultKVCount, fs.defaultSize) + fs.defaultFiles = nil + fs.defaultSize = 0 + fs.defaultKVCount = 0 + } + } else { + if fs.writeFiles == nil { + fs.writeFiles = make([]*backuppb.DataFileInfo, 0, batchCount) + } + fs.writeFiles = append(fs.writeFiles, f) + fs.writeSize += f.GetLength() + fs.writeKVCount += f.GetNumberOfEntries() + if len(fs.writeFiles) >= batchCount || fs.writeSize >= batchSize { + applyFunc(fs.writeFiles, fs.writeKVCount, fs.writeSize) + fs.writeFiles = nil + fs.writeSize = 0 + fs.writeKVCount = 0 + } + } + } + } + + for _, fwt := range tableMapFiles { + for _, fs := range fwt.regionMapFiles { + if len(fs.defaultFiles) > 0 { + applyFunc(fs.defaultFiles, fs.defaultKVCount, fs.defaultSize) + } + if len(fs.writeFiles) > 0 { + applyFunc(fs.writeFiles, fs.writeKVCount, fs.writeSize) + } + } + } + + for _, fwt := range tableMapFiles { + for _, fs := range fwt.regionMapFiles { + for _, d := range fs.deleteFiles { + tmpFiles = append(tmpFiles, d) + tmpSize += d.GetLength() + tmpKVCount += d.GetNumberOfEntries() + + if len(tmpFiles) >= batchCount || tmpSize >= batchSize { + applyFunc(tmpFiles, tmpKVCount, tmpSize) + tmpFiles = make([]*backuppb.DataFileInfo, 0, batchCount) + tmpSize = 0 + tmpKVCount = 0 + } + } + if len(tmpFiles) > 0 { + applyFunc(tmpFiles, tmpKVCount, tmpSize) + tmpFiles = make([]*backuppb.DataFileInfo, 0, batchCount) + tmpSize = 0 + tmpKVCount = 0 + } + } + } + + return nil +} + +func ApplyKVFilesWithSingelMethod( + ctx context.Context, + files LogIter, + applyFunc func(file []*backuppb.DataFileInfo, kvCount int64, size uint64), +) error { + deleteKVFiles := make([]*backuppb.DataFileInfo, 0) + + for r := files.TryNext(ctx); !r.Finished; r = files.TryNext(ctx) { + if r.Err != nil { + return r.Err + } + + f := r.Item + if f.GetType() == backuppb.FileType_Delete { + deleteKVFiles = append(deleteKVFiles, f) + continue + } + applyFunc([]*backuppb.DataFileInfo{f}, f.GetNumberOfEntries(), f.GetLength()) + } + + log.Info("restore delete files", zap.Int("count", len(deleteKVFiles))) + for _, file := range deleteKVFiles { + f := file + applyFunc([]*backuppb.DataFileInfo{f}, f.GetNumberOfEntries(), f.GetLength()) + } + + return nil +} + func (rc *Client) RestoreKVFiles( ctx context.Context, rules map[int64]*RewriteRules, - files LogIter, + iter LogIter, + pitrBatchCount uint32, + pitrBatchSize uint32, updateStats func(kvCount uint64, size uint64), - onProgress func(), + onProgress func(cnt int64), ) error { - var err error - fileCount := 0 - start := time.Now() + var ( + err error + fileCount = 0 + start = time.Now() + supportBatch = version.CheckPITRSupportBatchKVFiles() + skipFile = 0 + ) defer func() { - elapsed := time.Since(start) if err == nil { + elapsed := time.Since(start) log.Info("Restore KV files", zap.Duration("take", elapsed)) summary.CollectSuccessUnit("files", fileCount, elapsed) } @@ -1832,60 +2003,52 @@ func (rc *Client) RestoreKVFiles( } eg, ectx := errgroup.WithContext(ctx) - skipFile := 0 - deleteFiles := make([]*backuppb.DataFileInfo, 0) - - applyFunc := func(file *backuppb.DataFileInfo) { - // get rewrite rule from table id - rule, ok := rules[file.TableId] + applyFunc := func(files []*backuppb.DataFileInfo, kvCount int64, size uint64) { + if len(files) == 0 { + return + } + // get rewrite rule from table id. + // because the tableID of files is the same. + rule, ok := rules[files[0].TableId] if !ok { // TODO handle new created table // For this version we do not handle new created table after full backup. // in next version we will perform rewrite and restore meta key to restore new created tables. // so we can simply skip the file that doesn't have the rule here. - onProgress() - summary.CollectInt("FileSkip", 1) - log.Debug("skip file due to table id not matched", zap.String("file", file.Path), zap.Int64("tableId", file.TableId)) - skipFile++ + onProgress(int64(len(files))) + summary.CollectInt("FileSkip", len(files)) + log.Debug("skip file due to table id not matched", zap.Int64("table-id", files[0].TableId)) + skipFile += len(files) } else { rc.workerPool.ApplyOnErrorGroup(eg, func() error { fileStart := time.Now() defer func() { - onProgress() - updateStats(uint64(file.NumberOfEntries), file.Length) - summary.CollectInt("File", 1) - log.Info("import files done", zap.String("name", file.Path), zap.Duration("take", time.Since(fileStart))) + onProgress(int64(len(files))) + updateStats(uint64(kvCount), size) + summary.CollectInt("File", len(files)) + + filenames := make([]string, 0, len(files)) + for _, f := range files { + filenames = append(filenames, f.Path+", ") + } + log.Info("import files done", zap.Int("batch-count", len(files)), zap.Uint64("batch-size", size), + zap.Duration("take", time.Since(fileStart)), zap.Strings("files", filenames)) }() - startTS := rc.startTS - if file.Cf == stream.DefaultCF { - startTS = rc.shiftStartTS - } - return rc.fileImporter.ImportKVFiles(ectx, file, rule, startTS, rc.restoreTS) + + return rc.fileImporter.ImportKVFiles(ectx, files, rule, rc.shiftStartTS, rc.startTS, rc.restoreTS, supportBatch) }) } } - for r := files.TryNext(ctx); !r.Finished; r = files.TryNext(ctx) { - if r.Err != nil { - return err - } - file := r.Item - if file.Type == backuppb.FileType_Delete { - // collect delete type file and apply it later. - deleteFiles = append(deleteFiles, file) - continue - } - fileReplica := file - // applyFunc blocks once there aren't enough workers. - // this would help us don't load too many DML file info. - applyFunc(fileReplica) - } - if len(deleteFiles) > 0 { - log.Info("restore delete files", zap.Int("count", len(deleteFiles))) + + if supportBatch { + err = ApplyKVFilesWithBatchMethod(ctx, iter, int(pitrBatchCount), uint64(pitrBatchSize), applyFunc) + } else { + err = ApplyKVFilesWithSingelMethod(ctx, iter, applyFunc) } - for _, file := range deleteFiles { - fileReplica := file - applyFunc(fileReplica) + if err != nil { + return errors.Trace(err) } + log.Info("total skip files due to table id not matched", zap.Int("count", skipFile)) if skipFile > 0 { log.Debug("table id in full backup storage", zap.Any("tables", rules)) @@ -1893,13 +2056,9 @@ func (rc *Client) RestoreKVFiles( if err = eg.Wait(); err != nil { summary.CollectFailureUnit("file", err) - log.Error( - "restore files failed", - zap.Error(err), - ) - return errors.Trace(err) + log.Error("restore files failed", zap.Error(err)) } - return nil + return errors.Trace(err) } func (rc *Client) CleanUpKVFiles( @@ -2399,7 +2558,7 @@ func (rc *Client) RunGCRowsLoader(ctx context.Context) { func (rc *Client) InsertGCRows(ctx context.Context) error { close(rc.deleteRangeQueryCh) rc.deleteRangeQueryWaitGroup.Wait() - ts, err := rc.GetTS(ctx) + ts, err := rc.GetTSWithRetry(ctx) if err != nil { return errors.Trace(err) } @@ -2433,7 +2592,7 @@ func (rc *Client) SaveSchemas( schemas := TidyOldSchemas(sr) schemasConcurrency := uint(mathutil.Min(64, schemas.Len())) - err := schemas.BackupSchemas(ctx, metaWriter, nil, nil, rc.restoreTS, schemasConcurrency, 0, true, nil) + err := schemas.BackupSchemas(ctx, metaWriter, nil, nil, nil, rc.restoreTS, schemasConcurrency, 0, true, nil) if err != nil { return errors.Trace(err) } @@ -2495,3 +2654,47 @@ func TidyOldSchemas(sr *stream.SchemasReplace) *backup.Schemas { } return schemas } + +func CheckNewCollationEnable( + backupNewCollationEnable string, + g glue.Glue, + storage kv.Storage, + CheckRequirements bool, +) error { + if backupNewCollationEnable == "" { + if CheckRequirements { + return errors.Annotatef(berrors.ErrUnknown, + "the config 'new_collations_enabled_on_first_bootstrap' not found in backupmeta. "+ + "you can use \"show config WHERE name='new_collations_enabled_on_first_bootstrap';\" to manually check the config. "+ + "if you ensure the config 'new_collations_enabled_on_first_bootstrap' in backup cluster is as same as restore cluster, "+ + "use --check-requirements=false to skip this check") + } + log.Warn("the config 'new_collations_enabled_on_first_bootstrap' is not in backupmeta") + return nil + } + + se, err := g.CreateSession(storage) + if err != nil { + return errors.Trace(err) + } + + newCollationEnable, err := se.GetGlobalVariable(utils.GetTidbNewCollationEnabled()) + if err != nil { + return errors.Trace(err) + } + + if !strings.EqualFold(backupNewCollationEnable, newCollationEnable) { + return errors.Annotatef(berrors.ErrUnknown, + "the config 'new_collations_enabled_on_first_bootstrap' not match, upstream:%v, downstream: %v", + backupNewCollationEnable, newCollationEnable) + } + + // collate.newCollationEnabled is set to 1 when the collate package is initialized, + // so we need to modify this value according to the config of the cluster + // before using the collate package. + enabled := newCollationEnable == "True" + // modify collate.newCollationEnabled according to the config of the cluster + collate.SetNewCollationEnabledForTest(enabled) + log.Info("set new_collation_enabled", zap.Bool("new_collation_enabled", enabled)) + return nil +} diff --git a/br/pkg/restore/client_test.go b/br/pkg/restore/client_test.go index c43c3c80c2452..e1f12ddbf7a1d 100644 --- a/br/pkg/restore/client_test.go +++ b/br/pkg/restore/client_test.go @@ -25,6 +25,7 @@ import ( "github.com/pingcap/tidb/br/pkg/restore/tiflashrec" "github.com/pingcap/tidb/br/pkg/stream" "github.com/pingcap/tidb/br/pkg/utils" + "github.com/pingcap/tidb/br/pkg/utils/iter" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/parser/types" @@ -194,14 +195,14 @@ func TestCheckSysTableCompatibility(t *testing.T) { userTI, err := client.GetTableSchema(cluster.Domain, sysDB, model.NewCIStr("user")) require.NoError(t, err) - // column count mismatch + // user table in cluster have more columns(success) mockedUserTI := userTI.Clone() - mockedUserTI.Columns = mockedUserTI.Columns[:len(mockedUserTI.Columns)-1] + userTI.Columns = append(userTI.Columns, &model.ColumnInfo{Name: model.NewCIStr("new-name")}) err = client.CheckSysTableCompatibility(cluster.Domain, []*metautil.Table{{ DB: tmpSysDB, Info: mockedUserTI, }}) - require.True(t, berrors.ErrRestoreIncompatibleSys.Equal(err)) + require.NoError(t, err) // column order mismatch(success) mockedUserTI = userTI.Clone() @@ -212,15 +213,6 @@ func TestCheckSysTableCompatibility(t *testing.T) { }}) require.NoError(t, err) - // missing column - mockedUserTI = userTI.Clone() - mockedUserTI.Columns[0].Name = model.NewCIStr("new-name") - err = client.CheckSysTableCompatibility(cluster.Domain, []*metautil.Table{{ - DB: tmpSysDB, - Info: mockedUserTI, - }}) - require.True(t, berrors.ErrRestoreIncompatibleSys.Equal(err)) - // incompatible column type mockedUserTI = userTI.Clone() mockedUserTI.Columns[0].FieldType.SetFlen(2000) // Columns[0] is `Host` char(255) @@ -237,6 +229,19 @@ func TestCheckSysTableCompatibility(t *testing.T) { Info: mockedUserTI, }}) require.NoError(t, err) + + // use the mysql.db table to test for column count mismatch. + dbTI, err := client.GetTableSchema(cluster.Domain, sysDB, model.NewCIStr("db")) + require.NoError(t, err) + + // other system tables in cluster have more columns(failed) + mockedDBTI := dbTI.Clone() + dbTI.Columns = append(dbTI.Columns, &model.ColumnInfo{Name: model.NewCIStr("new-name")}) + err = client.CheckSysTableCompatibility(cluster.Domain, []*metautil.Table{{ + DB: tmpSysDB, + Info: mockedDBTI, + }}) + require.True(t, berrors.ErrRestoreIncompatibleSys.Equal(err)) } func TestInitFullClusterRestore(t *testing.T) { @@ -332,18 +337,17 @@ type fakePDClient struct { pd.Client stores []*metapb.Store - notLeader bool + notLeader bool + retryTimes *int } -var retryTimes int - func (fpdc fakePDClient) GetAllStores(context.Context, ...pd.GetStoreOption) ([]*metapb.Store, error) { return append([]*metapb.Store{}, fpdc.stores...), nil } func (fpdc fakePDClient) GetTS(ctx context.Context) (int64, int64, error) { - retryTimes++ - if retryTimes >= 3 { // the mock PD leader switched successfully + (*fpdc.retryTimes)++ + if *fpdc.retryTimes >= 3 { // the mock PD leader switched successfully fpdc.notLeader = false } @@ -355,24 +359,24 @@ func (fpdc fakePDClient) GetTS(ctx context.Context) (int64, int64, error) { func TestGetTSWithRetry(t *testing.T) { t.Run("PD leader is healthy:", func(t *testing.T) { - retryTimes = -1000 - pDClient := fakePDClient{notLeader: false} + retryTimes := -1000 + pDClient := fakePDClient{notLeader: false, retryTimes: &retryTimes} client := restore.NewRestoreClient(pDClient, nil, defaultKeepaliveCfg, false) _, err := client.GetTSWithRetry(context.Background()) require.NoError(t, err) }) t.Run("PD leader failure:", func(t *testing.T) { - retryTimes = -1000 - pDClient := fakePDClient{notLeader: true} + retryTimes := -1000 + pDClient := fakePDClient{notLeader: true, retryTimes: &retryTimes} client := restore.NewRestoreClient(pDClient, nil, defaultKeepaliveCfg, false) _, err := client.GetTSWithRetry(context.Background()) require.Error(t, err) }) t.Run("PD leader switch successfully", func(t *testing.T) { - retryTimes = 0 - pDClient := fakePDClient{notLeader: true} + retryTimes := 0 + pDClient := fakePDClient{notLeader: true, retryTimes: &retryTimes} client := restore.NewRestoreClient(pDClient, nil, defaultKeepaliveCfg, false) _, err := client.GetTSWithRetry(context.Background()) require.NoError(t, err) @@ -1096,3 +1100,458 @@ func TestSortMetaKVFiles(t *testing.T) { require.Equal(t, files[3].Path, "f4") require.Equal(t, files[4].Path, "f5") } + +func TestApplyKVFilesWithSingelMethod(t *testing.T) { + var ( + totalKVCount int64 = 0 + totalSize uint64 = 0 + logs = make([]string, 0) + ) + ds := []*backuppb.DataFileInfo{ + { + Path: "log3", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Delete, + }, + { + Path: "log1", + NumberOfEntries: 5, + Length: 100, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + }, { + Path: "log2", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + }, + } + applyFunc := func( + files []*backuppb.DataFileInfo, + kvCount int64, + size uint64, + ) { + totalKVCount += kvCount + totalSize += size + for _, f := range files { + logs = append(logs, f.GetPath()) + } + } + + restore.ApplyKVFilesWithSingelMethod( + context.TODO(), + iter.FromSlice(ds), + applyFunc, + ) + + require.Equal(t, totalKVCount, int64(15)) + require.Equal(t, totalSize, uint64(300)) + require.Equal(t, logs, []string{"log1", "log2", "log3"}) +} + +func TestApplyKVFilesWithBatchMethod1(t *testing.T) { + var ( + runCount = 0 + batchCount int = 3 + batchSize uint64 = 1000 + totalKVCount int64 = 0 + logs = make([][]string, 0) + ) + ds := []*backuppb.DataFileInfo{ + { + Path: "log5", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Delete, + RegionId: 1, + }, { + Path: "log3", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log4", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log1", + NumberOfEntries: 5, + Length: 800, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, + { + Path: "log2", + NumberOfEntries: 5, + Length: 200, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, + } + applyFunc := func( + files []*backuppb.DataFileInfo, + kvCount int64, + size uint64, + ) { + runCount += 1 + totalKVCount += kvCount + log := make([]string, 0, len(files)) + for _, f := range files { + log = append(log, f.GetPath()) + } + logs = append(logs, log) + } + + restore.ApplyKVFilesWithBatchMethod( + context.TODO(), + iter.FromSlice(ds), + batchCount, + batchSize, + applyFunc, + ) + + require.Equal(t, runCount, 3) + require.Equal(t, totalKVCount, int64(25)) + require.Equal(t, + logs, + [][]string{ + {"log1", "log2"}, + {"log3", "log4"}, + {"log5"}, + }, + ) +} + +func TestApplyKVFilesWithBatchMethod2(t *testing.T) { + var ( + runCount = 0 + batchCount int = 2 + batchSize uint64 = 1500 + totalKVCount int64 = 0 + logs = make([][]string, 0) + ) + ds := []*backuppb.DataFileInfo{ + { + Path: "log1", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Delete, + RegionId: 1, + }, { + Path: "log2", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log3", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log4", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log5", + NumberOfEntries: 5, + Length: 800, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, + { + Path: "log6", + NumberOfEntries: 5, + Length: 200, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, + } + applyFunc := func( + files []*backuppb.DataFileInfo, + kvCount int64, + size uint64, + ) { + runCount += 1 + totalKVCount += kvCount + log := make([]string, 0, len(files)) + for _, f := range files { + log = append(log, f.GetPath()) + } + logs = append(logs, log) + } + + restore.ApplyKVFilesWithBatchMethod( + context.TODO(), + iter.FromSlice(ds), + batchCount, + batchSize, + applyFunc, + ) + + require.Equal(t, runCount, 4) + require.Equal(t, totalKVCount, int64(30)) + require.Equal(t, + logs, + [][]string{ + {"log2", "log3"}, + {"log5", "log6"}, + {"log4"}, + {"log1"}, + }, + ) +} + +func TestApplyKVFilesWithBatchMethod3(t *testing.T) { + var ( + runCount = 0 + batchCount int = 2 + batchSize uint64 = 1500 + totalKVCount int64 = 0 + logs = make([][]string, 0) + ) + ds := []*backuppb.DataFileInfo{ + { + Path: "log1", + NumberOfEntries: 5, + Length: 2000, + Cf: stream.WriteCF, + Type: backuppb.FileType_Delete, + RegionId: 1, + }, { + Path: "log2", + NumberOfEntries: 5, + Length: 2000, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log3", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + RegionId: 1, + }, { + Path: "log5", + NumberOfEntries: 5, + Length: 800, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + RegionId: 3, + }, + { + Path: "log6", + NumberOfEntries: 5, + Length: 200, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + RegionId: 3, + }, + } + applyFunc := func( + files []*backuppb.DataFileInfo, + kvCount int64, + size uint64, + ) { + runCount += 1 + totalKVCount += kvCount + log := make([]string, 0, len(files)) + for _, f := range files { + log = append(log, f.GetPath()) + } + logs = append(logs, log) + } + + restore.ApplyKVFilesWithBatchMethod( + context.TODO(), + iter.FromSlice(ds), + batchCount, + batchSize, + applyFunc, + ) + + require.Equal(t, totalKVCount, int64(25)) + require.Equal(t, + logs, + [][]string{ + {"log2"}, + {"log5", "log6"}, + {"log3"}, + {"log1"}, + }, + ) +} + +func TestApplyKVFilesWithBatchMethod4(t *testing.T) { + var ( + runCount = 0 + batchCount int = 2 + batchSize uint64 = 1500 + totalKVCount int64 = 0 + logs = make([][]string, 0) + ) + ds := []*backuppb.DataFileInfo{ + { + Path: "log1", + NumberOfEntries: 5, + Length: 2000, + Cf: stream.WriteCF, + Type: backuppb.FileType_Delete, + TableId: 1, + }, { + Path: "log2", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + TableId: 1, + }, { + Path: "log3", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + TableId: 2, + }, { + Path: "log4", + NumberOfEntries: 5, + Length: 100, + Cf: stream.WriteCF, + Type: backuppb.FileType_Put, + TableId: 1, + }, { + Path: "log5", + NumberOfEntries: 5, + Length: 100, + Cf: stream.DefaultCF, + Type: backuppb.FileType_Put, + TableId: 2, + }, + } + applyFunc := func( + files []*backuppb.DataFileInfo, + kvCount int64, + size uint64, + ) { + runCount += 1 + totalKVCount += kvCount + log := make([]string, 0, len(files)) + for _, f := range files { + log = append(log, f.GetPath()) + } + logs = append(logs, log) + } + + restore.ApplyKVFilesWithBatchMethod( + context.TODO(), + iter.FromSlice(ds), + batchCount, + batchSize, + applyFunc, + ) + + require.Equal(t, runCount, 4) + require.Equal(t, totalKVCount, int64(25)) + require.Equal(t, + logs, + [][]string{ + {"log2", "log4"}, + {"log5"}, + {"log3"}, + {"log1"}, + }, + ) +} + +func TestCheckNewCollationEnable(t *testing.T) { + caseList := []struct { + backupMeta *backuppb.BackupMeta + newCollationEnableInCluster string + CheckRequirements bool + isErr bool + }{ + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: "True"}, + newCollationEnableInCluster: "True", + CheckRequirements: true, + isErr: false, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: "True"}, + newCollationEnableInCluster: "False", + CheckRequirements: true, + isErr: true, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: "False"}, + newCollationEnableInCluster: "True", + CheckRequirements: true, + isErr: true, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: "False"}, + newCollationEnableInCluster: "false", + CheckRequirements: true, + isErr: false, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: "False"}, + newCollationEnableInCluster: "True", + CheckRequirements: false, + isErr: true, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: "True"}, + newCollationEnableInCluster: "False", + CheckRequirements: false, + isErr: true, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: ""}, + newCollationEnableInCluster: "True", + CheckRequirements: false, + isErr: false, + }, + { + backupMeta: &backuppb.BackupMeta{NewCollationsEnabled: ""}, + newCollationEnableInCluster: "True", + CheckRequirements: true, + isErr: true, + }, + } + + for i, ca := range caseList { + g := &gluetidb.MockGlue{ + GlobalVars: map[string]string{"new_collation_enabled": ca.newCollationEnableInCluster}, + } + err := restore.CheckNewCollationEnable(ca.backupMeta.GetNewCollationsEnabled(), g, nil, ca.CheckRequirements) + + t.Logf("[%d] Got Error: %v\n", i, err) + if ca.isErr { + require.Error(t, err) + } else { + require.NoError(t, err) + } + } +} diff --git a/br/pkg/restore/data.go b/br/pkg/restore/data.go index f7efce83362f5..b4ed1c1144dd8 100644 --- a/br/pkg/restore/data.go +++ b/br/pkg/restore/data.go @@ -57,7 +57,7 @@ func RecoverData(ctx context.Context, resolveTS uint64, allStores []*metapb.Stor return totalRegions, errors.Trace(err) } - if err := recovery.PrepareFlashbackToVersion(ctx); err != nil { + if err := recovery.PrepareFlashbackToVersion(ctx, resolveTS, restoreTS-1); err != nil { return totalRegions, errors.Trace(err) } @@ -304,12 +304,12 @@ func (recovery *Recovery) WaitApply(ctx context.Context) (err error) { } // prepare the region for flashback the data, the purpose is to stop region service, put region in flashback state -func (recovery *Recovery) PrepareFlashbackToVersion(ctx context.Context) (err error) { +func (recovery *Recovery) PrepareFlashbackToVersion(ctx context.Context, resolveTS uint64, startTS uint64) (err error) { var totalRegions atomic.Uint64 totalRegions.Store(0) handler := func(ctx context.Context, r tikvstore.KeyRange) (rangetask.TaskStat, error) { - stats, err := ddl.SendPrepareFlashbackToVersionRPC(ctx, recovery.mgr.GetStorage().(tikv.Storage), r) + stats, err := ddl.SendPrepareFlashbackToVersionRPC(ctx, recovery.mgr.GetStorage().(tikv.Storage), resolveTS, startTS, r) totalRegions.Add(uint64(stats.CompletedRegions)) return stats, err } @@ -372,6 +372,7 @@ type RecoverRegion struct { // 2. build a leader list for all region during the tikv startup // 3. get max allocate id func (recovery *Recovery) MakeRecoveryPlan() error { + storeBalanceScore := make(map[uint64]int, len(recovery.allStores)) // Group region peer info by region id. find the max allocateId // region [id] [peer[0-n]] var regions = make(map[uint64][]*RecoverRegion, 0) @@ -410,16 +411,20 @@ func (recovery *Recovery) MakeRecoveryPlan() error { } } else { // Generate normal commands. - log.Debug("detected valid peer", zap.Uint64("region id", regionId)) - for i, peer := range peers { - log.Debug("make plan", zap.Uint64("store id", peer.StoreId), zap.Uint64("region id", peer.RegionId)) - plan := &recovpb.RecoverRegionRequest{RegionId: peer.RegionId, AsLeader: i == 0} - // sorted by log term -> last index -> commit index in a region - if plan.AsLeader { - log.Debug("as leader peer", zap.Uint64("store id", peer.StoreId), zap.Uint64("region id", peer.RegionId)) - recovery.RecoveryPlan[peer.StoreId] = append(recovery.RecoveryPlan[peer.StoreId], plan) - } + log.Debug("detected valid region", zap.Uint64("region id", regionId)) + // calc the leader candidates + leaderCandidates, err := LeaderCandidates(peers) + if err != nil { + log.Warn("region without peer", zap.Uint64("region id", regionId)) + return errors.Trace(err) } + + // select the leader base on tikv storeBalanceScore + leader := SelectRegionLeader(storeBalanceScore, leaderCandidates) + log.Debug("as leader peer", zap.Uint64("store id", leader.StoreId), zap.Uint64("region id", leader.RegionId)) + plan := &recovpb.RecoverRegionRequest{RegionId: leader.RegionId, AsLeader: true} + recovery.RecoveryPlan[leader.StoreId] = append(recovery.RecoveryPlan[leader.StoreId], plan) + storeBalanceScore[leader.StoreId] += 1 } } return nil diff --git a/br/pkg/restore/import.go b/br/pkg/restore/import.go index 0245add57554b..5004639c1a00d 100644 --- a/br/pkg/restore/import.go +++ b/br/pkg/restore/import.go @@ -6,6 +6,8 @@ import ( "bytes" "context" "crypto/tls" + "fmt" + "math/rand" "strings" "sync" "sync/atomic" @@ -24,8 +26,10 @@ import ( berrors "github.com/pingcap/tidb/br/pkg/errors" "github.com/pingcap/tidb/br/pkg/logutil" "github.com/pingcap/tidb/br/pkg/restore/split" + "github.com/pingcap/tidb/br/pkg/stream" "github.com/pingcap/tidb/br/pkg/summary" "github.com/pingcap/tidb/br/pkg/utils" + "github.com/pingcap/tidb/kv" pd "github.com/tikv/pd/client" "go.uber.org/multierr" "go.uber.org/zap" @@ -245,6 +249,8 @@ type FileImporter struct { rawStartKey []byte rawEndKey []byte supportMultiIngest bool + + cacheKey string } // NewFileImporter returns a new file importClient. @@ -259,6 +265,7 @@ func NewFileImporter( backend: backend, importClient: importClient, isRawKvMode: isRawKvMode, + cacheKey: fmt.Sprintf("BR-%s-%d", time.Now().Format("20060102150405"), rand.Int63()), } } @@ -332,14 +339,16 @@ func (importer *FileImporter) getKeyRangeForFiles( // Import tries to import a file. func (importer *FileImporter) ImportKVFileForRegion( ctx context.Context, - file *backuppb.DataFileInfo, + files []*backuppb.DataFileInfo, rule *RewriteRules, + shiftStartTS uint64, startTS uint64, restoreTS uint64, info *split.RegionInfo, + supportBatch bool, ) RPCResult { // Try to download file. - result := importer.downloadAndApplyKVFile(ctx, file, rule, info, startTS, restoreTS) + result := importer.downloadAndApplyKVFile(ctx, files, rule, info, shiftStartTS, startTS, restoreTS, supportBatch) if !result.OK() { errDownload := result.Err for _, e := range multierr.Errors(errDownload) { @@ -380,39 +389,85 @@ func (importer *FileImporter) ClearFiles(ctx context.Context, pdClient pd.Client return nil } +func FilterFilesByRegion( + files []*backuppb.DataFileInfo, + ranges []kv.KeyRange, + r *split.RegionInfo, +) ([]*backuppb.DataFileInfo, error) { + if len(files) != len(ranges) { + return nil, errors.Annotatef(berrors.ErrInvalidArgument, + "count of files no equals count of ranges, file-count:%v, ranges-count:%v", + len(files), len(ranges)) + } + + output := make([]*backuppb.DataFileInfo, 0, len(files)) + if r != nil && r.Region != nil { + for i, f := range files { + if bytes.Compare(r.Region.StartKey, ranges[i].EndKey) <= 0 && + (len(r.Region.EndKey) == 0 || bytes.Compare(r.Region.EndKey, ranges[i].StartKey) >= 0) { + output = append(output, f) + } + } + } else { + output = files + } + + return output, nil +} + // ImportKVFiles restores the kv events. func (importer *FileImporter) ImportKVFiles( ctx context.Context, - file *backuppb.DataFileInfo, + files []*backuppb.DataFileInfo, rule *RewriteRules, + shiftStartTS uint64, startTS uint64, restoreTS uint64, + supportBatch bool, ) error { - startTime := time.Now() - log.Debug("import kv files", zap.String("file", file.Path)) - startKey, endKey, err := GetRewriteEncodedKeys(file, rule) - if err != nil { - return errors.Trace(err) + var ( + startKey []byte + endKey []byte + ranges = make([]kv.KeyRange, len(files)) + err error + ) + + if !supportBatch && len(files) > 1 { + return errors.Annotatef(berrors.ErrInvalidArgument, + "do not support batch apply but files count:%v > 1", len(files)) + } + log.Debug("import kv files", zap.Int("batch file count", len(files))) + + for i, f := range files { + ranges[i].StartKey, ranges[i].EndKey, err = GetRewriteEncodedKeys(f, rule) + if err != nil { + return errors.Trace(err) + } + + if len(startKey) == 0 || bytes.Compare(ranges[i].StartKey, startKey) < 0 { + startKey = ranges[i].StartKey + } + if len(endKey) == 0 || bytes.Compare(ranges[i].EndKey, endKey) > 0 { + endKey = ranges[i].EndKey + } } log.Debug("rewrite file keys", - zap.String("name", file.Path), - logutil.Key("startKey", startKey), - logutil.Key("endKey", endKey)) + logutil.Key("startKey", startKey), logutil.Key("endKey", endKey)) - // This RetryState will retry 48 time, for 5 min - 6 min. - rs := utils.InitialRetryState(48, 100*time.Millisecond, 8*time.Second) + // This RetryState will retry 45 time, about 10 min. + rs := utils.InitialRetryState(45, 100*time.Millisecond, 15*time.Second) ctl := OverRegionsInRange(startKey, endKey, importer.metaClient, &rs) err = ctl.Run(ctx, func(ctx context.Context, r *split.RegionInfo) RPCResult { - return importer.ImportKVFileForRegion(ctx, file, rule, startTS, restoreTS, r) + subfiles, errFilter := FilterFilesByRegion(files, ranges, r) + if errFilter != nil { + return RPCResultFromError(errFilter) + } + if len(subfiles) == 0 { + return RPCResultOK() + } + return importer.ImportKVFileForRegion(ctx, subfiles, rule, shiftStartTS, startTS, restoreTS, r, supportBatch) }) - - log.Debug("download and apply file done", - zap.String("file", file.Path), - zap.Stringer("take", time.Since(startTime)), - logutil.Key("fileStart", file.StartKey), - logutil.Key("fileEnd", file.EndKey), - ) return errors.Trace(err) } @@ -586,6 +641,7 @@ func (importer *FileImporter) downloadSST( Name: file.GetName(), RewriteRule: rule, CipherInfo: cipher, + StorageCacheId: importer.cacheKey, } log.Debug("download SST", logutil.SSTMeta(&sstMeta), @@ -665,6 +721,7 @@ func (importer *FileImporter) downloadRawKVSST( RewriteRule: rule, IsRawKv: true, CipherInfo: cipher, + StorageCacheId: importer.cacheKey, } log.Debug("download SST", logutil.SSTMeta(&sstMeta), logutil.Region(regionInfo.Region)) @@ -801,41 +858,57 @@ func (importer *FileImporter) ingestSSTs( func (importer *FileImporter) downloadAndApplyKVFile( ctx context.Context, - file *backuppb.DataFileInfo, + files []*backuppb.DataFileInfo, rules *RewriteRules, regionInfo *split.RegionInfo, + shiftStartTS uint64, startTS uint64, restoreTS uint64, + supportBatch bool, ) RPCResult { leader := regionInfo.Leader if leader == nil { return RPCResultFromError(errors.Annotatef(berrors.ErrPDLeaderNotFound, "region id %d has no leader", regionInfo.Region.Id)) } - // Get the rewrite rule for the file. - fileRule := findMatchedRewriteRule(file, rules) - if fileRule == nil { - return RPCResultFromError(errors.Annotatef(berrors.ErrKVRewriteRuleNotFound, - "rewrite rule for file %+v not find (in %+v)", file, rules)) - } - rule := import_sstpb.RewriteRule{ - OldKeyPrefix: encodeKeyPrefix(fileRule.GetOldKeyPrefix()), - NewKeyPrefix: encodeKeyPrefix(fileRule.GetNewKeyPrefix()), - } - meta := &import_sstpb.KVMeta{ - Name: file.Path, - Cf: file.Cf, - RangeOffset: file.RangeOffset, - Length: file.Length, - RangeLength: file.RangeLength, - IsDelete: file.Type == backuppb.FileType_Delete, - StartSnapshotTs: startTS, - RestoreTs: restoreTS, - StartKey: regionInfo.Region.GetStartKey(), - EndKey: regionInfo.Region.GetEndKey(), - Sha256: file.GetSha256(), - CompressionType: file.CompressionType, + metas := make([]*import_sstpb.KVMeta, 0, len(files)) + rewriteRules := make([]*import_sstpb.RewriteRule, 0, len(files)) + + for _, file := range files { + // Get the rewrite rule for the file. + fileRule := findMatchedRewriteRule(file, rules) + if fileRule == nil { + return RPCResultFromError(errors.Annotatef(berrors.ErrKVRewriteRuleNotFound, + "rewrite rule for file %+v not find (in %+v)", file, rules)) + } + rule := import_sstpb.RewriteRule{ + OldKeyPrefix: encodeKeyPrefix(fileRule.GetOldKeyPrefix()), + NewKeyPrefix: encodeKeyPrefix(fileRule.GetNewKeyPrefix()), + } + + meta := &import_sstpb.KVMeta{ + Name: file.Path, + Cf: file.Cf, + RangeOffset: file.RangeOffset, + Length: file.Length, + RangeLength: file.RangeLength, + IsDelete: file.Type == backuppb.FileType_Delete, + StartTs: func() uint64 { + if file.Cf == stream.DefaultCF { + return shiftStartTS + } + return startTS + }(), + RestoreTs: restoreTS, + StartKey: regionInfo.Region.GetStartKey(), + EndKey: regionInfo.Region.GetEndKey(), + Sha256: file.GetSha256(), + CompressionType: file.CompressionType, + } + + metas = append(metas, meta) + rewriteRules = append(rewriteRules, &rule) } reqCtx := &kvrpcpb.Context{ @@ -844,12 +917,23 @@ func (importer *FileImporter) downloadAndApplyKVFile( Peer: leader, } - req := &import_sstpb.ApplyRequest{ - Meta: meta, - StorageBackend: importer.backend, - RewriteRule: rule, - Context: reqCtx, + var req *import_sstpb.ApplyRequest + if supportBatch { + req = &import_sstpb.ApplyRequest{ + Metas: metas, + StorageBackend: importer.backend, + RewriteRules: rewriteRules, + Context: reqCtx, + } + } else { + req = &import_sstpb.ApplyRequest{ + Meta: metas[0], + StorageBackend: importer.backend, + RewriteRule: *rewriteRules[0], + Context: reqCtx, + } } + log.Debug("apply kv file", logutil.Leader(leader)) resp, err := importer.importClient.ApplyKVFile(ctx, leader.GetStoreId(), req) if err != nil { diff --git a/br/pkg/restore/import_retry.go b/br/pkg/restore/import_retry.go index 7dcdb01a6c765..6f3b9fc1cca53 100644 --- a/br/pkg/restore/import_retry.go +++ b/br/pkg/restore/import_retry.go @@ -224,7 +224,8 @@ func (r *RPCResult) StrategyForRetryStoreError() RetryStrategy { if r.StoreError.GetServerIsBusy() != nil || r.StoreError.GetRegionNotInitialized() != nil || - r.StoreError.GetNotLeader() != nil { + r.StoreError.GetNotLeader() != nil || + r.StoreError.GetServerIsBusy() != nil { return StrategyFromThisRegion } diff --git a/br/pkg/restore/import_retry_test.go b/br/pkg/restore/import_retry_test.go index d79e2a317a4c0..6f3d8f490ef13 100644 --- a/br/pkg/restore/import_retry_test.go +++ b/br/pkg/restore/import_retry_test.go @@ -12,12 +12,15 @@ import ( "time" "github.com/pingcap/errors" + backuppb "github.com/pingcap/kvproto/pkg/brpb" "github.com/pingcap/kvproto/pkg/errorpb" "github.com/pingcap/kvproto/pkg/import_sstpb" "github.com/pingcap/kvproto/pkg/metapb" + berrors "github.com/pingcap/tidb/br/pkg/errors" "github.com/pingcap/tidb/br/pkg/restore" "github.com/pingcap/tidb/br/pkg/restore/split" "github.com/pingcap/tidb/br/pkg/utils" + "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/store/pdtypes" "github.com/pingcap/tidb/util/codec" "github.com/stretchr/testify/require" @@ -127,6 +130,41 @@ func TestNotLeader(t *testing.T) { assertRegions(t, meetRegions, "", "aay", "bba", "bbh", "cca", "") } +func TestServerIsBusy(t *testing.T) { + // region: [, aay), [aay, bba), [bba, bbh), [bbh, cca), [cca, ) + cli := initTestClient(false) + rs := utils.InitialRetryState(2, 0, 0) + ctl := restore.OverRegionsInRange([]byte(""), []byte(""), cli, &rs) + ctx := context.Background() + + serverIsBusy := errorpb.Error{ + Message: "server is busy", + ServerIsBusy: &errorpb.ServerIsBusy{ + Reason: "memory is out", + }, + } + // record the regions we didn't touch. + meetRegions := []*split.RegionInfo{} + // record all regions we meet with id == 2. + idEqualsTo2Regions := []*split.RegionInfo{} + theFirstRun := true + err := ctl.Run(ctx, func(ctx context.Context, r *split.RegionInfo) restore.RPCResult { + if theFirstRun && r.Region.Id == 2 { + idEqualsTo2Regions = append(idEqualsTo2Regions, r) + theFirstRun = false + return restore.RPCResult{ + StoreError: &serverIsBusy, + } + } + meetRegions = append(meetRegions, r) + return restore.RPCResultOK() + }) + + require.NoError(t, err) + assertRegions(t, idEqualsTo2Regions, "aay", "bba") + assertRegions(t, meetRegions, "", "aay", "bba", "bbh", "cca", "") +} + func printRegion(name string, infos []*split.RegionInfo) { fmt.Printf(">>>>> %s <<<<<\n", name) for _, info := range infos { @@ -345,3 +383,166 @@ func TestPaginateScanLeader(t *testing.T) { }) assertRegions(t, collectedRegions, "", "aay", "bba") } + +func TestImportKVFiles(t *testing.T) { + var ( + importer = restore.FileImporter{} + ctx = context.Background() + shiftStartTS uint64 = 100 + startTS uint64 = 200 + restoreTS uint64 = 300 + ) + + err := importer.ImportKVFiles( + ctx, + []*backuppb.DataFileInfo{ + { + Path: "log3", + }, + { + Path: "log1", + }, + }, + nil, + shiftStartTS, + startTS, + restoreTS, + false, + ) + require.True(t, berrors.ErrInvalidArgument.Equal(err)) +} + +func TestFilterFilesByRegion(t *testing.T) { + files := []*backuppb.DataFileInfo{ + { + Path: "log1", + }, + { + Path: "log2", + }, + } + ranges := []kv.KeyRange{ + { + StartKey: []byte("1111"), + EndKey: []byte("2222"), + }, { + StartKey: []byte("3333"), + EndKey: []byte("4444"), + }, + } + + testCases := []struct { + r split.RegionInfo + subfiles []*backuppb.DataFileInfo + err error + }{ + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("0000"), + EndKey: []byte("1110"), + }, + }, + subfiles: []*backuppb.DataFileInfo{}, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("0000"), + EndKey: []byte("1111"), + }, + }, + subfiles: []*backuppb.DataFileInfo{ + files[0], + }, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("0000"), + EndKey: []byte("2222"), + }, + }, + subfiles: []*backuppb.DataFileInfo{ + files[0], + }, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("2222"), + EndKey: []byte("3332"), + }, + }, + subfiles: []*backuppb.DataFileInfo{ + files[0], + }, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("2223"), + EndKey: []byte("3332"), + }, + }, + subfiles: []*backuppb.DataFileInfo{}, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("3332"), + EndKey: []byte("3333"), + }, + }, + subfiles: []*backuppb.DataFileInfo{ + files[1], + }, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("4444"), + EndKey: []byte("5555"), + }, + }, + subfiles: []*backuppb.DataFileInfo{ + files[1], + }, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("4444"), + EndKey: nil, + }, + }, + subfiles: []*backuppb.DataFileInfo{ + files[1], + }, + err: nil, + }, + { + r: split.RegionInfo{ + Region: &metapb.Region{ + StartKey: []byte("0000"), + EndKey: nil, + }, + }, + subfiles: files, + err: nil, + }, + } + + for _, c := range testCases { + subfile, err := restore.FilterFilesByRegion(files, ranges, &c.r) + require.Equal(t, err, c.err) + require.Equal(t, subfile, c.subfiles) + } +} diff --git a/br/pkg/restore/log_client.go b/br/pkg/restore/log_client.go index 7c01897741ba2..cce295090ba02 100644 --- a/br/pkg/restore/log_client.go +++ b/br/pkg/restore/log_client.go @@ -101,14 +101,17 @@ func (rc *logFileManager) loadShiftTS(ctx context.Context) error { if err != nil { return err } - shiftTS.Lock() - defer shiftTS.Unlock() + log.Info("read meta from storage and parse", zap.String("path", path), zap.Uint64("min-ts", m.MinTs), + zap.Uint64("max-ts", m.MaxTs), zap.Int32("meta-version", int32(m.MetaVersion))) ts, ok := UpdateShiftTS(m, rc.startTS, rc.restoreTS) + shiftTS.Lock() if ok && (!shiftTS.exists || shiftTS.value > ts) { shiftTS.value = ts shiftTS.exists = true } + shiftTS.Unlock() + return nil }) if err != nil { diff --git a/br/pkg/restore/split/split.go b/br/pkg/restore/split/split.go index 6af36a400a03f..bd00c445e1184 100644 --- a/br/pkg/restore/split/split.go +++ b/br/pkg/restore/split/split.go @@ -18,7 +18,7 @@ import ( ) var ( - ScanRegionAttemptTimes = 60 + ScanRegionAttemptTimes = 128 ) // Constants for split retry machinery. diff --git a/br/pkg/restore/stream_metas_test.go b/br/pkg/restore/stream_metas_test.go index 5b75e9de6b3d8..407f5a0154ca3 100644 --- a/br/pkg/restore/stream_metas_test.go +++ b/br/pkg/restore/stream_metas_test.go @@ -317,7 +317,7 @@ func TestTruncateSafepointForGCS(t *testing.T) { CredentialsBlob: "Fake Credentials", } - l, err := storage.NewGCSStorageForTest(ctx, gcs, &storage.ExternalStorageOptions{ + l, err := storage.NewGCSStorage(ctx, gcs, &storage.ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []storage.Permission{storage.AccessBuckets}, HTTPClient: server.HTTPClient(), diff --git a/br/pkg/restore/systable_restore.go b/br/pkg/restore/systable_restore.go index 40e3450c772f2..02ea0860d5425 100644 --- a/br/pkg/restore/systable_restore.go +++ b/br/pkg/restore/systable_restore.go @@ -19,6 +19,8 @@ import ( "go.uber.org/zap" ) +const sysUserTableName = "user" + var statsTables = map[string]struct{}{ "stats_buckets": {}, "stats_extended": {}, diff --git a/br/pkg/restore/util.go b/br/pkg/restore/util.go index 259d3fa28d888..73a4411c445c1 100644 --- a/br/pkg/restore/util.go +++ b/br/pkg/restore/util.go @@ -750,3 +750,43 @@ func CheckConsistencyAndValidPeer(regionInfos []*RecoverRegionInfo) (map[uint64] } return validPeers, nil } + +// in cloud, since iops and bandwidth limitation, write operator in raft is slow, so raft state (logterm, lastlog, commitlog...) are the same among the peers +// LeaderCandidates select all peers can be select as a leader during the restore +func LeaderCandidates(peers []*RecoverRegion) ([]*RecoverRegion, error) { + if peers == nil { + return nil, errors.Annotatef(berrors.ErrRestoreRegionWithoutPeer, + "invalid region range") + } + candidates := make([]*RecoverRegion, 0, len(peers)) + // by default, the peers[0] to be assign as a leader, since peers already sorted by leader selection rule + leader := peers[0] + candidates = append(candidates, leader) + for _, peer := range peers[1:] { + // qualificated candidate is leader.logterm = candidate.logterm && leader.lastindex = candidate.lastindex && && leader.commitindex = candidate.commitindex + if peer.LastLogTerm == leader.LastLogTerm && peer.LastIndex == leader.LastIndex && peer.CommitIndex == leader.CommitIndex { + log.Debug("leader candidate", zap.Uint64("store id", peer.StoreId), zap.Uint64("region id", peer.RegionId), zap.Uint64("peer id", peer.PeerId)) + candidates = append(candidates, peer) + } + } + return candidates, nil +} + +// for region A, has candidate leader x, y, z +// peer x on store 1 with storeBalanceScore 3 +// peer y on store 3 with storeBalanceScore 2 +// peer z on store 4 with storeBalanceScore 1 +// result: peer z will be select as leader on store 4 +func SelectRegionLeader(storeBalanceScore map[uint64]int, peers []*RecoverRegion) *RecoverRegion { + // by default, the peers[0] to be assign as a leader + leader := peers[0] + minLeaderStore := storeBalanceScore[leader.StoreId] + for _, peer := range peers[1:] { + log.Debug("leader candidate", zap.Int("score", storeBalanceScore[peer.StoreId]), zap.Int("min-score", minLeaderStore), zap.Uint64("store id", peer.StoreId), zap.Uint64("region id", peer.RegionId), zap.Uint64("peer id", peer.PeerId)) + if storeBalanceScore[peer.StoreId] < minLeaderStore { + minLeaderStore = storeBalanceScore[peer.StoreId] + leader = peer + } + } + return leader +} diff --git a/br/pkg/restore/util_test.go b/br/pkg/restore/util_test.go index 44620e9cb4e5c..482818a1ad958 100644 --- a/br/pkg/restore/util_test.go +++ b/br/pkg/restore/util_test.go @@ -460,3 +460,52 @@ func TestCheckConsistencyAndValidPeer(t *testing.T) { require.Error(t, err) require.Regexp(t, ".*invalid restore range.*", err.Error()) } + +func TestLeaderCandidates(t *testing.T) { + //key space is continuous + validPeer1 := newPeerMeta(9, 11, 2, []byte(""), []byte("bb"), 2, 1, 0, 0, false) + validPeer2 := newPeerMeta(19, 22, 3, []byte("bb"), []byte("cc"), 2, 1, 0, 1, false) + validPeer3 := newPeerMeta(29, 30, 1, []byte("cc"), []byte(""), 2, 1, 0, 2, false) + + peers := []*restore.RecoverRegion{ + validPeer1, + validPeer2, + validPeer3, + } + + candidates, err := restore.LeaderCandidates(peers) + require.NoError(t, err) + require.Equal(t, 3, len(candidates)) +} + +func TestSelectRegionLeader(t *testing.T) { + validPeer1 := newPeerMeta(9, 11, 2, []byte(""), []byte("bb"), 2, 1, 0, 0, false) + validPeer2 := newPeerMeta(19, 22, 3, []byte("bb"), []byte("cc"), 2, 1, 0, 1, false) + validPeer3 := newPeerMeta(29, 30, 1, []byte("cc"), []byte(""), 2, 1, 0, 2, false) + + peers := []*restore.RecoverRegion{ + validPeer1, + validPeer2, + validPeer3, + } + // init store banlance score all is 0 + storeBalanceScore := make(map[uint64]int, len(peers)) + leader := restore.SelectRegionLeader(storeBalanceScore, peers) + require.Equal(t, validPeer1, leader) + + // change store banlance store + storeBalanceScore[2] = 3 + storeBalanceScore[3] = 2 + storeBalanceScore[1] = 1 + leader = restore.SelectRegionLeader(storeBalanceScore, peers) + require.Equal(t, validPeer3, leader) + + // one peer + peer := []*restore.RecoverRegion{ + validPeer3, + } + // init store banlance score all is 0 + storeScore := make(map[uint64]int, len(peer)) + leader = restore.SelectRegionLeader(storeScore, peer) + require.Equal(t, validPeer3, leader) +} diff --git a/br/pkg/rtree/rtree.go b/br/pkg/rtree/rtree.go index 9f12b22daca75..f17ebf38df510 100644 --- a/br/pkg/rtree/rtree.go +++ b/br/pkg/rtree/rtree.go @@ -217,3 +217,10 @@ func (rangeTree *RangeTree) GetIncompleteRange( } return incomplete } + +type ProgressRange struct { + Res RangeTree + Incomplete []Range + Origin Range + GroupKey string +} diff --git a/br/pkg/storage/compress.go b/br/pkg/storage/compress.go index 1d5300cfa8d55..5794c813c9d5f 100644 --- a/br/pkg/storage/compress.go +++ b/br/pkg/storage/compress.go @@ -80,8 +80,10 @@ func (w *withCompression) ReadFile(ctx context.Context, name string) ([]byte, er return io.ReadAll(compressBf) } +// compressReader is a wrapper for compress.Reader type compressReader struct { io.Reader + io.Seeker io.Closer } @@ -97,11 +99,16 @@ func newInterceptReader(fileReader ExternalFileReader, compressType CompressType return &compressReader{ Reader: r, Closer: fileReader, + Seeker: fileReader, }, nil } -func (*compressReader) Seek(_ int64, _ int) (int64, error) { - return int64(0), errors.Annotatef(berrors.ErrStorageInvalidConfig, "compressReader doesn't support Seek now") +func (c *compressReader) Seek(offset int64, whence int) (int64, error) { + // only support get original reader's current offset + if offset == 0 && whence == io.SeekCurrent { + return c.Seeker.Seek(offset, whence) + } + return int64(0), errors.Annotatef(berrors.ErrStorageInvalidConfig, "compressReader doesn't support Seek now, offset %d, whence %d", offset, whence) } func (c *compressReader) Close() error { diff --git a/br/pkg/storage/gcs.go b/br/pkg/storage/gcs.go index 063100a52ad59..ac5098ed16973 100644 --- a/br/pkg/storage/gcs.go +++ b/br/pkg/storage/gcs.go @@ -90,24 +90,36 @@ func (options *GCSBackendOptions) parseFromFlags(flags *pflag.FlagSet) error { return nil } -type gcsStorage struct { +// GCSStorage defines some standard operations for BR/Lightning on the GCS storage. +// It implements the `ExternalStorage` interface. +type GCSStorage struct { gcs *backuppb.GCS bucket *storage.BucketHandle } +// GetBucketHandle gets the handle to the GCS API on the bucket. +func (s *GCSStorage) GetBucketHandle() *storage.BucketHandle { + return s.bucket +} + +// GetOptions gets the external storage operations for the GCS. +func (s *GCSStorage) GetOptions() *backuppb.GCS { + return s.gcs +} + // DeleteFile delete the file in storage -func (s *gcsStorage) DeleteFile(ctx context.Context, name string) error { +func (s *GCSStorage) DeleteFile(ctx context.Context, name string) error { object := s.objectName(name) err := s.bucket.Object(object).Delete(ctx) return errors.Trace(err) } -func (s *gcsStorage) objectName(name string) string { +func (s *GCSStorage) objectName(name string) string { return path.Join(s.gcs.Prefix, name) } // WriteFile writes data to a file to storage. -func (s *gcsStorage) WriteFile(ctx context.Context, name string, data []byte) error { +func (s *GCSStorage) WriteFile(ctx context.Context, name string, data []byte) error { object := s.objectName(name) wc := s.bucket.Object(object).NewWriter(ctx) wc.StorageClass = s.gcs.StorageClass @@ -120,7 +132,7 @@ func (s *gcsStorage) WriteFile(ctx context.Context, name string, data []byte) er } // ReadFile reads the file from the storage and returns the contents. -func (s *gcsStorage) ReadFile(ctx context.Context, name string) ([]byte, error) { +func (s *GCSStorage) ReadFile(ctx context.Context, name string) ([]byte, error) { object := s.objectName(name) rc, err := s.bucket.Object(object).NewReader(ctx) if err != nil { @@ -143,7 +155,7 @@ func (s *gcsStorage) ReadFile(ctx context.Context, name string) ([]byte, error) } // FileExists return true if file exists. -func (s *gcsStorage) FileExists(ctx context.Context, name string) (bool, error) { +func (s *GCSStorage) FileExists(ctx context.Context, name string) (bool, error) { object := s.objectName(name) _, err := s.bucket.Object(object).Attrs(ctx) if err != nil { @@ -156,7 +168,7 @@ func (s *gcsStorage) FileExists(ctx context.Context, name string) (bool, error) } // Open a Reader by file path. -func (s *gcsStorage) Open(ctx context.Context, path string) (ExternalFileReader, error) { +func (s *GCSStorage) Open(ctx context.Context, path string) (ExternalFileReader, error) { object := s.objectName(path) handle := s.bucket.Object(object) @@ -182,7 +194,7 @@ func (s *gcsStorage) Open(ctx context.Context, path string) (ExternalFileReader, // The first argument is the file path that can be used in `Open` // function; the second argument is the size in byte of the file determined // by path. -func (s *gcsStorage) WalkDir(ctx context.Context, opt *WalkOption, fn func(string, int64) error) error { +func (s *GCSStorage) WalkDir(ctx context.Context, opt *WalkOption, fn func(string, int64) error) error { if opt == nil { opt = &WalkOption{} } @@ -221,12 +233,12 @@ func (s *gcsStorage) WalkDir(ctx context.Context, opt *WalkOption, fn func(strin return nil } -func (s *gcsStorage) URI() string { +func (s *GCSStorage) URI() string { return "gcs://" + s.gcs.Bucket + "/" + s.gcs.Prefix } // Create implements ExternalStorage interface. -func (s *gcsStorage) Create(ctx context.Context, name string) (ExternalFileWriter, error) { +func (s *GCSStorage) Create(ctx context.Context, name string) (ExternalFileWriter, error) { object := s.objectName(name) wc := s.bucket.Object(object).NewWriter(ctx) wc.StorageClass = s.gcs.StorageClass @@ -235,7 +247,7 @@ func (s *gcsStorage) Create(ctx context.Context, name string) (ExternalFileWrite } // Rename file name from oldFileName to newFileName. -func (s *gcsStorage) Rename(ctx context.Context, oldFileName, newFileName string) error { +func (s *GCSStorage) Rename(ctx context.Context, oldFileName, newFileName string) error { data, err := s.ReadFile(ctx, oldFileName) if err != nil { return errors.Trace(err) @@ -247,7 +259,8 @@ func (s *gcsStorage) Rename(ctx context.Context, oldFileName, newFileName string return s.DeleteFile(ctx, oldFileName) } -func newGCSStorage(ctx context.Context, gcs *backuppb.GCS, opts *ExternalStorageOptions) (*gcsStorage, error) { +// NewGCSStorage creates a GCS external storage implementation. +func NewGCSStorage(ctx context.Context, gcs *backuppb.GCS, opts *ExternalStorageOptions) (*GCSStorage, error) { var clientOps []option.ClientOption if opts.NoCredentials { clientOps = append(clientOps, option.WithoutAuthentication()) @@ -301,12 +314,7 @@ func newGCSStorage(ctx context.Context, gcs *backuppb.GCS, opts *ExternalStorage // so we need find sst in slash directory gcs.Prefix += "//" } - return &gcsStorage{gcs: gcs, bucket: bucket}, nil -} - -// only for unit test -func NewGCSStorageForTest(ctx context.Context, gcs *backuppb.GCS, opts *ExternalStorageOptions) (*gcsStorage, error) { - return newGCSStorage(ctx, gcs, opts) + return &GCSStorage{gcs: gcs, bucket: bucket}, nil } func hasSSTFiles(ctx context.Context, bucket *storage.BucketHandle, prefix string) bool { @@ -332,7 +340,7 @@ func hasSSTFiles(ctx context.Context, bucket *storage.BucketHandle, prefix strin // gcsObjectReader wrap storage.Reader and add the `Seek` method. type gcsObjectReader struct { - storage *gcsStorage + storage *GCSStorage name string objHandle *storage.ObjectHandle reader io.ReadCloser diff --git a/br/pkg/storage/gcs_test.go b/br/pkg/storage/gcs_test.go index 5801adccf04b7..daefb2bd686d3 100644 --- a/br/pkg/storage/gcs_test.go +++ b/br/pkg/storage/gcs_test.go @@ -32,7 +32,7 @@ func TestGCS(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "Fake Credentials", } - stg, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + stg, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -86,7 +86,7 @@ func TestGCS(t *testing.T) { require.NoError(t, err) require.False(t, exist) - checkWalkDir := func(stg *gcsStorage, opt *WalkOption) { + checkWalkDir := func(stg *GCSStorage, opt *WalkOption) { var totalSize int64 = 0 err = stg.WalkDir(ctx, opt, func(name string, size int64) error { totalSize += size @@ -112,7 +112,7 @@ func TestGCS(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "Fake Credentials", } - stg, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + stg, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -130,7 +130,7 @@ func TestGCS(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "Fake Credentials", } - stg, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + stg, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -147,7 +147,7 @@ func TestGCS(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "Fake Credentials", } - stg, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + stg, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -254,7 +254,7 @@ func TestNewGCSStorage(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "FakeCredentials", } - _, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + _, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: true, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -271,7 +271,7 @@ func TestNewGCSStorage(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "FakeCredentials", } - _, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + _, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -302,7 +302,7 @@ func TestNewGCSStorage(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "", } - _, err = newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + _, err = NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: true, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -333,7 +333,7 @@ func TestNewGCSStorage(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "", } - s, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + s, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -352,7 +352,7 @@ func TestNewGCSStorage(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "", } - _, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + _, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: true, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), @@ -368,7 +368,7 @@ func TestNewGCSStorage(t *testing.T) { PredefinedAcl: "private", CredentialsBlob: "FakeCredentials", } - s, err := newGCSStorage(ctx, gcs, &ExternalStorageOptions{ + s, err := NewGCSStorage(ctx, gcs, &ExternalStorageOptions{ SendCredentials: false, CheckPermissions: []Permission{AccessBuckets}, HTTPClient: server.HTTPClient(), diff --git a/br/pkg/storage/local.go b/br/pkg/storage/local.go index 68dc760cc1c9a..2d6e0571faa93 100644 --- a/br/pkg/storage/local.go +++ b/br/pkg/storage/local.go @@ -10,6 +10,8 @@ import ( "strings" "github.com/pingcap/errors" + "github.com/pingcap/log" + "go.uber.org/zap" ) const ( @@ -38,7 +40,21 @@ func (l *LocalStorage) WriteFile(_ context.Context, name string, data []byte) er // to an empty file if write is not finished. tmpPath := filepath.Join(l.base, name) + ".tmp" if err := os.WriteFile(tmpPath, data, localFilePerm); err != nil { - return errors.Trace(err) + path := filepath.Dir(tmpPath) + log.Info("failed to write file, try to mkdir the path", zap.String("path", path)) + exists, existErr := pathExists(path) + if existErr != nil { + return errors.Annotatef(err, "after failed to write file, failed to check path exists : %v", existErr) + } + if exists { + return errors.Trace(err) + } + if mkdirErr := mkdirAll(path); mkdirErr != nil { + return errors.Annotatef(err, "after failed to write file, failed to mkdir : %v", mkdirErr) + } + if err := os.WriteFile(tmpPath, data, localFilePerm); err != nil { + return errors.Trace(err) + } } if err := os.Rename(tmpPath, filepath.Join(l.base, name)); err != nil { return errors.Trace(err) diff --git a/br/pkg/storage/local_test.go b/br/pkg/storage/local_test.go index 82e7435ae29be..db1ba424b9d6b 100644 --- a/br/pkg/storage/local_test.go +++ b/br/pkg/storage/local_test.go @@ -9,6 +9,7 @@ import ( "runtime" "testing" + "github.com/pingcap/errors" "github.com/stretchr/testify/require" ) @@ -99,4 +100,30 @@ func TestWalkDirWithSoftLinkFile(t *testing.T) { }) require.NoError(t, err) require.Equal(t, 1, i) + + // test file not exists + exists, err := store.FileExists(context.TODO(), "/123/456") + require.NoError(t, err) + require.False(t, exists) + + // test walk nonexistent directory + err = store.WalkDir(context.TODO(), &WalkOption{SubDir: "123/456"}, func(path string, size int64) error { + return errors.New("find file") + }) + require.NoError(t, err) + // write file to a nonexistent directory + err = store.WriteFile(context.TODO(), "/123/456/789.txt", []byte(data)) + require.NoError(t, err) + exists, err = store.FileExists(context.TODO(), "/123/456") + require.NoError(t, err) + require.True(t, exists) + + // test walk existent directory + err = store.WalkDir(context.TODO(), &WalkOption{SubDir: "123/456"}, func(path string, size int64) error { + if path == "123/456/789.txt" { + return nil + } + return errors.Errorf("find other file: %s", path) + }) + require.NoError(t, err) } diff --git a/br/pkg/storage/s3.go b/br/pkg/storage/s3.go index ff2cbae25d030..0f4d43b2ca9ac 100644 --- a/br/pkg/storage/s3.go +++ b/br/pkg/storage/s3.go @@ -68,13 +68,24 @@ var permissionCheckFn = map[Permission]func(*s3.S3, *backuppb.S3) error{ GetObject: getObject, } -// S3Storage info for s3 storage. +// S3Storage defines some standard operations for BR/Lightning on the S3 storage. +// It implements the `ExternalStorage` interface. type S3Storage struct { session *session.Session svc s3iface.S3API options *backuppb.S3 } +// GetS3APIHandle gets the handle to the S3 API. +func (rs *S3Storage) GetS3APIHandle() s3iface.S3API { + return rs.svc +} + +// GetOptions gets the external storage operations for the S3. +func (rs *S3Storage) GetOptions() *backuppb.S3 { + return rs.options +} + // S3Uploader does multi-part upload to s3. type S3Uploader struct { svc s3iface.S3API @@ -248,19 +259,6 @@ func NewS3StorageForTest(svc s3iface.S3API, options *backuppb.S3) *S3Storage { } } -// NewS3Storage initialize a new s3 storage for metadata. -// -// Deprecated: Create the storage via `New()` instead of using this. -func NewS3Storage( // revive:disable-line:flag-parameter - backend *backuppb.S3, - sendCredential bool, -) (*S3Storage, error) { - return newS3Storage(backend, &ExternalStorageOptions{ - SendCredentials: sendCredential, - CheckPermissions: []Permission{AccessBuckets}, - }) -} - // auto access without ak / sk. func autoNewCred(qs *backuppb.S3) (cred *credentials.Credentials, err error) { if qs.AccessKey != "" && qs.SecretAccessKey != "" { @@ -288,7 +286,8 @@ func createOssRAMCred() (*credentials.Credentials, error) { return credentials.NewStaticCredentials(ncred.AccessKeyId, ncred.AccessKeySecret, ncred.AccessKeyStsToken), nil } -func newS3Storage(backend *backuppb.S3, opts *ExternalStorageOptions) (obj *S3Storage, errRet error) { +// NewS3Storage initialize a new s3 storage for metadata. +func NewS3Storage(backend *backuppb.S3, opts *ExternalStorageOptions) (obj *S3Storage, errRet error) { qs := *backend awsConfig := aws.NewConfig(). WithS3ForcePathStyle(qs.ForcePathStyle). @@ -400,7 +399,7 @@ func newS3Storage(backend *backuppb.S3, opts *ExternalStorageOptions) (obj *S3St options: &qs, } if opts.CheckS3ObjectLockOptions { - backend.ObjectLockEnabled = s3Storage.isObjectLockEnabled() + backend.ObjectLockEnabled = s3Storage.IsObjectLockEnabled() } return s3Storage, nil } @@ -447,7 +446,7 @@ func getObject(svc *s3.S3, qs *backuppb.S3) error { return nil } -func (rs *S3Storage) isObjectLockEnabled() bool { +func (rs *S3Storage) IsObjectLockEnabled() bool { input := &s3.GetObjectLockConfigurationInput{ Bucket: aws.String(rs.options.Bucket), } @@ -456,8 +455,8 @@ func (rs *S3Storage) isObjectLockEnabled() bool { log.Warn("failed to check object lock for bucket", zap.String("bucket", rs.options.Bucket), zap.Error(err)) return false } - if resp.ObjectLockConfiguration != nil { - if s3.ObjectLockEnabledEnabled == *resp.ObjectLockConfiguration.ObjectLockEnabled { + if resp != nil && resp.ObjectLockConfiguration != nil { + if s3.ObjectLockEnabledEnabled == aws.StringValue(resp.ObjectLockConfiguration.ObjectLockEnabled) { return true } } diff --git a/br/pkg/storage/s3_test.go b/br/pkg/storage/s3_test.go index 3990e5eb82bc1..4f5c123b677b4 100644 --- a/br/pkg/storage/s3_test.go +++ b/br/pkg/storage/s3_test.go @@ -1141,3 +1141,48 @@ func TestSendCreds(t *testing.T) { sentSecretAccessKey = backend.GetS3().SecretAccessKey require.Equal(t, "", sentSecretAccessKey) } + +func TestObjectLock(t *testing.T) { + s := createS3Suite(t) + // resp is nil + s.s3.EXPECT().GetObjectLockConfiguration(gomock.Any()).Return(nil, nil) + require.Equal(t, false, s.storage.IsObjectLockEnabled()) + + // resp is not nil, but resp.ObjectLockConfiguration is nil + s.s3.EXPECT().GetObjectLockConfiguration(gomock.Any()).Return( + &s3.GetObjectLockConfigurationOutput{ + ObjectLockConfiguration: nil, + }, nil, + ) + require.Equal(t, false, s.storage.IsObjectLockEnabled()) + + // resp.ObjectLockConfiguration is not nil, but resp.ObjectLockConfiguration.ObjectLockEnabled is nil + s.s3.EXPECT().GetObjectLockConfiguration(gomock.Any()).Return( + &s3.GetObjectLockConfigurationOutput{ + ObjectLockConfiguration: &s3.ObjectLockConfiguration{ + ObjectLockEnabled: nil, + }, + }, nil, + ) + require.Equal(t, false, s.storage.IsObjectLockEnabled()) + + // resp.ObjectLockConfiguration.ObjectLockEnabled is illegal string + s.s3.EXPECT().GetObjectLockConfiguration(gomock.Any()).Return( + &s3.GetObjectLockConfigurationOutput{ + ObjectLockConfiguration: &s3.ObjectLockConfiguration{ + ObjectLockEnabled: aws.String("EnaBled"), + }, + }, nil, + ) + require.Equal(t, false, s.storage.IsObjectLockEnabled()) + + // resp.ObjectLockConfiguration.ObjectLockEnabled is enabled + s.s3.EXPECT().GetObjectLockConfiguration(gomock.Any()).Return( + &s3.GetObjectLockConfigurationOutput{ + ObjectLockConfiguration: &s3.ObjectLockConfiguration{ + ObjectLockEnabled: aws.String("Enabled"), + }, + }, nil, + ) + require.Equal(t, true, s.storage.IsObjectLockEnabled()) +} diff --git a/br/pkg/storage/storage.go b/br/pkg/storage/storage.go index b73181e582158..f678457d5088a 100644 --- a/br/pkg/storage/storage.go +++ b/br/pkg/storage/storage.go @@ -173,14 +173,14 @@ func New(ctx context.Context, backend *backuppb.StorageBackend, opts *ExternalSt if backend.S3 == nil { return nil, errors.Annotate(berrors.ErrStorageInvalidConfig, "s3 config not found") } - return newS3Storage(backend.S3, opts) + return NewS3Storage(backend.S3, opts) case *backuppb.StorageBackend_Noop: return newNoopStorage(), nil case *backuppb.StorageBackend_Gcs: if backend.Gcs == nil { return nil, errors.Annotate(berrors.ErrStorageInvalidConfig, "GCS config not found") } - return newGCSStorage(ctx, backend.Gcs, opts) + return NewGCSStorage(ctx, backend.Gcs, opts) case *backuppb.StorageBackend_AzureBlobStorage: return newAzureBlobStorage(ctx, backend.AzureBlobStorage, opts) default: diff --git a/br/pkg/stream/meta_kv.go b/br/pkg/stream/meta_kv.go index 9d054f0bef454..fb7c2f79f17d1 100644 --- a/br/pkg/stream/meta_kv.go +++ b/br/pkg/stream/meta_kv.go @@ -111,15 +111,34 @@ const ( flagShortValuePrefix = byte('v') flagOverlappedRollback = byte('R') flagGCFencePrefix = byte('F') + flagLastChangePrefix = byte('l') + flagTxnSourcePrefix = byte('S') ) +// RawWriteCFValue represents the value in write columnFamily. +// Detail see line: https://github.com/tikv/tikv/blob/release-6.5/components/txn_types/src/write.rs#L70 type RawWriteCFValue struct { t WriteType startTs uint64 shortValue []byte hasOverlappedRollback bool - hasGCFence bool - gcFence uint64 + + // Records the next version after this version when overlapping rollback + // happens on an already existed commit record. + // + // See [`Write::gc_fence`] for more detail. + hasGCFence bool + gcFence uint64 + + // The number of versions that need skipping from this record + // to find the latest PUT/DELETE record. + // If versions_to_last_change > 0 but last_change_ts == 0, the key does not + // have a PUT/DELETE record before this write record. + lastChangeTs uint64 + versionsToLastChange uint64 + + // The source of this txn. + txnSource uint64 } // ParseFrom decodes the value to get the struct `RawWriteCFValue`. @@ -146,6 +165,10 @@ l_for: switch data[0] { case flagShortValuePrefix: vlen := data[1] + if len(data[2:]) < int(vlen) { + return errors.Annotatef(berrors.ErrInvalidArgument, + "the length of short value is invalid, vlen: %v", int(vlen)) + } v.shortValue = data[2 : vlen+2] data = data[vlen+2:] case flagOverlappedRollback: @@ -157,6 +180,20 @@ l_for: if err != nil { return errors.Annotate(berrors.ErrInvalidArgument, "decode gc fence failed") } + case flagLastChangePrefix: + data, v.lastChangeTs, err = codec.DecodeUint(data[1:]) + if err != nil { + return errors.Annotate(berrors.ErrInvalidArgument, "decode last change ts failed") + } + data, v.versionsToLastChange, err = codec.DecodeUvarint(data) + if err != nil { + return errors.Annotate(berrors.ErrInvalidArgument, "decode versions to last change failed") + } + case flagTxnSourcePrefix: + data, v.txnSource, err = codec.DecodeUvarint(data[1:]) + if err != nil { + return errors.Annotate(berrors.ErrInvalidArgument, "decode txn source failed") + } default: break l_for } @@ -164,6 +201,16 @@ l_for: return nil } +// IsRollback checks whether the value in cf is a `rollback` record. +func (v *RawWriteCFValue) IsRollback() bool { + return v.GetWriteType() == WriteTypeRollback +} + +// IsRollback checks whether the value in cf is a `delete` record. +func (v *RawWriteCFValue) IsDelete() bool { + return v.GetWriteType() == WriteTypeDelete +} + // HasShortValue checks whether short value is stored in write cf. func (v *RawWriteCFValue) HasShortValue() bool { return len(v.shortValue) > 0 @@ -204,5 +251,14 @@ func (v *RawWriteCFValue) EncodeTo() []byte { data = append(data, flagGCFencePrefix) data = codec.EncodeUint(data, v.gcFence) } + if v.lastChangeTs > 0 || v.versionsToLastChange > 0 { + data = append(data, flagLastChangePrefix) + data = codec.EncodeUint(data, v.lastChangeTs) + data = codec.EncodeUvarint(data, v.versionsToLastChange) + } + if v.txnSource > 0 { + data = append(data, flagTxnSourcePrefix) + data = codec.EncodeUvarint(data, v.txnSource) + } return data } diff --git a/br/pkg/stream/meta_kv_test.go b/br/pkg/stream/meta_kv_test.go index eaebf64526243..7a8c5e4fed8b6 100644 --- a/br/pkg/stream/meta_kv_test.go +++ b/br/pkg/stream/meta_kv_test.go @@ -68,29 +68,49 @@ func TestWriteType(t *testing.T) { } func TestWriteCFValueNoShortValue(t *testing.T) { + var ( + ts uint64 = 400036290571534337 + txnSource uint64 = 9527 + ) + buff := make([]byte, 0, 9) - buff = append(buff, byte('P')) - buff = codec.EncodeUvarint(buff, 400036290571534337) + buff = append(buff, WriteTypePut) + buff = codec.EncodeUvarint(buff, ts) + buff = append(buff, flagTxnSourcePrefix) + buff = codec.EncodeUvarint(buff, txnSource) v := new(RawWriteCFValue) err := v.ParseFrom(buff) require.NoError(t, err) + require.False(t, v.IsDelete()) + require.False(t, v.IsRollback()) require.False(t, v.HasShortValue()) + require.False(t, v.hasGCFence) + require.Equal(t, v.lastChangeTs, uint64(0)) + require.Equal(t, v.versionsToLastChange, uint64(0)) + require.Equal(t, v.txnSource, txnSource) encodedBuff := v.EncodeTo() require.True(t, bytes.Equal(buff, encodedBuff)) } func TestWriteCFValueWithShortValue(t *testing.T) { - var ts uint64 = 400036290571534337 - shortValue := []byte("pingCAP") + var ( + ts uint64 = 400036290571534337 + shortValue = []byte("pingCAP") + lastChangeTs uint64 = 9527 + versionsToLastChange uint64 = 95271 + ) buff := make([]byte, 0, 9) - buff = append(buff, byte('P')) + buff = append(buff, WriteTypePut) buff = codec.EncodeUvarint(buff, ts) buff = append(buff, flagShortValuePrefix) buff = append(buff, byte(len(shortValue))) buff = append(buff, shortValue...) + buff = append(buff, flagLastChangePrefix) + buff = codec.EncodeUint(buff, lastChangeTs) + buff = codec.EncodeUvarint(buff, versionsToLastChange) v := new(RawWriteCFValue) err := v.ParseFrom(buff) @@ -99,7 +119,78 @@ func TestWriteCFValueWithShortValue(t *testing.T) { require.True(t, bytes.Equal(v.GetShortValue(), shortValue)) require.False(t, v.hasGCFence) require.False(t, v.hasOverlappedRollback) + require.Equal(t, v.lastChangeTs, lastChangeTs) + require.Equal(t, v.versionsToLastChange, versionsToLastChange) + require.Equal(t, v.txnSource, uint64(0)) data := v.EncodeTo() require.True(t, bytes.Equal(data, buff)) } + +func TestWriteCFValueWithRollback(t *testing.T) { + var ( + ts uint64 = 400036290571534337 + protectedRollbackShortValue = []byte{'P'} + ) + + buff := make([]byte, 0, 9) + buff = append(buff, WriteTypeRollback) + buff = codec.EncodeUvarint(buff, ts) + buff = append(buff, flagShortValuePrefix, byte(len(protectedRollbackShortValue))) + buff = append(buff, protectedRollbackShortValue...) + + v := new(RawWriteCFValue) + err := v.ParseFrom(buff) + require.NoError(t, err) + require.True(t, v.IsRollback()) + require.True(t, v.HasShortValue()) + require.Equal(t, v.GetShortValue(), protectedRollbackShortValue) + require.Equal(t, v.startTs, ts) + require.Equal(t, v.lastChangeTs, uint64(0)) + require.Equal(t, v.versionsToLastChange, uint64(0)) + require.Equal(t, v.txnSource, uint64(0)) + + data := v.EncodeTo() + require.Equal(t, data, buff) +} + +func TestWriteCFValueWithDelete(t *testing.T) { + var ts uint64 = 400036290571534337 + buff := make([]byte, 0, 9) + buff = append(buff, byte('D')) + buff = codec.EncodeUvarint(buff, ts) + + v := new(RawWriteCFValue) + err := v.ParseFrom(buff) + require.NoError(t, err) + require.True(t, v.IsDelete()) + require.False(t, v.HasShortValue()) + + data := v.EncodeTo() + require.Equal(t, data, buff) +} + +func TestWriteCFValueWithGcFence(t *testing.T) { + var ( + ts uint64 = 400036290571534337 + gcFence uint64 = 9527 + ) + + buff := make([]byte, 0, 9) + buff = append(buff, WriteTypePut) + buff = codec.EncodeUvarint(buff, ts) + buff = append(buff, flagOverlappedRollback) + buff = append(buff, flagGCFencePrefix) + buff = codec.EncodeUint(buff, gcFence) + + v := new(RawWriteCFValue) + err := v.ParseFrom(buff) + require.NoError(t, err) + require.Equal(t, v.startTs, ts) + require.True(t, v.hasGCFence) + require.Equal(t, v.gcFence, gcFence) + require.True(t, v.hasOverlappedRollback) + + data := v.EncodeTo() + require.Equal(t, data, buff) +} diff --git a/br/pkg/stream/rewrite_meta_rawkv.go b/br/pkg/stream/rewrite_meta_rawkv.go index 40e76a6130358..7398abdbb2cb9 100644 --- a/br/pkg/stream/rewrite_meta_rawkv.go +++ b/br/pkg/stream/rewrite_meta_rawkv.go @@ -451,13 +451,20 @@ func (sr *SchemasReplace) rewriteValueV2(value []byte, cf string, rewrite func([ return rewriteResult{}, errors.Trace(err) } - if rawWriteCFValue.t == WriteTypeDelete { + if rawWriteCFValue.IsDelete() { return rewriteResult{ NewValue: value, NeedRewrite: true, Deleted: true, }, nil } + if rawWriteCFValue.IsRollback() { + return rewriteResult{ + NewValue: value, + NeedRewrite: true, + Deleted: false, + }, nil + } if !rawWriteCFValue.HasShortValue() { return rewriteResult{ NewValue: value, @@ -467,6 +474,9 @@ func (sr *SchemasReplace) rewriteValueV2(value []byte, cf string, rewrite func([ shortValue, needWrite, err := rewrite(rawWriteCFValue.GetShortValue()) if err != nil { + log.Info("failed to rewrite short value", + zap.ByteString("write-type", []byte{rawWriteCFValue.GetWriteType()}), + zap.Int("short-value-len", len(rawWriteCFValue.GetShortValue()))) return rewriteResult{}, errors.Trace(err) } if !needWrite { diff --git a/br/pkg/stream/stream_mgr.go b/br/pkg/stream/stream_mgr.go index 61c3e6772a431..5ee184ba04f03 100644 --- a/br/pkg/stream/stream_mgr.go +++ b/br/pkg/stream/stream_mgr.go @@ -312,7 +312,6 @@ func FastUnmarshalMetaData( } readPath := path pool.ApplyOnErrorGroup(eg, func() error { - log.Info("fast read meta file from storage", zap.String("path", readPath)) b, err := s.ReadFile(ectx, readPath) if err != nil { log.Error("failed to read file", zap.String("file", readPath)) diff --git a/br/pkg/streamhelper/BUILD.bazel b/br/pkg/streamhelper/BUILD.bazel index 93e13b1f8d543..c18b015e596ea 100644 --- a/br/pkg/streamhelper/BUILD.bazel +++ b/br/pkg/streamhelper/BUILD.bazel @@ -9,10 +9,10 @@ go_library( "advancer_env.go", "client.go", "collector.go", + "flush_subscriber.go", "models.go", "prefix_scanner.go", "regioniter.go", - "tsheap.go", ], importpath = "github.com/pingcap/tidb/br/pkg/streamhelper", visibility = ["//visibility:public"], @@ -21,15 +21,17 @@ go_library( "//br/pkg/logutil", "//br/pkg/redact", "//br/pkg/streamhelper/config", + "//br/pkg/streamhelper/spans", "//br/pkg/utils", "//config", "//kv", "//metrics", "//owner", + "//util/codec", + "//util/engine", "//util/mathutil", "@com_github_gogo_protobuf//proto", "@com_github_golang_protobuf//proto", - "@com_github_google_btree//:btree", "@com_github_google_uuid//:uuid", "@com_github_pingcap_errors//:errors", "@com_github_pingcap_kvproto//pkg/brpb", @@ -41,10 +43,12 @@ go_library( "@com_github_tikv_pd_client//:client", "@io_etcd_go_etcd_client_v3//:client", "@org_golang_google_grpc//:grpc", + "@org_golang_google_grpc//codes", "@org_golang_google_grpc//keepalive", + "@org_golang_google_grpc//status", "@org_golang_x_sync//errgroup", + "@org_uber_go_multierr//:multierr", "@org_uber_go_zap//:zap", - "@org_uber_go_zap//zapcore", ], ) @@ -56,7 +60,7 @@ go_test( "basic_lib_for_test.go", "integration_test.go", "regioniter_test.go", - "tsheap_test.go", + "subscription_test.go", ], flaky = True, race = "on", @@ -67,10 +71,11 @@ go_test( "//br/pkg/logutil", "//br/pkg/redact", "//br/pkg/storage", - "//br/pkg/streamhelper/config", + "//br/pkg/streamhelper/spans", "//br/pkg/utils", "//kv", "//tablecodec", + "//util/codec", "@com_github_pingcap_errors//:errors", "@com_github_pingcap_kvproto//pkg/brpb", "@com_github_pingcap_kvproto//pkg/errorpb", @@ -84,6 +89,7 @@ go_test( "@io_etcd_go_etcd_server_v3//mvcc", "@org_golang_google_grpc//:grpc", "@org_golang_google_grpc//codes", + "@org_golang_google_grpc//metadata", "@org_golang_google_grpc//status", "@org_uber_go_zap//:zap", "@org_uber_go_zap//zapcore", diff --git a/br/pkg/streamhelper/advancer.go b/br/pkg/streamhelper/advancer.go index ac01c5167ffc7..0e28a150cc157 100644 --- a/br/pkg/streamhelper/advancer.go +++ b/br/pkg/streamhelper/advancer.go @@ -3,11 +3,7 @@ package streamhelper import ( - "bytes" "context" - "math" - "reflect" - "sort" "strings" "sync" "time" @@ -17,6 +13,7 @@ import ( "github.com/pingcap/log" "github.com/pingcap/tidb/br/pkg/logutil" "github.com/pingcap/tidb/br/pkg/streamhelper/config" + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" "github.com/pingcap/tidb/br/pkg/utils" "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/metrics" @@ -60,81 +57,31 @@ type CheckpointAdvancer struct { // once tick begin, this should not be changed for now. cfg config.Config - // the cache of region checkpoints. - // so we can advance only ranges with huge gap. - cache CheckpointsCache - - // the internal state of advancer. - state advancerState // the cached last checkpoint. // if no progress, this cache can help us don't to send useless requests. lastCheckpoint uint64 -} - -// advancerState is the sealed type for the state of advancer. -// the advancer has two stage: full scan and update small tree. -type advancerState interface { - // Note: - // Go doesn't support sealed classes or ADTs currently. - // (it can only be used at generic constraints...) - // Leave it empty for now. - // ~*fullScan | ~*updateSmallTree -} - -// fullScan is the initial state of advancer. -// in this stage, we would "fill" the cache: -// insert ranges that union of them become the full range of task. -type fullScan struct { - fullScanTick int -} + checkpoints *spans.ValueSortedFull + checkpointsMu sync.Mutex -// updateSmallTree is the "incremental stage" of advancer. -// we have build a "filled" cache, and we can pop a subrange of it, -// try to advance the checkpoint of those ranges. -type updateSmallTree struct { - consistencyCheckTick int + subscriber *FlushSubscriber + subscriberMu sync.Mutex } // NewCheckpointAdvancer creates a checkpoint advancer with the env. func NewCheckpointAdvancer(env Env) *CheckpointAdvancer { return &CheckpointAdvancer{ - env: env, - cfg: config.Default(), - cache: NewCheckpoints(), - state: &fullScan{}, + env: env, + cfg: config.Default(), } } -// disableCache removes the cache. -// note this won't lock the checkpoint advancer at `fullScan` state forever, -// you may need to change the config `AdvancingByCache`. -func (c *CheckpointAdvancer) disableCache() { - c.cache = NoOPCheckpointCache{} - c.state = &fullScan{} -} - -// enable the cache. -// also check `AdvancingByCache` in the config. -func (c *CheckpointAdvancer) enableCache() { - c.cache = NewCheckpoints() - c.state = &fullScan{} -} - // UpdateConfig updates the config for the advancer. // Note this should be called before starting the loop, because there isn't locks, // TODO: support updating config when advancer starts working. // (Maybe by applying changes at begin of ticking, and add locks.) func (c *CheckpointAdvancer) UpdateConfig(newConf config.Config) { - needRefreshCache := newConf.AdvancingByCache != c.cfg.AdvancingByCache c.cfg = newConf - if needRefreshCache { - if c.cfg.AdvancingByCache { - c.enableCache() - } else { - c.disableCache() - } - } } // UpdateConfigWith updates the config by modifying the current config. @@ -161,7 +108,7 @@ func (c *CheckpointAdvancer) GetCheckpointInRange(ctx context.Context, start, en } log.Debug("scan region", zap.Int("len", len(rs))) for _, r := range rs { - err := collector.collectRegion(r) + err := collector.CollectRegion(r) if err != nil { log.Warn("meet error during getting checkpoint", logutil.ShortError(err)) return err @@ -183,28 +130,24 @@ func (c *CheckpointAdvancer) recordTimeCost(message string, fields ...zap.Field) } // tryAdvance tries to advance the checkpoint ts of a set of ranges which shares the same checkpoint. -func (c *CheckpointAdvancer) tryAdvance(ctx context.Context, rst RangesSharesTS) (err error) { - defer c.recordTimeCost("try advance", zap.Uint64("checkpoint", rst.TS), zap.Int("len", len(rst.Ranges)))() - defer func() { - if err != nil { - log.Warn("failed to advance", logutil.ShortError(err), zap.Object("target", rst.Zap())) - c.cache.InsertRanges(rst) - } - }() +func (c *CheckpointAdvancer) tryAdvance(ctx context.Context, length int, getRange func(int) kv.KeyRange) (err error) { + defer c.recordTimeCost("try advance", zap.Int("len", length))() defer utils.PanicToErr(&err) - ranges := CollapseRanges(len(rst.Ranges), func(i int) kv.KeyRange { - return rst.Ranges[i] - }) - workers := utils.NewWorkerPool(4, "sub ranges") + ranges := spans.Collapse(length, getRange) + workers := utils.NewWorkerPool(uint(config.DefaultMaxConcurrencyAdvance)*4, "sub ranges") eg, cx := errgroup.WithContext(ctx) collector := NewClusterCollector(ctx, c.env) - collector.setOnSuccessHook(c.cache.InsertRange) + collector.SetOnSuccessHook(func(u uint64, kr kv.KeyRange) { + c.checkpointsMu.Lock() + defer c.checkpointsMu.Unlock() + c.checkpoints.Merge(spans.Valued{Key: kr, Value: u}) + }) clampedRanges := utils.IntersectAll(ranges, utils.CloneSlice(c.taskRange)) for _, r := range clampedRanges { r := r workers.ApplyOnErrorGroup(eg, func() (e error) { - defer c.recordTimeCost("get regions in range", zap.Uint64("checkpoint", rst.TS))() + defer c.recordTimeCost("get regions in range")() defer utils.PanicToErr(&e) return c.GetCheckpointInRange(cx, r.StartKey, r.EndKey, collector) }) @@ -214,121 +157,47 @@ func (c *CheckpointAdvancer) tryAdvance(ctx context.Context, rst RangesSharesTS) return err } - result, err := collector.Finish(ctx) + _, err = collector.Finish(ctx) if err != nil { return err } - fr := result.FailureSubRanges - if len(fr) != 0 { - log.Debug("failure regions collected", zap.Int("size", len(fr))) - c.cache.InsertRanges(RangesSharesTS{ - TS: rst.TS, - Ranges: fr, - }) - } return nil } -// CalculateGlobalCheckpointLight tries to advance the global checkpoint by the cache. -func (c *CheckpointAdvancer) CalculateGlobalCheckpointLight(ctx context.Context) (uint64, error) { - log.Info("[log backup advancer hint] advancer with cache: current tree", zap.Stringer("ct", c.cache)) - rsts := c.cache.PopRangesWithGapGT(config.DefaultTryAdvanceThreshold) - if len(rsts) == 0 { - return 0, nil +func tsoBefore(n time.Duration) uint64 { + now := time.Now() + return oracle.ComposeTS(now.UnixMilli()-n.Milliseconds(), 0) +} + +func (c *CheckpointAdvancer) CalculateGlobalCheckpointLight(ctx context.Context, threshold time.Duration) (uint64, error) { + var targets []spans.Valued + c.checkpoints.TraverseValuesLessThan(tsoBefore(threshold), func(v spans.Valued) bool { + targets = append(targets, v) + return true + }) + if len(targets) == 0 { + c.checkpointsMu.Lock() + defer c.checkpointsMu.Unlock() + return c.checkpoints.MinValue(), nil } - samples := rsts - if len(rsts) > 3 { - samples = rsts[:3] + samples := targets + if len(targets) > 3 { + samples = targets[:3] } for _, sample := range samples { - log.Info("[log backup advancer hint] sample range.", zap.Object("range", sample.Zap()), zap.Int("total-len", len(rsts))) + log.Info("[log backup advancer hint] sample range.", zap.Stringer("sample", sample), zap.Int("total-len", len(targets))) } - workers := utils.NewWorkerPool(uint(config.DefaultMaxConcurrencyAdvance), "regions") - eg, cx := errgroup.WithContext(ctx) - for _, rst := range rsts { - rst := rst - workers.ApplyOnErrorGroup(eg, func() (err error) { - return c.tryAdvance(cx, *rst) - }) - } - err := eg.Wait() + err := c.tryAdvance(ctx, len(targets), func(i int) kv.KeyRange { return targets[i].Key }) if err != nil { return 0, err } - ts := c.cache.CheckpointTS() + c.checkpointsMu.Lock() + ts := c.checkpoints.MinValue() + c.checkpointsMu.Unlock() return ts, nil } -// CalculateGlobalCheckpoint calculates the global checkpoint, which won't use the cache. -func (c *CheckpointAdvancer) CalculateGlobalCheckpoint(ctx context.Context) (uint64, error) { - var ( - cp = uint64(math.MaxInt64) - thisRun []kv.KeyRange = c.taskRange - nextRun []kv.KeyRange - ) - defer c.recordTimeCost("record all") - for { - coll := NewClusterCollector(ctx, c.env) - coll.setOnSuccessHook(c.cache.InsertRange) - for _, u := range thisRun { - err := c.GetCheckpointInRange(ctx, u.StartKey, u.EndKey, coll) - if err != nil { - return 0, err - } - } - result, err := coll.Finish(ctx) - if err != nil { - return 0, err - } - log.Debug("full: a run finished", zap.Any("checkpoint", result)) - - nextRun = append(nextRun, result.FailureSubRanges...) - if cp > result.Checkpoint { - cp = result.Checkpoint - } - if len(nextRun) == 0 { - return cp, nil - } - thisRun = nextRun - nextRun = nil - log.Debug("backoffing with subranges", zap.Int("subranges", len(thisRun))) - time.Sleep(c.cfg.BackoffTime) - } -} - -// CollapseRanges collapse ranges overlapping or adjacent. -// Example: -// CollapseRanges({[1, 4], [2, 8], [3, 9]}) == {[1, 9]} -// CollapseRanges({[1, 3], [4, 7], [2, 3]}) == {[1, 3], [4, 7]} -func CollapseRanges(length int, getRange func(int) kv.KeyRange) []kv.KeyRange { - frs := make([]kv.KeyRange, 0, length) - for i := 0; i < length; i++ { - frs = append(frs, getRange(i)) - } - - sort.Slice(frs, func(i, j int) bool { - return bytes.Compare(frs[i].StartKey, frs[j].StartKey) < 0 - }) - - result := make([]kv.KeyRange, 0, len(frs)) - i := 0 - for i < len(frs) { - item := frs[i] - for { - i++ - if i >= len(frs) || (len(item.EndKey) != 0 && bytes.Compare(frs[i].StartKey, item.EndKey) > 0) { - break - } - if len(item.EndKey) != 0 && bytes.Compare(item.EndKey, frs[i].EndKey) < 0 || len(frs[i].EndKey) == 0 { - item.EndKey = frs[i].EndKey - } - } - result = append(result, item) - } - return result -} - func (c *CheckpointAdvancer) consumeAllTask(ctx context.Context, ch <-chan TaskEvent) error { for { select { @@ -414,18 +283,20 @@ func (c *CheckpointAdvancer) onTaskEvent(ctx context.Context, e TaskEvent) error case EventAdd: utils.LogBackupTaskCountInc() c.task = e.Info - c.taskRange = CollapseRanges(len(e.Ranges), func(i int) kv.KeyRange { return e.Ranges[i] }) + c.taskRange = spans.Collapse(len(e.Ranges), func(i int) kv.KeyRange { return e.Ranges[i] }) + c.checkpoints = spans.Sorted(spans.NewFullWith(e.Ranges, 0)) log.Info("added event", zap.Stringer("task", e.Info), zap.Stringer("ranges", logutil.StringifyKeys(c.taskRange))) case EventDel: utils.LogBackupTaskCountDec() c.task = nil c.taskRange = nil - c.state = &fullScan{} + c.checkpoints = nil + // This would be synced by `taskMu`, perhaps we'd better rename that to `tickMu`. + c.subscriber.Clear() if err := c.env.ClearV3GlobalCheckpointForTask(ctx, e.Name); err != nil { log.Warn("failed to clear global checkpoint", logutil.ShortError(err)) } metrics.LastCheckpoint.DeleteLabelValues(e.Name) - c.cache.Clear() case EventErr: return e.Err } @@ -460,58 +331,70 @@ func (c *CheckpointAdvancer) advanceCheckpointBy(ctx context.Context, getCheckpo return nil } -func (c *CheckpointAdvancer) onConsistencyCheckTick(s *updateSmallTree) error { - if s.consistencyCheckTick > 0 { - s.consistencyCheckTick-- +func (c *CheckpointAdvancer) stopSubscriber() { + c.subscriberMu.Lock() + defer c.subscriberMu.Unlock() + c.subscriber.Drop() + c.subscriber = nil +} + +func (c *CheckpointAdvancer) spawnSubscriptionHandler(ctx context.Context) { + c.subscriberMu.Lock() + defer c.subscriberMu.Unlock() + c.subscriber = NewSubscriber(c.env, c.env, WithMasterContext(ctx)) + es := c.subscriber.Events() + + go func() { + for { + select { + case <-ctx.Done(): + return + case event, ok := <-es: + if !ok { + return + } + c.checkpointsMu.Lock() + log.Debug("Accepting region flush event.", + zap.Stringer("range", logutil.StringifyRange(event.Key)), + zap.Uint64("checkpoint", event.Value)) + c.checkpoints.Merge(event) + c.checkpointsMu.Unlock() + } + } + }() +} + +func (c *CheckpointAdvancer) subscribeTick(ctx context.Context) error { + if c.subscriber == nil { return nil } - defer c.recordTimeCost("consistency check")() - err := c.cache.ConsistencyCheck(c.taskRange) - if err != nil { - log.Error("consistency check failed! log backup may lose data! rolling back to full scan for saving.", logutil.ShortError(err)) - c.state = &fullScan{} - return err + if err := c.subscriber.UpdateStoreTopology(ctx); err != nil { + log.Warn("[log backup advancer] Error when updating store topology.", logutil.ShortError(err)) } - log.Debug("consistency check passed.") - s.consistencyCheckTick = config.DefaultConsistencyCheckTick - return nil + c.subscriber.HandleErrors(ctx) + return c.subscriber.PendingErrors() } func (c *CheckpointAdvancer) tick(ctx context.Context) error { c.taskMu.Lock() defer c.taskMu.Unlock() + if c.task == nil { + log.Debug("No tasks yet, skipping advancing.") + return nil + } - switch s := c.state.(type) { - case *fullScan: - if s.fullScanTick > 0 { - s.fullScanTick-- - break - } - if c.task == nil { - log.Debug("No tasks yet, skipping advancing.") - return nil - } - defer func() { - s.fullScanTick = c.cfg.FullScanTick - }() - err := c.advanceCheckpointBy(ctx, c.CalculateGlobalCheckpoint) - if err != nil { - return err - } + threshold := c.Config().GetDefaultStartPollThreshold() + if err := c.subscribeTick(ctx); err != nil { + log.Warn("[log backup advancer] Subscriber meet error, would polling the checkpoint.", logutil.ShortError(err)) + threshold = c.Config().GetSubscriberErrorStartPollThreshold() + } - if c.cfg.AdvancingByCache { - c.state = &updateSmallTree{} - } - case *updateSmallTree: - if err := c.onConsistencyCheckTick(s); err != nil { - return err - } - err := c.advanceCheckpointBy(ctx, c.CalculateGlobalCheckpointLight) - if err != nil { - return err - } - default: - log.Error("Unknown state type, skipping tick", zap.Stringer("type", reflect.TypeOf(c.state))) + err := c.advanceCheckpointBy(ctx, func(ctx context.Context) (uint64, error) { + return c.CalculateGlobalCheckpointLight(ctx, threshold) + }) + if err != nil { + return err } + return nil } diff --git a/br/pkg/streamhelper/advancer_daemon.go b/br/pkg/streamhelper/advancer_daemon.go index 263d3a761b518..10f43e105ccbe 100644 --- a/br/pkg/streamhelper/advancer_daemon.go +++ b/br/pkg/streamhelper/advancer_daemon.go @@ -30,6 +30,7 @@ func (c *CheckpointAdvancer) OnTick(ctx context.Context) (err error) { func (c *CheckpointAdvancer) OnStart(ctx context.Context) { metrics.AdvancerOwner.Set(1.0) c.StartTaskListener(ctx) + c.spawnSubscriptionHandler(ctx) go func() { <-ctx.Done() c.onStop() @@ -43,6 +44,7 @@ func (c *CheckpointAdvancer) Name() string { func (c *CheckpointAdvancer) onStop() { metrics.AdvancerOwner.Set(0.0) + c.stopSubscriber() } func OwnerManagerForLogBackup(ctx context.Context, etcdCli *clientv3.Client) owner.Manager { diff --git a/br/pkg/streamhelper/advancer_env.go b/br/pkg/streamhelper/advancer_env.go index 181d8933449d4..cf27fda7d5c5b 100644 --- a/br/pkg/streamhelper/advancer_env.go +++ b/br/pkg/streamhelper/advancer_env.go @@ -9,6 +9,7 @@ import ( logbackup "github.com/pingcap/kvproto/pkg/logbackuppb" "github.com/pingcap/tidb/br/pkg/utils" "github.com/pingcap/tidb/config" + "github.com/pingcap/tidb/util/engine" pd "github.com/tikv/pd/client" clientv3 "go.etcd.io/etcd/client/v3" "google.golang.org/grpc" @@ -18,7 +19,7 @@ import ( // Env is the interface required by the advancer. type Env interface { // The region scanner provides the region information. - RegionScanner + TiKVClusterMeta // LogBackupService connects to the TiKV, so we can collect the region checkpoints. LogBackupService // StreamMeta connects to the metadata service (normally PD). @@ -48,6 +49,23 @@ func (c PDRegionScanner) RegionScan(ctx context.Context, key []byte, endKey []by return rls, nil } +func (c PDRegionScanner) Stores(ctx context.Context) ([]Store, error) { + res, err := c.Client.GetAllStores(ctx, pd.WithExcludeTombstone()) + if err != nil { + return nil, err + } + r := make([]Store, 0, len(res)) + for _, re := range res { + if !engine.IsTiFlash(re) { + r = append(r, Store{ + BootAt: uint64(re.StartTimestamp), + ID: re.GetId(), + }) + } + } + return r, nil +} + // clusterEnv is the environment for running in the real cluster. type clusterEnv struct { clis *utils.StoreManager diff --git a/br/pkg/streamhelper/advancer_test.go b/br/pkg/streamhelper/advancer_test.go index aeaadf820af7a..0e924a4db8013 100644 --- a/br/pkg/streamhelper/advancer_test.go +++ b/br/pkg/streamhelper/advancer_test.go @@ -11,7 +11,6 @@ import ( "github.com/pingcap/log" "github.com/pingcap/tidb/br/pkg/streamhelper" - "github.com/pingcap/tidb/br/pkg/streamhelper/config" "github.com/pingcap/tidb/kv" "github.com/stretchr/testify/require" "go.uber.org/zap/zapcore" @@ -51,9 +50,6 @@ func TestTick(t *testing.T) { env := &testEnv{fakeCluster: c, testCtx: t} adv := streamhelper.NewCheckpointAdvancer(env) adv.StartTaskListener(ctx) - adv.UpdateConfigWith(func(cac *config.Config) { - cac.FullScanTick = 0 - }) require.NoError(t, adv.OnTick(ctx)) for i := 0; i < 5; i++ { cp := c.advanceCheckpoints() @@ -76,9 +72,6 @@ func TestWithFailure(t *testing.T) { env := &testEnv{fakeCluster: c, testCtx: t} adv := streamhelper.NewCheckpointAdvancer(env) adv.StartTaskListener(ctx) - adv.UpdateConfigWith(func(cac *config.Config) { - cac.FullScanTick = 0 - }) require.NoError(t, adv.OnTick(ctx)) cp := c.advanceCheckpoints() diff --git a/br/pkg/streamhelper/basic_lib_for_test.go b/br/pkg/streamhelper/basic_lib_for_test.go index 9e438c32f0f1f..882ac69ede385 100644 --- a/br/pkg/streamhelper/basic_lib_for_test.go +++ b/br/pkg/streamhelper/basic_lib_for_test.go @@ -7,6 +7,7 @@ import ( "context" "encoding/hex" "fmt" + "io" "math" "math/rand" "sort" @@ -21,10 +22,15 @@ import ( "github.com/pingcap/kvproto/pkg/metapb" "github.com/pingcap/log" "github.com/pingcap/tidb/br/pkg/streamhelper" + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" "github.com/pingcap/tidb/br/pkg/utils" "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/util/codec" "go.uber.org/zap" "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/metadata" + "google.golang.org/grpc/status" ) type flushSimulator struct { @@ -58,7 +64,7 @@ func (c *flushSimulator) fork() flushSimulator { } type region struct { - rng kv.KeyRange + rng spans.Span leader uint64 epoch uint64 id uint64 @@ -70,6 +76,11 @@ type region struct { type fakeStore struct { id uint64 regions map[uint64]*region + + clientMu sync.Mutex + supportsSub bool + bootstrapAt uint64 + fsub func(logbackup.SubscribeFlushEventResponse) } type fakeCluster struct { @@ -82,16 +93,6 @@ type fakeCluster struct { onGetClient func(uint64) error } -func overlaps(a, b kv.KeyRange) bool { - if len(b.EndKey) == 0 { - return len(a.EndKey) == 0 || bytes.Compare(a.EndKey, b.StartKey) > 0 - } - if len(a.EndKey) == 0 { - return len(b.EndKey) == 0 || bytes.Compare(b.EndKey, a.StartKey) > 0 - } - return bytes.Compare(a.StartKey, b.EndKey) < 0 && bytes.Compare(b.StartKey, a.EndKey) < 0 -} - func (r *region) splitAt(newID uint64, k string) *region { newRegion := ®ion{ rng: kv.KeyRange{StartKey: []byte(k), EndKey: r.rng.EndKey}, @@ -111,6 +112,77 @@ func (r *region) flush() { r.fsim.flushedEpoch.Store(r.epoch) } +type trivialFlushStream struct { + c <-chan logbackup.SubscribeFlushEventResponse + cx context.Context +} + +func (t trivialFlushStream) Recv() (*logbackup.SubscribeFlushEventResponse, error) { + select { + case item, ok := <-t.c: + if !ok { + return nil, io.EOF + } + return &item, nil + case <-t.cx.Done(): + select { + case item, ok := <-t.c: + if !ok { + return nil, io.EOF + } + return &item, nil + default: + } + return nil, t.cx.Err() + } +} + +func (t trivialFlushStream) Header() (metadata.MD, error) { + return make(metadata.MD), nil +} + +func (t trivialFlushStream) Trailer() metadata.MD { + return make(metadata.MD) +} + +func (t trivialFlushStream) CloseSend() error { + return nil +} + +func (t trivialFlushStream) Context() context.Context { + return t.cx +} + +func (t trivialFlushStream) SendMsg(m interface{}) error { + return nil +} + +func (t trivialFlushStream) RecvMsg(m interface{}) error { + return nil +} + +func (f *fakeStore) SubscribeFlushEvent(ctx context.Context, in *logbackup.SubscribeFlushEventRequest, opts ...grpc.CallOption) (logbackup.LogBackup_SubscribeFlushEventClient, error) { + f.clientMu.Lock() + defer f.clientMu.Unlock() + if !f.supportsSub { + return nil, status.Error(codes.Unimplemented, "meow?") + } + + ch := make(chan logbackup.SubscribeFlushEventResponse, 1024) + f.fsub = func(glftrr logbackup.SubscribeFlushEventResponse) { + ch <- glftrr + } + return trivialFlushStream{c: ch, cx: ctx}, nil +} + +func (f *fakeStore) SetSupportFlushSub(b bool) { + f.clientMu.Lock() + defer f.clientMu.Unlock() + + f.bootstrapAt += 1 + f.supportsSub = b +} + func (f *fakeStore) GetLastFlushTSOfRegion(ctx context.Context, in *logbackup.GetLastFlushTSOfRegionRequest, opts ...grpc.CallOption) (*logbackup.GetLastFlushTSOfRegionResponse, error) { resp := &logbackup.GetLastFlushTSOfRegionResponse{ Checkpoints: []*logbackup.RegionCheckpoint{}, @@ -174,7 +246,7 @@ func (f *fakeCluster) RegionScan(ctx context.Context, key []byte, endKey []byte, result := make([]streamhelper.RegionWithLeader, 0, limit) for _, region := range f.regions { - if overlaps(kv.KeyRange{StartKey: key, EndKey: endKey}, region.rng) && len(result) < limit { + if spans.Overlaps(kv.KeyRange{StartKey: key, EndKey: endKey}, region.rng) && len(result) < limit { regionInfo := streamhelper.RegionWithLeader{ Region: &metapb.Region{ Id: region.id, @@ -210,6 +282,15 @@ func (f *fakeCluster) GetLogBackupClient(ctx context.Context, storeID uint64) (l return cli, nil } +// Stores returns the store metadata from the cluster. +func (f *fakeCluster) Stores(ctx context.Context) ([]streamhelper.Store, error) { + r := make([]streamhelper.Store, 0, len(f.stores)) + for id, s := range f.stores { + r = append(r, streamhelper.Store{ID: id, BootAt: s.bootstrapAt}) + } + return r, nil +} + func (f *fakeCluster) findRegionById(rid uint64) *region { for _, r := range f.regions { if r.id == rid { @@ -304,6 +385,34 @@ func (f *fakeCluster) splitAndScatter(keys ...string) { } } +// Remove a store. +// Note: this won't add new peer for regions from the store. +func (f *fakeCluster) removeStore(id uint64) { + f.mu.Lock() + defer f.mu.Unlock() + + s := f.stores[id] + for _, r := range s.regions { + if r.leader == id { + f.updateRegion(r.id, func(r *region) { + ps := f.findPeers(r.id) + for _, p := range ps { + if p != r.leader { + log.Info("remove store: transforming leader", + zap.Uint64("region", r.id), + zap.Uint64("new-leader", p), + zap.Uint64("old-leader", r.leader)) + r.leader = p + break + } + } + }) + } + } + + delete(f.stores, id) +} + // a stub once in the future we want to make different stores hold different region instances. func (f *fakeCluster) updateRegion(rid uint64, mut func(*region)) { r := f.findRegionById(rid) @@ -362,7 +471,7 @@ func createFakeCluster(t *testing.T, n int, simEnabled bool) *fakeCluster { } func (r *region) String() string { - return fmt.Sprintf("%d(%d):[%s,%s);%dL%dF%d", + return fmt.Sprintf("%d(%d):[%s, %s);%dL%dF%d", r.id, r.epoch, hex.EncodeToString(r.rng.StartKey), @@ -382,14 +491,24 @@ func (f *fakeStore) String() string { } func (f *fakeCluster) flushAll() { - for _, r := range f.regions { + for _, r := range f.stores { r.flush() } } func (f *fakeCluster) flushAllExcept(keys ...string) { + for _, s := range f.stores { + s.flushExcept(keys...) + } +} + +func (f *fakeStore) flushExcept(keys ...string) { + resp := make([]*logbackup.FlushEvent, 0, len(f.regions)) outer: for _, r := range f.regions { + if r.leader != f.id { + continue + } // Note: can we make it faster? for _, key := range keys { if utils.CompareBytesExt(r.rng.StartKey, false, []byte(key), false) <= 0 && @@ -397,16 +516,25 @@ outer: continue outer } } - r.flush() - } -} - -func (f *fakeStore) flush() { - for _, r := range f.regions { if r.leader == f.id { r.flush() + resp = append(resp, &logbackup.FlushEvent{ + StartKey: codec.EncodeBytes(nil, r.rng.StartKey), + EndKey: codec.EncodeBytes(nil, r.rng.EndKey), + Checkpoint: r.checkpoint.Load(), + }) } } + + if f.fsub != nil { + f.fsub(logbackup.SubscribeFlushEventResponse{ + Events: resp, + }) + } +} + +func (f *fakeStore) flush() { + f.flushExcept() } func (f *fakeCluster) String() string { diff --git a/br/pkg/streamhelper/collector.go b/br/pkg/streamhelper/collector.go index ad53acb03b577..bc9285e05e8a8 100644 --- a/br/pkg/streamhelper/collector.go +++ b/br/pkg/streamhelper/collector.go @@ -266,13 +266,13 @@ func NewClusterCollector(ctx context.Context, srv LogBackupService) *clusterColl } } -// setOnSuccessHook sets the hook when getting checkpoint of some region. -func (c *clusterCollector) setOnSuccessHook(hook onSuccessHook) { +// SetOnSuccessHook sets the hook when getting checkpoint of some region. +func (c *clusterCollector) SetOnSuccessHook(hook onSuccessHook) { c.onSuccess = hook } -// collectRegion adds a region to the collector. -func (c *clusterCollector) collectRegion(r RegionWithLeader) error { +// CollectRegion adds a region to the collector. +func (c *clusterCollector) CollectRegion(r RegionWithLeader) error { c.mu.Lock() defer c.mu.Unlock() if c.masterCtx.Err() != nil { diff --git a/br/pkg/streamhelper/config/advancer_conf.go b/br/pkg/streamhelper/config/advancer_conf.go index 548ea2472b172..10a645f8721e7 100644 --- a/br/pkg/streamhelper/config/advancer_conf.go +++ b/br/pkg/streamhelper/config/advancer_conf.go @@ -9,13 +9,14 @@ import ( ) const ( - flagBackoffTime = "backoff-time" - flagTickInterval = "tick-interval" - flagFullScanDiffTick = "full-scan-tick" - flagAdvancingByCache = "advancing-by-cache" + flagBackoffTime = "backoff-time" + flagTickInterval = "tick-interval" + flagFullScanDiffTick = "full-scan-tick" + flagAdvancingByCache = "advancing-by-cache" + flagTryAdvanceThreshold = "try-advance-threshold" DefaultConsistencyCheckTick = 5 - DefaultTryAdvanceThreshold = 108 * time.Second + DefaultTryAdvanceThreshold = 9 * time.Minute DefaultBackOffTime = 5 * time.Second DefaultTickInterval = 12 * time.Second DefaultFullScanTick = 4 @@ -31,27 +32,21 @@ type Config struct { BackoffTime time.Duration `toml:"backoff-time" json:"backoff-time"` // The gap between calculating checkpoints. TickDuration time.Duration `toml:"tick-interval" json:"tick-interval"` - // The backoff time of full scan. - FullScanTick int `toml:"full-scan-tick" json:"full-scan-tick"` - - // Whether enable the optimization -- use a cached heap to advancing the global checkpoint. - // This may reduce the gap of checkpoint but may cost more CPU. - AdvancingByCache bool `toml:"advancing-by-cache" json:"advancing-by-cache"` + // The threshold for polling TiKV for checkpoint of some range. + TryAdvanceThreshold time.Duration `toml:"try-advance-threshold" json:"try-advance-threshold"` } func DefineFlagsForCheckpointAdvancerConfig(f *pflag.FlagSet) { f.Duration(flagBackoffTime, DefaultBackOffTime, "The gap between two retries.") f.Duration(flagTickInterval, DefaultTickInterval, "From how long we trigger the tick (advancing the checkpoint).") - f.Bool(flagAdvancingByCache, DefaultAdvanceByCache, "Whether enable the optimization -- use a cached heap to advancing the global checkpoint.") - f.Int(flagFullScanDiffTick, DefaultFullScanTick, "The backoff of full scan.") + f.Duration(flagTryAdvanceThreshold, DefaultTryAdvanceThreshold, "If the checkpoint lag is greater than how long, we would try to poll TiKV for checkpoints.") } func Default() Config { return Config{ - BackoffTime: DefaultBackOffTime, - TickDuration: DefaultTickInterval, - FullScanTick: DefaultFullScanTick, - AdvancingByCache: DefaultAdvanceByCache, + BackoffTime: DefaultBackOffTime, + TickDuration: DefaultTickInterval, + TryAdvanceThreshold: DefaultTryAdvanceThreshold, } } @@ -65,13 +60,21 @@ func (conf *Config) GetFromFlags(f *pflag.FlagSet) error { if err != nil { return err } - conf.FullScanTick, err = f.GetInt(flagFullScanDiffTick) - if err != nil { - return err - } - conf.AdvancingByCache, err = f.GetBool(flagAdvancingByCache) + conf.TryAdvanceThreshold, err = f.GetDuration(flagTryAdvanceThreshold) if err != nil { return err } return nil } + +// GetDefaultStartPollThreshold returns the threshold of begin polling the checkpoint +// in the normal condition (the subscribe manager is available.) +func (conf Config) GetDefaultStartPollThreshold() time.Duration { + return conf.TryAdvanceThreshold +} + +// GetSubscriberErrorStartPollThreshold returns the threshold of begin polling the checkpoint +// when the subscriber meets error. +func (conf Config) GetSubscriberErrorStartPollThreshold() time.Duration { + return conf.TryAdvanceThreshold / 5 +} diff --git a/br/pkg/streamhelper/flush_subscriber.go b/br/pkg/streamhelper/flush_subscriber.go new file mode 100644 index 0000000000000..64607e68858f8 --- /dev/null +++ b/br/pkg/streamhelper/flush_subscriber.go @@ -0,0 +1,327 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package streamhelper + +import ( + "context" + "io" + "strconv" + "sync" + "time" + + "github.com/google/uuid" + "github.com/pingcap/errors" + logbackup "github.com/pingcap/kvproto/pkg/logbackuppb" + "github.com/pingcap/log" + "github.com/pingcap/tidb/br/pkg/logutil" + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" + "github.com/pingcap/tidb/metrics" + "github.com/pingcap/tidb/util/codec" + "go.uber.org/multierr" + "go.uber.org/zap" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" +) + +// FlushSubscriber maintains the state of subscribing to the cluster. +type FlushSubscriber struct { + dialer LogBackupService + cluster TiKVClusterMeta + + // Current connections. + subscriptions map[uint64]*subscription + // The output channel. + eventsTunnel chan spans.Valued + // The background context for subscribes. + masterCtx context.Context +} + +// SubscriberConfig is a config which cloud be applied into the subscriber. +type SubscriberConfig func(*FlushSubscriber) + +// WithMasterContext sets the "master context" for the subscriber, +// that context would be the "background" context for every subtasks created by the subscription manager. +func WithMasterContext(ctx context.Context) SubscriberConfig { + return func(fs *FlushSubscriber) { fs.masterCtx = ctx } +} + +// NewSubscriber creates a new subscriber via the environment and optional configs. +func NewSubscriber(dialer LogBackupService, cluster TiKVClusterMeta, config ...SubscriberConfig) *FlushSubscriber { + subs := &FlushSubscriber{ + dialer: dialer, + cluster: cluster, + + subscriptions: map[uint64]*subscription{}, + eventsTunnel: make(chan spans.Valued, 1024), + masterCtx: context.Background(), + } + + for _, c := range config { + c(subs) + } + + return subs +} + +// UpdateStoreTopology fetches the current store topology and try to adapt the subscription state with it. +func (f *FlushSubscriber) UpdateStoreTopology(ctx context.Context) error { + stores, err := f.cluster.Stores(ctx) + if err != nil { + return errors.Annotate(err, "failed to get store list") + } + + storeSet := map[uint64]struct{}{} + for _, store := range stores { + sub, ok := f.subscriptions[store.ID] + if !ok { + f.addSubscription(ctx, store) + f.subscriptions[store.ID].connect(f.masterCtx, f.dialer) + } else if sub.storeBootAt != store.BootAt { + sub.storeBootAt = store.BootAt + sub.connect(f.masterCtx, f.dialer) + } + storeSet[store.ID] = struct{}{} + } + + for id := range f.subscriptions { + _, ok := storeSet[id] + if !ok { + f.removeSubscription(id) + } + } + return nil +} + +// Clear clears all the subscriptions. +func (f *FlushSubscriber) Clear() { + log.Info("[log backup flush subscriber] Clearing.") + for id := range f.subscriptions { + f.removeSubscription(id) + } +} + +// Drop terminates the lifetime of the subscriber. +// This subscriber would be no more usable. +func (f *FlushSubscriber) Drop() { + f.Clear() + close(f.eventsTunnel) +} + +// HandleErrors execute the handlers over all pending errors. +// Note that the handler may cannot handle the pending errors, at that time, +// you can fetch the errors via `PendingErrors` call. +func (f *FlushSubscriber) HandleErrors(ctx context.Context) { + for id, sub := range f.subscriptions { + err := sub.loadError() + if err != nil { + retry := f.canBeRetried(err) + log.Warn("[log backup flush subscriber] Meet error.", logutil.ShortError(err), zap.Bool("can-retry?", retry), zap.Uint64("store", id)) + if retry { + sub.connect(f.masterCtx, f.dialer) + } + } + } +} + +// Events returns the output channel of the events. +func (f *FlushSubscriber) Events() <-chan spans.Valued { + return f.eventsTunnel +} + +type eventStream = logbackup.LogBackup_SubscribeFlushEventClient + +type joinHandle <-chan struct{} + +func (jh joinHandle) WaitTimeOut(dur time.Duration) { + var t <-chan time.Time + if dur > 0 { + t = time.After(dur) + } + select { + case <-jh: + case <-t: + log.Warn("join handle timed out.") + } +} + +func spawnJoinable(f func()) joinHandle { + c := make(chan struct{}) + go func() { + defer close(c) + f() + }() + return c +} + +// subscription is the state of subscription of one store. +// initially, it is IDLE, where cancel == nil. +// once `connect` called, it goto CONNECTED, where cancel != nil and err == nil. +// once some error (both foreground or background) happens, it goto ERROR, where err != nil. +type subscription struct { + // the handle to cancel the worker goroutine. + cancel context.CancelFunc + // the handle to wait until the worker goroutine exits. + background joinHandle + errMu sync.Mutex + err error + + // Immutable state. + storeID uint64 + // We record start bootstrap time and once a store restarts + // we need to try reconnect even there is a error cannot be retry. + storeBootAt uint64 + output chan<- spans.Valued +} + +func (s *subscription) emitError(err error) { + s.errMu.Lock() + defer s.errMu.Unlock() + + s.err = err +} + +func (s *subscription) loadError() error { + s.errMu.Lock() + defer s.errMu.Unlock() + + return s.err +} + +func (s *subscription) clearError() { + s.errMu.Lock() + defer s.errMu.Unlock() + + s.err = nil +} + +func newSubscription(toStore Store, output chan<- spans.Valued) *subscription { + return &subscription{ + storeID: toStore.ID, + storeBootAt: toStore.BootAt, + output: output, + } +} + +func (s *subscription) connect(ctx context.Context, dialer LogBackupService) { + err := s.doConnect(ctx, dialer) + if err != nil { + s.emitError(err) + } +} + +func (s *subscription) doConnect(ctx context.Context, dialer LogBackupService) error { + log.Info("[log backup subscription manager] Adding subscription.", zap.Uint64("store", s.storeID), zap.Uint64("boot", s.storeBootAt)) + s.clearError() + s.close() + + c, err := dialer.GetLogBackupClient(ctx, s.storeID) + if err != nil { + return err + } + cx, cancel := context.WithCancel(ctx) + cli, err := c.SubscribeFlushEvent(cx, &logbackup.SubscribeFlushEventRequest{ + ClientId: uuid.NewString(), + }) + if err != nil { + cancel() + return err + } + s.cancel = cancel + s.background = spawnJoinable(func() { s.listenOver(cli) }) + return nil +} + +func (s *subscription) close() { + if s.cancel != nil { + s.cancel() + s.background.WaitTimeOut(1 * time.Minute) + } + // HACK: don't close the internal channel here, + // because it is a ever-sharing channel. +} + +func (s *subscription) listenOver(cli eventStream) { + storeID := s.storeID + log.Info("[log backup flush subscriber] Listen starting.", zap.Uint64("store", storeID)) + for { + // Shall we use RecvMsg for better performance? + // Note that the spans.Full requires the input slice be immutable. + msg, err := cli.Recv() + if err != nil { + log.Info("[log backup flush subscriber] Listen stopped.", zap.Uint64("store", storeID), logutil.ShortError(err)) + if err == io.EOF || err == context.Canceled { + return + } + s.emitError(errors.Annotatef(err, "while receiving from store id %d", storeID)) + return + } + + for _, m := range msg.Events { + start, err := decodeKey(m.StartKey) + if err != nil { + log.Warn("start key not encoded, skipping", logutil.Key("event", m.StartKey), logutil.ShortError(err)) + continue + } + end, err := decodeKey(m.EndKey) + if err != nil { + log.Warn("end key not encoded, skipping", logutil.Key("event", m.EndKey), logutil.ShortError(err)) + continue + } + s.output <- spans.Valued{ + Key: spans.Span{ + StartKey: start, + EndKey: end, + }, + Value: m.Checkpoint, + } + } + metrics.RegionCheckpointSubscriptionEvent.WithLabelValues(strconv.Itoa(int(storeID))).Add(float64(len(msg.Events))) + } +} + +func (f *FlushSubscriber) addSubscription(ctx context.Context, toStore Store) { + f.subscriptions[toStore.ID] = newSubscription(toStore, f.eventsTunnel) +} + +func (f *FlushSubscriber) removeSubscription(toStore uint64) { + subs, ok := f.subscriptions[toStore] + if ok { + log.Info("[log backup subscription manager] Removing subscription.", zap.Uint64("store", toStore)) + subs.close() + delete(f.subscriptions, toStore) + } +} + +// decodeKey decodes the key from TiKV, because the region range is encoded in TiKV. +func decodeKey(key []byte) ([]byte, error) { + if len(key) == 0 { + return key, nil + } + // Ignore the timestamp... + _, data, err := codec.DecodeBytes(key, nil) + if err != nil { + return key, err + } + return data, err +} + +func (f *FlushSubscriber) canBeRetried(err error) bool { + for _, e := range multierr.Errors(errors.Cause(err)) { + s := status.Convert(e) + // Is there any other error cannot be retried? + if s.Code() == codes.Unimplemented { + return false + } + } + return true +} + +func (f *FlushSubscriber) PendingErrors() error { + var allErr error + for _, s := range f.subscriptions { + if err := s.loadError(); err != nil { + allErr = multierr.Append(allErr, errors.Annotatef(err, "store %d has error", s.storeID)) + } + } + return allErr +} diff --git a/br/pkg/streamhelper/regioniter.go b/br/pkg/streamhelper/regioniter.go index 9dc75e38553fc..239c710db1ba4 100644 --- a/br/pkg/streamhelper/regioniter.go +++ b/br/pkg/streamhelper/regioniter.go @@ -28,14 +28,22 @@ type RegionWithLeader struct { Leader *metapb.Peer } -type RegionScanner interface { +type TiKVClusterMeta interface { // RegionScan gets a list of regions, starts from the region that contains key. // Limit limits the maximum number of regions returned. RegionScan(ctx context.Context, key, endKey []byte, limit int) ([]RegionWithLeader, error) + + // Stores returns the store metadata from the cluster. + Stores(ctx context.Context) ([]Store, error) +} + +type Store struct { + ID uint64 + BootAt uint64 } type RegionIter struct { - cli RegionScanner + cli TiKVClusterMeta startKey, endKey []byte currentStartKey []byte // When the endKey become "", we cannot check whether the scan is done by @@ -57,7 +65,7 @@ func (r *RegionIter) String() string { } // IterateRegion creates an iterater over the region range. -func IterateRegion(cli RegionScanner, startKey, endKey []byte) *RegionIter { +func IterateRegion(cli TiKVClusterMeta, startKey, endKey []byte) *RegionIter { return &RegionIter{ cli: cli, startKey: startKey, diff --git a/br/pkg/streamhelper/regioniter_test.go b/br/pkg/streamhelper/regioniter_test.go index 04ccc04da8a66..1c0d6a28ab0fe 100644 --- a/br/pkg/streamhelper/regioniter_test.go +++ b/br/pkg/streamhelper/regioniter_test.go @@ -13,8 +13,11 @@ import ( "github.com/pingcap/tidb/br/pkg/logutil" "github.com/pingcap/tidb/br/pkg/redact" "github.com/pingcap/tidb/br/pkg/streamhelper" + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" "github.com/pingcap/tidb/kv" "github.com/stretchr/testify/require" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" ) type constantRegions []streamhelper.RegionWithLeader @@ -55,7 +58,7 @@ func (c constantRegions) String() string { func (c constantRegions) RegionScan(ctx context.Context, key []byte, endKey []byte, limit int) ([]streamhelper.RegionWithLeader, error) { result := make([]streamhelper.RegionWithLeader, 0, limit) for _, region := range c { - if overlaps(kv.KeyRange{StartKey: key, EndKey: endKey}, kv.KeyRange{StartKey: region.Region.StartKey, EndKey: region.Region.EndKey}) && len(result) < limit { + if spans.Overlaps(kv.KeyRange{StartKey: key, EndKey: endKey}, kv.KeyRange{StartKey: region.Region.StartKey, EndKey: region.Region.EndKey}) && len(result) < limit { result = append(result, region) } else if bytes.Compare(region.Region.StartKey, key) > 0 { break @@ -66,6 +69,11 @@ func (c constantRegions) RegionScan(ctx context.Context, key []byte, endKey []by return result, nil } +// Stores returns the store metadata from the cluster. +func (c constantRegions) Stores(ctx context.Context) ([]streamhelper.Store, error) { + return nil, status.Error(codes.Unimplemented, "Unsupported operation") +} + func makeSubrangeRegions(keys ...string) constantRegions { if len(keys) == 0 { return nil diff --git a/br/pkg/streamhelper/spans/BUILD.bazel b/br/pkg/streamhelper/spans/BUILD.bazel new file mode 100644 index 0000000000000..899f6f6ade6b1 --- /dev/null +++ b/br/pkg/streamhelper/spans/BUILD.bazel @@ -0,0 +1,31 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "spans", + srcs = [ + "sorted.go", + "utils.go", + "value_sorted.go", + ], + importpath = "github.com/pingcap/tidb/br/pkg/streamhelper/spans", + visibility = ["//visibility:public"], + deps = [ + "//br/pkg/logutil", + "//br/pkg/utils", + "//kv", + "@com_github_google_btree//:btree", + ], +) + +go_test( + name = "spans_test", + srcs = [ + "sorted_test.go", + "utils_test.go", + "value_sorted_test.go", + ], + deps = [ + ":spans", + "@com_github_stretchr_testify//require", + ], +) diff --git a/br/pkg/streamhelper/spans/sorted.go b/br/pkg/streamhelper/spans/sorted.go new file mode 100644 index 0000000000000..a15138bf8124c --- /dev/null +++ b/br/pkg/streamhelper/spans/sorted.go @@ -0,0 +1,186 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package spans + +import ( + "bytes" + "fmt" + + "github.com/google/btree" + "github.com/pingcap/tidb/br/pkg/logutil" + "github.com/pingcap/tidb/br/pkg/utils" + "github.com/pingcap/tidb/kv" +) + +// Value is the value type of stored in the span tree. +type Value = uint64 + +// join finds the upper bound of two values. +func join(a, b Value) Value { + if a > b { + return a + } + return b +} + +// Span is the type of an adjacent sub key space. +type Span = kv.KeyRange + +// Valued is span binding to a value, which is the entry type of span tree. +type Valued struct { + Key Span + Value Value +} + +func (r Valued) String() string { + return fmt.Sprintf("(%s, %d)", logutil.StringifyRange(r.Key), r.Value) +} + +func (r Valued) Less(other btree.Item) bool { + return bytes.Compare(r.Key.StartKey, other.(Valued).Key.StartKey) < 0 +} + +// ValuedFull represents a set of valued ranges, which doesn't overlap and union of them all is the full key space. +type ValuedFull struct { + inner *btree.BTree +} + +// NewFullWith creates a set of a subset of spans. +func NewFullWith(initSpans []Span, init Value) *ValuedFull { + t := btree.New(16) + for _, r := range Collapse(len(initSpans), func(i int) Span { return initSpans[i] }) { + t.ReplaceOrInsert(Valued{Value: init, Key: r}) + } + return &ValuedFull{inner: t} +} + +// Merge merges a new interval into the span set. The value of overlapped +// part with other spans would be "merged" by the `join` function. +// An example: +/* +|___________________________________________________________________________| +^-----------------^-----------------^-----------------^---------------------^ +| c = 42 | c = 43 | c = 45 | c = 41 | + ^--------------------------^ + merge(| c = 44 |) +Would Give: +|___________________________________________________________________________| +^-----------------^----^------------^-------------^---^---------------------^ +| c = 42 | 43 | c = 44 | c = 45 | c = 41 | + |-------------| + Unchanged, because 44 < 45. +*/ +func (f *ValuedFull) Merge(val Valued) { + overlaps := make([]Valued, 0, 16) + f.overlapped(val.Key, &overlaps) + f.mergeWithOverlap(val, overlaps, nil) +} + +// Traverse traverses all ranges by order. +func (f *ValuedFull) Traverse(m func(Valued) bool) { + f.inner.Ascend(func(item btree.Item) bool { + return m(item.(Valued)) + }) +} + +func (f *ValuedFull) mergeWithOverlap(val Valued, overlapped []Valued, newItems *[]Valued) { + // There isn't any range overlaps with the input range, perhaps the input range is empty. + // do nothing for this case. + if len(overlapped) == 0 { + return + } + + for _, r := range overlapped { + f.inner.Delete(r) + // Assert All overlapped ranges are deleted. + } + + var ( + initialized = false + collected Valued + rightTrail *Valued + flushCollected = func() { + if initialized { + f.inner.ReplaceOrInsert(collected) + if newItems != nil { + *newItems = append(*newItems, collected) + } + } + } + emitToCollected = func(rng Valued, standalone bool) { + merged := rng.Value + if !standalone { + merged = join(val.Value, rng.Value) + } + if !initialized { + collected = rng + collected.Value = merged + initialized = true + return + } + if merged == collected.Value && utils.CompareBytesExt(collected.Key.EndKey, true, rng.Key.StartKey, false) == 0 { + collected.Key.EndKey = rng.Key.EndKey + } else { + flushCollected() + collected = Valued{ + Key: rng.Key, + Value: merged, + } + } + } + ) + + leftmost := overlapped[0] + if bytes.Compare(leftmost.Key.StartKey, val.Key.StartKey) < 0 { + emitToCollected(Valued{ + Key: Span{StartKey: leftmost.Key.StartKey, EndKey: val.Key.StartKey}, + Value: leftmost.Value, + }, true) + overlapped[0].Key.StartKey = val.Key.StartKey + } + + rightmost := overlapped[len(overlapped)-1] + if utils.CompareBytesExt(rightmost.Key.EndKey, true, val.Key.EndKey, true) > 0 { + rightTrail = &Valued{ + Key: Span{StartKey: val.Key.EndKey, EndKey: rightmost.Key.EndKey}, + Value: rightmost.Value, + } + overlapped[len(overlapped)-1].Key.EndKey = val.Key.EndKey + } + + for _, rng := range overlapped { + emitToCollected(rng, false) + } + + if rightTrail != nil { + emitToCollected(*rightTrail, true) + } + + flushCollected() +} + +// overlapped inserts the overlapped ranges of the span into the `result` slice. +func (f *ValuedFull) overlapped(k Span, result *[]Valued) { + var ( + first Span + hasFirst bool + ) + // Firstly, let's find whether there is a overlapped region with less start key. + f.inner.DescendLessOrEqual(Valued{Key: k}, func(item btree.Item) bool { + first = item.(Valued).Key + hasFirst = true + return false + }) + if !hasFirst || !Overlaps(first, k) { + first = k + } + + f.inner.AscendGreaterOrEqual(Valued{Key: first}, func(item btree.Item) bool { + r := item.(Valued) + if !Overlaps(r.Key, k) { + return false + } + *result = append(*result, r) + return true + }) +} diff --git a/br/pkg/streamhelper/spans/sorted_test.go b/br/pkg/streamhelper/spans/sorted_test.go new file mode 100644 index 0000000000000..c56c2236a6690 --- /dev/null +++ b/br/pkg/streamhelper/spans/sorted_test.go @@ -0,0 +1,211 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package spans_test + +import ( + "fmt" + "testing" + + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" + "github.com/stretchr/testify/require" +) + +func s(a, b string) spans.Span { + return spans.Span{ + StartKey: []byte(a), + EndKey: []byte(b), + } +} + +func kv(s spans.Span, v spans.Value) spans.Valued { + return spans.Valued{ + Key: s, + Value: v, + } +} + +func TestBasic(t *testing.T) { + type Case struct { + InputSequence []spans.Valued + Result []spans.Valued + } + + run := func(t *testing.T, c Case) { + full := spans.NewFullWith(spans.Full(), 0) + fmt.Println(t.Name()) + for _, i := range c.InputSequence { + full.Merge(i) + var result []spans.Valued + full.Traverse(func(v spans.Valued) bool { + result = append(result, v) + return true + }) + fmt.Printf("%s -> %s\n", i, result) + } + + var result []spans.Valued + full.Traverse(func(v spans.Valued) bool { + result = append(result, v) + return true + }) + + require.True(t, spans.ValuedSetEquals(result, c.Result), "%s\nvs\n%s", result, c.Result) + } + + cases := []Case{ + { + InputSequence: []spans.Valued{ + kv(s("0001", "0002"), 1), + kv(s("0002", "0003"), 2), + }, + Result: []spans.Valued{ + kv(s("", "0001"), 0), + kv(s("0001", "0002"), 1), + kv(s("0002", "0003"), 2), + kv(s("0003", ""), 0), + }, + }, + { + InputSequence: []spans.Valued{ + kv(s("0001", "0002"), 1), + kv(s("0002", "0003"), 2), + kv(s("0001", "0003"), 4), + }, + Result: []spans.Valued{ + kv(s("", "0001"), 0), + kv(s("0001", "0003"), 4), + kv(s("0003", ""), 0), + }, + }, + { + InputSequence: []spans.Valued{ + kv(s("0001", "0004"), 3), + kv(s("0004", "0008"), 5), + kv(s("0001", "0007"), 4), + kv(s("", "0002"), 2), + }, + Result: []spans.Valued{ + kv(s("", "0001"), 2), + kv(s("0001", "0004"), 4), + kv(s("0004", "0008"), 5), + kv(s("0008", ""), 0), + }, + }, + { + InputSequence: []spans.Valued{ + kv(s("0001", "0004"), 3), + kv(s("0004", "0008"), 5), + kv(s("0001", "0009"), 4), + }, + Result: []spans.Valued{ + kv(s("", "0001"), 0), + kv(s("0001", "0004"), 4), + kv(s("0004", "0008"), 5), + kv(s("0008", "0009"), 4), + kv(s("0009", ""), 0), + }, + }, + } + + for i, c := range cases { + t.Run(fmt.Sprintf("#%d", i+1), func(t *testing.T) { run(t, c) }) + } +} + +func TestSubRange(t *testing.T) { + type Case struct { + Range []spans.Span + InputSequence []spans.Valued + Result []spans.Valued + } + + run := func(t *testing.T, c Case) { + full := spans.NewFullWith(c.Range, 0) + fmt.Println(t.Name()) + for _, i := range c.InputSequence { + full.Merge(i) + var result []spans.Valued + full.Traverse(func(v spans.Valued) bool { + result = append(result, v) + return true + }) + fmt.Printf("%s -> %s\n", i, result) + } + + var result []spans.Valued + full.Traverse(func(v spans.Valued) bool { + result = append(result, v) + return true + }) + + require.True(t, spans.ValuedSetEquals(result, c.Result), "%s\nvs\n%s", result, c.Result) + } + + cases := []Case{ + { + Range: []spans.Span{s("0001", "0004"), s("0008", "")}, + InputSequence: []spans.Valued{ + kv(s("0001", "0007"), 42), + kv(s("0000", "0009"), 41), + kv(s("0002", "0005"), 43), + }, + Result: []spans.Valued{ + kv(s("0001", "0002"), 42), + kv(s("0002", "0004"), 43), + kv(s("0008", "0009"), 41), + kv(s("0009", ""), 0), + }, + }, + { + Range: []spans.Span{ + s("0001", "0004"), + s("0008", "")}, + InputSequence: []spans.Valued{kv(s("", ""), 42)}, + Result: []spans.Valued{ + kv(s("0001", "0004"), 42), + kv(s("0008", ""), 42), + }, + }, + { + Range: []spans.Span{ + s("0001", "0004"), + s("0005", "0008"), + }, + InputSequence: []spans.Valued{ + kv(s("0001", "0002"), 42), + kv(s("0002", "0008"), 43), + kv(s("0004", "0007"), 45), + kv(s("0000", "00015"), 48), + }, + Result: []spans.Valued{ + kv(s("0001", "00015"), 48), + kv(s("00015", "0002"), 42), + kv(s("0002", "0004"), 43), + kv(s("0005", "0007"), 45), + kv(s("0007", "0008"), 43), + }, + }, + { + Range: []spans.Span{ + s("0001", "0004"), + s("0005", "0008"), + }, + InputSequence: []spans.Valued{ + kv(s("0004", "0008"), 32), + kv(s("00041", "0007"), 33), + kv(s("0004", "00041"), 99999), + kv(s("0005", "0006"), 34), + }, + Result: []spans.Valued{ + kv(s("0001", "0004"), 0), + kv(s("0005", "0006"), 34), + kv(s("0006", "0007"), 33), + kv(s("0007", "0008"), 32), + }, + }, + } + + for i, c := range cases { + t.Run(fmt.Sprintf("#%d", i+1), func(t *testing.T) { run(t, c) }) + } +} diff --git a/br/pkg/streamhelper/spans/utils.go b/br/pkg/streamhelper/spans/utils.go new file mode 100644 index 0000000000000..621173983185d --- /dev/null +++ b/br/pkg/streamhelper/spans/utils.go @@ -0,0 +1,150 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package spans + +import ( + "bytes" + "fmt" + "math" + "sort" + + "github.com/pingcap/tidb/br/pkg/utils" +) + +// Overlaps checks whether two spans have overlapped part. +func Overlaps(a, b Span) bool { + if len(b.EndKey) == 0 { + return len(a.EndKey) == 0 || bytes.Compare(a.EndKey, b.StartKey) > 0 + } + if len(a.EndKey) == 0 { + return len(b.EndKey) == 0 || bytes.Compare(b.EndKey, a.StartKey) > 0 + } + return bytes.Compare(a.StartKey, b.EndKey) < 0 && bytes.Compare(b.StartKey, a.EndKey) < 0 +} + +func Debug(full *ValueSortedFull) { + var result []Valued + full.Traverse(func(v Valued) bool { + result = append(result, v) + return true + }) + var idx []Valued + full.TraverseValuesLessThan(math.MaxUint64, func(v Valued) bool { + idx = append(idx, v) + return true + }) + fmt.Printf("%s\n\tidx = %s\n", result, idx) +} + +// Collapse collapse ranges overlapping or adjacent. +// Example: +// Collapse({[1, 4], [2, 8], [3, 9]}) == {[1, 9]} +// Collapse({[1, 3], [4, 7], [2, 3]}) == {[1, 3], [4, 7]} +func Collapse(length int, getRange func(int) Span) []Span { + frs := make([]Span, 0, length) + for i := 0; i < length; i++ { + frs = append(frs, getRange(i)) + } + + sort.Slice(frs, func(i, j int) bool { + start := bytes.Compare(frs[i].StartKey, frs[j].StartKey) + if start != 0 { + return start < 0 + } + return utils.CompareBytesExt(frs[i].EndKey, true, frs[j].EndKey, true) < 0 + }) + + result := make([]Span, 0, len(frs)) + i := 0 + for i < len(frs) { + item := frs[i] + for { + i++ + if i >= len(frs) || (len(item.EndKey) != 0 && bytes.Compare(frs[i].StartKey, item.EndKey) > 0) { + break + } + if len(item.EndKey) != 0 && bytes.Compare(item.EndKey, frs[i].EndKey) < 0 || len(frs[i].EndKey) == 0 { + item.EndKey = frs[i].EndKey + } + } + result = append(result, item) + } + return result +} + +// Full returns a full span crossing the key space. +func Full() []Span { + return []Span{{}} +} + +func (x Valued) Equals(y Valued) bool { + return x.Value == y.Value && bytes.Equal(x.Key.StartKey, y.Key.StartKey) && bytes.Equal(x.Key.EndKey, y.Key.EndKey) +} + +func ValuedSetEquals(xs, ys []Valued) bool { + if len(xs) == 0 || len(ys) == 0 { + return len(ys) == len(xs) + } + + sort.Slice(xs, func(i, j int) bool { + start := bytes.Compare(xs[i].Key.StartKey, xs[j].Key.StartKey) + if start != 0 { + return start < 0 + } + return utils.CompareBytesExt(xs[i].Key.EndKey, true, xs[j].Key.EndKey, true) < 0 + }) + sort.Slice(ys, func(i, j int) bool { + start := bytes.Compare(ys[i].Key.StartKey, ys[j].Key.StartKey) + if start != 0 { + return start < 0 + } + return utils.CompareBytesExt(ys[i].Key.EndKey, true, ys[j].Key.EndKey, true) < 0 + }) + + xi := 0 + yi := 0 + + for { + if xi >= len(xs) || yi >= len(ys) { + return (xi >= len(xs)) == (yi >= len(ys)) + } + x := xs[xi] + y := ys[yi] + + if !bytes.Equal(x.Key.StartKey, y.Key.StartKey) { + return false + } + + for { + if xi >= len(xs) || yi >= len(ys) { + return (xi >= len(xs)) == (yi >= len(ys)) + } + x := xs[xi] + y := ys[yi] + + if x.Value != y.Value { + return false + } + + c := utils.CompareBytesExt(x.Key.EndKey, true, y.Key.EndKey, true) + if c == 0 { + xi++ + yi++ + break + } + if c < 0 { + xi++ + // If not adjacent key, return false directly. + if xi < len(xs) && utils.CompareBytesExt(x.Key.EndKey, true, xs[xi].Key.StartKey, false) != 0 { + return false + } + } + if c > 0 { + yi++ + if yi < len(ys) && utils.CompareBytesExt(y.Key.EndKey, true, ys[yi].Key.StartKey, false) != 0 { + return false + } + } + } + } +} diff --git a/br/pkg/streamhelper/spans/utils_test.go b/br/pkg/streamhelper/spans/utils_test.go new file mode 100644 index 0000000000000..48b8fc7f411a5 --- /dev/null +++ b/br/pkg/streamhelper/spans/utils_test.go @@ -0,0 +1,83 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package spans_test + +import ( + "fmt" + "testing" + + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" + "github.com/stretchr/testify/require" +) + +func TestValuedEquals(t *testing.T) { + s := func(start, end string, val spans.Value) spans.Valued { + return spans.Valued{ + Key: spans.Span{ + StartKey: []byte(start), + EndKey: []byte(end), + }, + Value: val, + } + } + type Case struct { + inputA []spans.Valued + inputB []spans.Valued + required bool + } + cases := []Case{ + { + inputA: []spans.Valued{s("0001", "0002", 3)}, + inputB: []spans.Valued{s("0001", "0003", 3)}, + required: false, + }, + { + inputA: []spans.Valued{s("0001", "0002", 3)}, + inputB: []spans.Valued{s("0001", "0002", 3)}, + required: true, + }, + { + inputA: []spans.Valued{s("0001", "0003", 3)}, + inputB: []spans.Valued{s("0001", "0002", 3), s("0002", "0003", 3)}, + required: true, + }, + { + inputA: []spans.Valued{s("0001", "0003", 4)}, + inputB: []spans.Valued{s("0001", "0002", 3), s("0002", "0003", 3)}, + required: false, + }, + { + inputA: []spans.Valued{s("0001", "0003", 3)}, + inputB: []spans.Valued{s("0001", "0002", 4), s("0002", "0003", 3)}, + required: false, + }, + { + inputA: []spans.Valued{s("0001", "0003", 3)}, + inputB: []spans.Valued{s("0001", "0002", 3), s("0002", "0004", 3)}, + required: false, + }, + { + inputA: []spans.Valued{s("", "0003", 3)}, + inputB: []spans.Valued{s("0001", "0002", 3), s("0002", "0003", 3)}, + required: false, + }, + { + inputA: []spans.Valued{s("0001", "", 1)}, + inputB: []spans.Valued{s("0001", "0003", 1), s("0004", "", 1)}, + required: false, + }, + { + inputA: []spans.Valued{s("0001", "0004", 1), s("0001", "0002", 1)}, + inputB: []spans.Valued{s("0001", "0002", 1), s("0001", "0004", 1)}, + required: true, + }, + } + run := func(t *testing.T, c Case) { + require.Equal(t, c.required, spans.ValuedSetEquals(c.inputA, c.inputB)) + require.Equal(t, c.required, spans.ValuedSetEquals(c.inputB, c.inputA)) + } + + for i, c := range cases { + t.Run(fmt.Sprintf("#%d", i+1), func(t *testing.T) { run(t, c) }) + } +} diff --git a/br/pkg/streamhelper/spans/value_sorted.go b/br/pkg/streamhelper/spans/value_sorted.go new file mode 100644 index 0000000000000..2fc1ff2cdbbbc --- /dev/null +++ b/br/pkg/streamhelper/spans/value_sorted.go @@ -0,0 +1,69 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package spans + +import "github.com/google/btree" + +type sortedByValueThenStartKey Valued + +func (s sortedByValueThenStartKey) Less(o btree.Item) bool { + other := o.(sortedByValueThenStartKey) + if s.Value != other.Value { + return s.Value < other.Value + } + return Valued(s).Less(Valued(other)) +} + +// ValueSortedFull is almost the same as `Valued`, however it added an +// extra index hence enabled query range by theirs value. +type ValueSortedFull struct { + *ValuedFull + valueIdx *btree.BTree +} + +// Sorted takes the ownership of a raw `ValuedFull` and then wrap it with `ValueSorted`. +func Sorted(f *ValuedFull) *ValueSortedFull { + vf := &ValueSortedFull{ + ValuedFull: f, + valueIdx: btree.New(16), + } + f.Traverse(func(v Valued) bool { + vf.valueIdx.ReplaceOrInsert(sortedByValueThenStartKey(v)) + return true + }) + return vf +} + +func (v *ValueSortedFull) Merge(newItem Valued) { + v.MergeAll([]Valued{newItem}) +} + +func (v *ValueSortedFull) MergeAll(newItems []Valued) { + var overlapped []Valued + var inserted []Valued + + for _, item := range newItems { + overlapped = overlapped[:0] + inserted = inserted[:0] + + v.overlapped(item.Key, &overlapped) + v.mergeWithOverlap(item, overlapped, &inserted) + + for _, o := range overlapped { + v.valueIdx.Delete(sortedByValueThenStartKey(o)) + } + for _, i := range inserted { + v.valueIdx.ReplaceOrInsert(sortedByValueThenStartKey(i)) + } + } +} + +func (v *ValueSortedFull) TraverseValuesLessThan(n Value, action func(Valued) bool) { + v.valueIdx.AscendLessThan(sortedByValueThenStartKey{Value: n}, func(item btree.Item) bool { + return action(Valued(item.(sortedByValueThenStartKey))) + }) +} + +func (v *ValueSortedFull) MinValue() Value { + return v.valueIdx.Min().(sortedByValueThenStartKey).Value +} diff --git a/br/pkg/streamhelper/spans/value_sorted_test.go b/br/pkg/streamhelper/spans/value_sorted_test.go new file mode 100644 index 0000000000000..ee1a5a8af6500 --- /dev/null +++ b/br/pkg/streamhelper/spans/value_sorted_test.go @@ -0,0 +1,98 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package spans_test + +import ( + "fmt" + "testing" + + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" + "github.com/stretchr/testify/require" +) + +func TestSortedBasic(t *testing.T) { + type Case struct { + InputSequence []spans.Valued + RetainLessThan spans.Value + Result []spans.Valued + } + + run := func(t *testing.T, c Case) { + full := spans.Sorted(spans.NewFullWith(spans.Full(), 0)) + fmt.Println(t.Name()) + for _, i := range c.InputSequence { + full.Merge(i) + spans.Debug(full) + } + + var result []spans.Valued + full.TraverseValuesLessThan(c.RetainLessThan, func(v spans.Valued) bool { + result = append(result, v) + return true + }) + + require.True(t, spans.ValuedSetEquals(result, c.Result), "%s\nvs\n%s", result, c.Result) + } + + cases := []Case{ + { + InputSequence: []spans.Valued{ + kv(s("0001", "0002"), 1), + kv(s("0002", "0003"), 2), + }, + Result: []spans.Valued{ + kv(s("", "0001"), 0), + kv(s("0001", "0002"), 1), + kv(s("0002", "0003"), 2), + kv(s("0003", ""), 0), + }, + RetainLessThan: 10, + }, + { + InputSequence: []spans.Valued{ + kv(s("0001", "0002"), 1), + kv(s("0002", "0003"), 2), + kv(s("0001", "0003"), 4), + }, + RetainLessThan: 1, + Result: []spans.Valued{ + kv(s("", "0001"), 0), + kv(s("0003", ""), 0), + }, + }, + { + InputSequence: []spans.Valued{ + kv(s("0001", "0004"), 3), + kv(s("0004", "0008"), 5), + kv(s("0001", "0007"), 4), + kv(s("", "0002"), 2), + }, + RetainLessThan: 5, + Result: []spans.Valued{ + kv(s("", "0001"), 2), + kv(s("0001", "0004"), 4), + kv(s("0008", ""), 0), + }, + }, + { + InputSequence: []spans.Valued{ + kv(s("0001", "0004"), 3), + kv(s("0004", "0008"), 5), + kv(s("0001", "0007"), 4), + kv(s("", "0002"), 2), + kv(s("0001", "0004"), 5), + kv(s("0008", ""), 10), + kv(s("", "0001"), 20), + }, + RetainLessThan: 11, + Result: []spans.Valued{ + kv(s("0001", "0008"), 5), + kv(s("0008", ""), 10), + }, + }, + } + + for i, c := range cases { + t.Run(fmt.Sprintf("#%d", i+1), func(t *testing.T) { run(t, c) }) + } +} diff --git a/br/pkg/streamhelper/subscription_test.go b/br/pkg/streamhelper/subscription_test.go new file mode 100644 index 0000000000000..519801ce2b448 --- /dev/null +++ b/br/pkg/streamhelper/subscription_test.go @@ -0,0 +1,205 @@ +// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. + +package streamhelper_test + +import ( + "context" + "fmt" + "sync" + "testing" + + "github.com/pingcap/tidb/br/pkg/streamhelper" + "github.com/pingcap/tidb/br/pkg/streamhelper/spans" + "github.com/stretchr/testify/require" +) + +func installSubscribeSupport(c *fakeCluster) { + for _, s := range c.stores { + s.SetSupportFlushSub(true) + } +} + +func installSubscribeSupportForRandomN(c *fakeCluster, n int) { + i := 0 + for _, s := range c.stores { + if i == n { + break + } + s.SetSupportFlushSub(true) + i++ + } +} + +func TestSubBasic(t *testing.T) { + req := require.New(t) + ctx := context.Background() + c := createFakeCluster(t, 4, true) + c.splitAndScatter("0001", "0002", "0003", "0008", "0009") + installSubscribeSupport(c) + sub := streamhelper.NewSubscriber(c, c) + req.NoError(sub.UpdateStoreTopology(ctx)) + var cp uint64 + for i := 0; i < 10; i++ { + cp = c.advanceCheckpoints() + c.flushAll() + } + sub.HandleErrors(ctx) + req.NoError(sub.PendingErrors()) + sub.Drop() + s := spans.Sorted(spans.NewFullWith(spans.Full(), 1)) + for k := range sub.Events() { + s.Merge(k) + } + defer func() { + if t.Failed() { + fmt.Println(c) + spans.Debug(s) + } + }() + + req.Equal(cp, s.MinValue(), "%d vs %d", cp, s.MinValue()) +} + +func TestNormalError(t *testing.T) { + req := require.New(t) + ctx := context.Background() + c := createFakeCluster(t, 4, true) + c.splitAndScatter("0001", "0002", "0003", "0008", "0009") + installSubscribeSupport(c) + + sub := streamhelper.NewSubscriber(c, c) + c.onGetClient = oneStoreFailure() + req.NoError(sub.UpdateStoreTopology(ctx)) + c.onGetClient = nil + req.Error(sub.PendingErrors()) + sub.HandleErrors(ctx) + req.NoError(sub.PendingErrors()) + var cp uint64 + for i := 0; i < 10; i++ { + cp = c.advanceCheckpoints() + c.flushAll() + } + sub.Drop() + s := spans.Sorted(spans.NewFullWith(spans.Full(), 1)) + for k := range sub.Events() { + s.Merge(k) + } + req.Equal(cp, s.MinValue(), "%d vs %d", cp, s.MinValue()) +} + +func TestHasFailureStores(t *testing.T) { + req := require.New(t) + ctx := context.Background() + c := createFakeCluster(t, 4, true) + c.splitAndScatter("0001", "0002", "0003", "0008", "0009") + + installSubscribeSupportForRandomN(c, 3) + sub := streamhelper.NewSubscriber(c, c) + req.NoError(sub.UpdateStoreTopology(ctx)) + sub.HandleErrors(ctx) + req.Error(sub.PendingErrors()) + + installSubscribeSupport(c) + req.NoError(sub.UpdateStoreTopology(ctx)) + sub.HandleErrors(ctx) + req.NoError(sub.PendingErrors()) +} + +func TestStoreRemoved(t *testing.T) { + req := require.New(t) + ctx := context.Background() + c := createFakeCluster(t, 4, true) + c.splitAndScatter("0001", "0002", "0003", "0008", "0009", "0010", "0100", "0956", "1000") + + installSubscribeSupport(c) + sub := streamhelper.NewSubscriber(c, c) + req.NoError(sub.UpdateStoreTopology(ctx)) + + var cp uint64 + for i := 0; i < 10; i++ { + cp = c.advanceCheckpoints() + c.flushAll() + } + sub.HandleErrors(ctx) + req.NoError(sub.PendingErrors()) + for _, s := range c.stores { + c.removeStore(s.id) + break + } + req.NoError(sub.UpdateStoreTopology(ctx)) + for i := 0; i < 10; i++ { + cp = c.advanceCheckpoints() + c.flushAll() + } + sub.HandleErrors(ctx) + req.NoError(sub.PendingErrors()) + + sub.Drop() + s := spans.Sorted(spans.NewFullWith(spans.Full(), 1)) + for k := range sub.Events() { + s.Merge(k) + } + + defer func() { + if t.Failed() { + fmt.Println(c) + spans.Debug(s) + } + }() + + req.Equal(cp, s.MinValue(), "cp = %d, s = %d", cp, s.MinValue()) +} + +func TestSomeOfStoreUnsupported(t *testing.T) { + req := require.New(t) + ctx := context.Background() + c := createFakeCluster(t, 4, true) + c.splitAndScatter("0001", "0002", "0003", "0008", "0009", "0010", "0100", "0956", "1000") + + sub := streamhelper.NewSubscriber(c, c) + installSubscribeSupportForRandomN(c, 3) + req.NoError(sub.UpdateStoreTopology(ctx)) + + var cp uint64 + for i := 0; i < 10; i++ { + cp = c.advanceCheckpoints() + c.flushAll() + } + s := spans.Sorted(spans.NewFullWith(spans.Full(), 1)) + m := new(sync.Mutex) + sub.Drop() + for k := range sub.Events() { + s.Merge(k) + } + + rngs := make([]spans.Span, 0) + s.TraverseValuesLessThan(cp, func(v spans.Valued) bool { + rngs = append(rngs, v.Key) + return true + }) + coll := streamhelper.NewClusterCollector(ctx, c) + coll.SetOnSuccessHook(func(u uint64, kr spans.Span) { + m.Lock() + defer m.Unlock() + s.Merge(spans.Valued{Key: kr, Value: u}) + }) + ld := uint64(0) + for _, rng := range rngs { + iter := streamhelper.IterateRegion(c, rng.StartKey, rng.EndKey) + for !iter.Done() { + rs, err := iter.Next(ctx) + req.NoError(err) + for _, r := range rs { + if ld == 0 { + ld = r.Leader.StoreId + } else { + req.Equal(r.Leader.StoreId, ld, "the leader is from different store: some of events not pushed") + } + coll.CollectRegion(r) + } + } + } + _, err := coll.Finish(ctx) + req.NoError(err) + req.Equal(cp, s.MinValue()) +} diff --git a/br/pkg/streamhelper/tsheap.go b/br/pkg/streamhelper/tsheap.go deleted file mode 100644 index 6c2fb510776e7..0000000000000 --- a/br/pkg/streamhelper/tsheap.go +++ /dev/null @@ -1,326 +0,0 @@ -// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. - -package streamhelper - -import ( - "encoding/hex" - "fmt" - "strings" - "sync" - "time" - - "github.com/google/btree" - "github.com/pingcap/errors" - berrors "github.com/pingcap/tidb/br/pkg/errors" - "github.com/pingcap/tidb/br/pkg/logutil" - "github.com/pingcap/tidb/br/pkg/redact" - "github.com/pingcap/tidb/br/pkg/utils" - "github.com/pingcap/tidb/kv" - "github.com/tikv/client-go/v2/oracle" - "go.uber.org/zap/zapcore" -) - -// CheckpointsCache is the heap-like cache for checkpoints. -// -// "Checkpoint" is the "Resolved TS" of some range. -// A resolved ts is a "watermark" for the system, which: -// - implies there won't be any transactions (in some range) commit with `commit_ts` smaller than this TS. -// - is monotonic increasing. -// A "checkpoint" is a "safe" Resolved TS, which: -// - is a TS *less than* the real resolved ts of now. -// - is based on range (it only promises there won't be new committed txns in the range). -// - the checkpoint of union of ranges is the minimal checkpoint of all ranges. -// As an example: -/* - +----------------------------------+ - ^-----------^ (Checkpoint = 42) - ^---------------^ (Checkpoint = 76) - ^-----------------------^ (Checkpoint = min(42, 76) = 42) -*/ -// For calculating the global checkpoint, we can make a heap-like structure: -// Checkpoint Ranges -// 42 -> {[0, 8], [16, 100]} -// 1002 -> {[8, 16]} -// 1082 -> {[100, inf]} -// For now, the checkpoint of range [8, 16] and [100, inf] won't affect the global checkpoint -// directly, so we can try to advance only the ranges of {[0, 8], [16, 100]} (which's checkpoint is steal). -// Once them get advance, the global checkpoint would be advanced then, -// and we don't need to update all ranges (because some new ranges don't need to be advanced so quickly.) -type CheckpointsCache interface { - fmt.Stringer - // InsertRange inserts a range with specified TS to the cache. - InsertRange(ts uint64, rng kv.KeyRange) - // InsertRanges inserts a set of ranges that sharing checkpoint to the cache. - InsertRanges(rst RangesSharesTS) - // CheckpointTS returns the now global (union of all ranges) checkpoint of the cache. - CheckpointTS() uint64 - // PopRangesWithGapGT pops the ranges which's checkpoint is - PopRangesWithGapGT(d time.Duration) []*RangesSharesTS - // Check whether the ranges in the cache is integrate. - ConsistencyCheck(ranges []kv.KeyRange) error - // Clear the cache. - Clear() -} - -// NoOPCheckpointCache is used when cache disabled. -type NoOPCheckpointCache struct{} - -func (NoOPCheckpointCache) InsertRange(ts uint64, rng kv.KeyRange) {} - -func (NoOPCheckpointCache) InsertRanges(rst RangesSharesTS) {} - -func (NoOPCheckpointCache) Clear() {} - -func (NoOPCheckpointCache) String() string { - return "NoOPCheckpointCache" -} - -func (NoOPCheckpointCache) CheckpointTS() uint64 { - panic("invalid state: NoOPCheckpointCache should never be used in advancing!") -} - -func (NoOPCheckpointCache) PopRangesWithGapGT(d time.Duration) []*RangesSharesTS { - panic("invalid state: NoOPCheckpointCache should never be used in advancing!") -} - -func (NoOPCheckpointCache) ConsistencyCheck([]kv.KeyRange) error { - return errors.Annotatef(berrors.ErrUnsupportedOperation, "invalid state: NoOPCheckpointCache should never be used in advancing!") -} - -// RangesSharesTS is a set of ranges shares the same timestamp. -type RangesSharesTS struct { - TS uint64 - Ranges []kv.KeyRange -} - -func (rst *RangesSharesTS) Zap() zapcore.ObjectMarshaler { - return zapcore.ObjectMarshalerFunc(func(oe zapcore.ObjectEncoder) error { - rngs := rst.Ranges - if len(rst.Ranges) > 3 { - rngs = rst.Ranges[:3] - } - - oe.AddUint64("checkpoint", rst.TS) - return oe.AddArray("items", zapcore.ArrayMarshalerFunc(func(ae zapcore.ArrayEncoder) error { - return ae.AppendObject(zapcore.ObjectMarshalerFunc(func(oe1 zapcore.ObjectEncoder) error { - for _, rng := range rngs { - oe1.AddString("start-key", redact.String(hex.EncodeToString(rng.StartKey))) - oe1.AddString("end-key", redact.String(hex.EncodeToString(rng.EndKey))) - } - return nil - })) - })) - }) -} - -func (rst *RangesSharesTS) String() string { - // Make a more friendly string. - return fmt.Sprintf("@%sR%d", oracle.GetTimeFromTS(rst.TS).Format("0405"), len(rst.Ranges)) -} - -func (rst *RangesSharesTS) Less(other btree.Item) bool { - return rst.TS < other.(*RangesSharesTS).TS -} - -// Checkpoints is a heap that collects all checkpoints of -// regions, it supports query the latest checkpoint fast. -// This structure is thread safe. -type Checkpoints struct { - tree *btree.BTree - - mu sync.Mutex -} - -func NewCheckpoints() *Checkpoints { - return &Checkpoints{ - tree: btree.New(32), - } -} - -// String formats the slowest 5 ranges sharing TS to string. -func (h *Checkpoints) String() string { - h.mu.Lock() - defer h.mu.Unlock() - - b := new(strings.Builder) - count := 0 - total := h.tree.Len() - h.tree.Ascend(func(i btree.Item) bool { - rst := i.(*RangesSharesTS) - b.WriteString(rst.String()) - b.WriteString(";") - count++ - return count < 5 - }) - if total-count > 0 { - fmt.Fprintf(b, "O%d", total-count) - } - return b.String() -} - -// InsertRanges insert a RangesSharesTS directly to the tree. -func (h *Checkpoints) InsertRanges(r RangesSharesTS) { - h.mu.Lock() - defer h.mu.Unlock() - if items := h.tree.Get(&r); items != nil { - i := items.(*RangesSharesTS) - i.Ranges = append(i.Ranges, r.Ranges...) - } else { - h.tree.ReplaceOrInsert(&r) - } -} - -// InsertRange inserts the region and its TS into the region tree. -func (h *Checkpoints) InsertRange(ts uint64, rng kv.KeyRange) { - h.mu.Lock() - defer h.mu.Unlock() - r := h.tree.Get(&RangesSharesTS{TS: ts}) - if r == nil { - r = &RangesSharesTS{TS: ts} - h.tree.ReplaceOrInsert(r) - } - rr := r.(*RangesSharesTS) - rr.Ranges = append(rr.Ranges, rng) -} - -// Clear removes all records in the checkpoint cache. -func (h *Checkpoints) Clear() { - h.mu.Lock() - defer h.mu.Unlock() - h.tree.Clear(false) -} - -// PopRangesWithGapGT pops ranges with gap greater than the specified duration. -// NOTE: maybe make something like `DrainIterator` for better composing? -func (h *Checkpoints) PopRangesWithGapGT(d time.Duration) []*RangesSharesTS { - h.mu.Lock() - defer h.mu.Unlock() - result := []*RangesSharesTS{} - for { - item, ok := h.tree.Min().(*RangesSharesTS) - if !ok { - return result - } - if time.Since(oracle.GetTimeFromTS(item.TS)) >= d { - result = append(result, item) - h.tree.DeleteMin() - } else { - return result - } - } -} - -// CheckpointTS returns the cached checkpoint TS by the current state of the cache. -func (h *Checkpoints) CheckpointTS() uint64 { - h.mu.Lock() - defer h.mu.Unlock() - item, ok := h.tree.Min().(*RangesSharesTS) - if !ok { - return 0 - } - return item.TS -} - -// ConsistencyCheck checks whether the tree contains the full range of key space. -func (h *Checkpoints) ConsistencyCheck(rangesIn []kv.KeyRange) error { - h.mu.Lock() - rangesReal := make([]kv.KeyRange, 0, 1024) - h.tree.Ascend(func(i btree.Item) bool { - rangesReal = append(rangesReal, i.(*RangesSharesTS).Ranges...) - return true - }) - h.mu.Unlock() - - r := CollapseRanges(len(rangesReal), func(i int) kv.KeyRange { return rangesReal[i] }) - ri := CollapseRanges(len(rangesIn), func(i int) kv.KeyRange { return rangesIn[i] }) - - return errors.Annotatef(checkIntervalIsSubset(r, ri), "ranges: (current) %s (not in) %s", logutil.StringifyKeys(r), - logutil.StringifyKeys(ri)) -} - -// A simple algorithm to detect non-overlapped ranges. -// It maintains the "current" probe, and let the ranges to check "consume" it. -// For example: -// toCheck: |_____________________| |_____________| -// . ^checking -// subsetOf: |_________| |_______| |__________| -// . ^probing -// probing is the subrange of checking, consume it and move forward the probe. -// toCheck: |_____________________| |_____________| -// . ^checking -// subsetOf: |_________| |_______| |__________| -// . ^probing -// consume it, too. -// toCheck: |_____________________| |_____________| -// . ^checking -// subsetOf: |_________| |_______| |__________| -// . ^probing -// checking is at the left of probing and no overlaps, moving it forward. -// toCheck: |_____________________| |_____________| -// . ^checking -// subsetOf: |_________| |_______| |__________| -// . ^probing -// consume it. all subset ranges are consumed, check passed. -func checkIntervalIsSubset(toCheck []kv.KeyRange, subsetOf []kv.KeyRange) error { - i := 0 - si := 0 - - for { - // We have checked all ranges. - if si >= len(subsetOf) { - return nil - } - // There are some ranges doesn't reach the end. - if i >= len(toCheck) { - return errors.Annotatef(berrors.ErrPiTRMalformedMetadata, - "there remains a range doesn't be fully consumed: %s", - logutil.StringifyRange(subsetOf[si])) - } - - checking := toCheck[i] - probing := subsetOf[si] - // checking: |___________| - // probing: |_________| - // A rare case: the "first" range is out of bound or not fully covers the probing range. - if utils.CompareBytesExt(checking.StartKey, false, probing.StartKey, false) > 0 { - holeEnd := checking.StartKey - if utils.CompareBytesExt(holeEnd, false, probing.EndKey, true) > 0 { - holeEnd = probing.EndKey - } - return errors.Annotatef(berrors.ErrPiTRMalformedMetadata, "probably a hole in key ranges: %s", logutil.StringifyRange{ - StartKey: probing.StartKey, - EndKey: holeEnd, - }) - } - - // checking: |_____| - // probing: |_______| - // Just move forward checking. - if utils.CompareBytesExt(checking.EndKey, true, probing.StartKey, false) < 0 { - i += 1 - continue - } - - // checking: |_________| - // probing: |__________________| - // Given all of the ranges are "collapsed", the next checking range must - // not be adjacent with the current checking range. - // And hence there must be a "hole" in the probing key space. - if utils.CompareBytesExt(checking.EndKey, true, probing.EndKey, true) < 0 { - next := probing.EndKey - if i+1 < len(toCheck) { - next = toCheck[i+1].EndKey - } - return errors.Annotatef(berrors.ErrPiTRMalformedMetadata, "probably a hole in key ranges: %s", logutil.StringifyRange{ - StartKey: checking.EndKey, - EndKey: next, - }) - } - // checking: |________________| - // probing: |_____________| - // The current checking range fills the current probing range, - // or the current checking range is out of the current range. - // let's move the probing forward. - si += 1 - } -} diff --git a/br/pkg/streamhelper/tsheap_test.go b/br/pkg/streamhelper/tsheap_test.go deleted file mode 100644 index 173bc2e0a0334..0000000000000 --- a/br/pkg/streamhelper/tsheap_test.go +++ /dev/null @@ -1,248 +0,0 @@ -// Copyright 2022 PingCAP, Inc. Licensed under Apache-2.0. -package streamhelper_test - -import ( - "fmt" - "math" - "math/rand" - "testing" - - "github.com/pingcap/tidb/br/pkg/streamhelper" - "github.com/pingcap/tidb/kv" - "github.com/stretchr/testify/require" -) - -func TestInsert(t *testing.T) { - cases := []func(func(ts uint64, a, b string)){ - func(insert func(ts uint64, a, b string)) { - insert(1, "", "01") - insert(1, "01", "02") - insert(2, "02", "022") - insert(4, "022", "") - }, - func(insert func(ts uint64, a, b string)) { - insert(1, "", "01") - insert(2, "", "01") - insert(2, "011", "02") - insert(1, "", "") - insert(65, "03", "04") - }, - } - - for _, c := range cases { - cps := streamhelper.NewCheckpoints() - expected := map[uint64]*streamhelper.RangesSharesTS{} - checkpoint := uint64(math.MaxUint64) - insert := func(ts uint64, a, b string) { - cps.InsertRange(ts, kv.KeyRange{ - StartKey: []byte(a), - EndKey: []byte(b), - }) - i, ok := expected[ts] - if !ok { - expected[ts] = &streamhelper.RangesSharesTS{TS: ts, Ranges: []kv.KeyRange{{StartKey: []byte(a), EndKey: []byte(b)}}} - } else { - i.Ranges = append(i.Ranges, kv.KeyRange{StartKey: []byte(a), EndKey: []byte(b)}) - } - if ts < checkpoint { - checkpoint = ts - } - } - c(insert) - require.Equal(t, checkpoint, cps.CheckpointTS()) - rngs := cps.PopRangesWithGapGT(0) - for _, rng := range rngs { - other := expected[rng.TS] - require.Equal(t, other, rng) - } - } -} - -func TestMergeRanges(t *testing.T) { - r := func(a, b string) kv.KeyRange { - return kv.KeyRange{StartKey: []byte(a), EndKey: []byte(b)} - } - type Case struct { - expected []kv.KeyRange - parameter []kv.KeyRange - } - cases := []Case{ - { - parameter: []kv.KeyRange{r("01", "01111"), r("0111", "0112")}, - expected: []kv.KeyRange{r("01", "0112")}, - }, - { - parameter: []kv.KeyRange{r("01", "03"), r("02", "04")}, - expected: []kv.KeyRange{r("01", "04")}, - }, - { - parameter: []kv.KeyRange{r("04", "08"), r("09", "10")}, - expected: []kv.KeyRange{r("04", "08"), r("09", "10")}, - }, - { - parameter: []kv.KeyRange{r("01", "03"), r("02", "04"), r("05", "07"), r("08", "09")}, - expected: []kv.KeyRange{r("01", "04"), r("05", "07"), r("08", "09")}, - }, - { - parameter: []kv.KeyRange{r("01", "02"), r("012", "")}, - expected: []kv.KeyRange{r("01", "")}, - }, - { - parameter: []kv.KeyRange{r("", "01"), r("02", "03"), r("021", "")}, - expected: []kv.KeyRange{r("", "01"), r("02", "")}, - }, - { - parameter: []kv.KeyRange{r("", "01"), r("001", "")}, - expected: []kv.KeyRange{r("", "")}, - }, - { - parameter: []kv.KeyRange{r("", "01"), r("", ""), r("", "02")}, - expected: []kv.KeyRange{r("", "")}, - }, - { - parameter: []kv.KeyRange{r("", "01"), r("01", ""), r("", "02"), r("", "03"), r("01", "02")}, - expected: []kv.KeyRange{r("", "")}, - }, - { - parameter: []kv.KeyRange{r("", ""), r("", "01"), r("01", ""), r("01", "02")}, - expected: []kv.KeyRange{r("", "")}, - }, - } - - for i, c := range cases { - result := streamhelper.CollapseRanges(len(c.parameter), func(i int) kv.KeyRange { - return c.parameter[i] - }) - require.Equal(t, c.expected, result, "case = %d", i) - } -} - -func TestInsertRanges(t *testing.T) { - r := func(a, b string) kv.KeyRange { - return kv.KeyRange{StartKey: []byte(a), EndKey: []byte(b)} - } - rs := func(ts uint64, ranges ...kv.KeyRange) streamhelper.RangesSharesTS { - return streamhelper.RangesSharesTS{TS: ts, Ranges: ranges} - } - - type Case struct { - Expected []streamhelper.RangesSharesTS - Parameters []streamhelper.RangesSharesTS - } - - cases := []Case{ - { - Parameters: []streamhelper.RangesSharesTS{ - rs(1, r("0", "1"), r("1", "2")), - rs(1, r("2", "3"), r("3", "4")), - }, - Expected: []streamhelper.RangesSharesTS{ - rs(1, r("0", "1"), r("1", "2"), r("2", "3"), r("3", "4")), - }, - }, - { - Parameters: []streamhelper.RangesSharesTS{ - rs(1, r("0", "1")), - rs(2, r("2", "3")), - rs(1, r("4", "5"), r("6", "7")), - }, - Expected: []streamhelper.RangesSharesTS{ - rs(1, r("0", "1"), r("4", "5"), r("6", "7")), - rs(2, r("2", "3")), - }, - }, - } - - for _, c := range cases { - theTree := streamhelper.NewCheckpoints() - for _, p := range c.Parameters { - theTree.InsertRanges(p) - } - ranges := theTree.PopRangesWithGapGT(0) - for i, rs := range ranges { - require.ElementsMatch(t, c.Expected[i].Ranges, rs.Ranges, "case = %#v", c) - } - } -} - -func TestConsistencyCheckOverRange(t *testing.T) { - r := func(a, b string) kv.KeyRange { - return kv.KeyRange{StartKey: []byte(a), EndKey: []byte(b)} - } - type Case struct { - checking []kv.KeyRange - probing []kv.KeyRange - isSubset bool - } - - cases := []Case{ - // basic: exactly match. - { - checking: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "0005")}, - probing: []kv.KeyRange{r("0001", "0003"), r("0004", "0005")}, - isSubset: true, - }, - // not fully match, probing longer. - { - checking: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "0005")}, - probing: []kv.KeyRange{r("0000", "0003"), r("0004", "00051")}, - isSubset: false, - }, - // with infinity end keys. - { - checking: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "")}, - probing: []kv.KeyRange{r("0001", "0003"), r("0004", "")}, - isSubset: true, - }, - { - checking: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "")}, - probing: []kv.KeyRange{r("0001", "0003"), r("0004", "0005")}, - isSubset: true, - }, - { - checking: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "0005")}, - probing: []kv.KeyRange{r("0001", "0003"), r("0004", "")}, - isSubset: false, - }, - // overlapped probe. - { - checking: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "0007")}, - probing: []kv.KeyRange{r("0001", "0008")}, - isSubset: false, - }, - { - checking: []kv.KeyRange{r("0001", "0008")}, - probing: []kv.KeyRange{r("0001", "0002"), r("0002", "0003"), r("0004", "0007")}, - isSubset: true, - }, - { - checking: []kv.KeyRange{r("0100", "0120"), r("0130", "0141")}, - probing: []kv.KeyRange{r("0000", "0001")}, - isSubset: false, - }, - { - checking: []kv.KeyRange{r("0100", "0120")}, - probing: []kv.KeyRange{r("0090", "0110"), r("0115", "0120")}, - isSubset: false, - }, - } - - run := func(t *testing.T, c Case) { - tree := streamhelper.NewCheckpoints() - for _, r := range c.checking { - tree.InsertRange(rand.Uint64()%10, r) - } - err := tree.ConsistencyCheck(c.probing) - if c.isSubset { - require.NoError(t, err) - } else { - require.Error(t, err) - } - } - - for i, c := range cases { - t.Run(fmt.Sprintf("#%d", i), func(tc *testing.T) { - run(tc, c) - }) - } -} diff --git a/br/pkg/summary/collector.go b/br/pkg/summary/collector.go index 705c26df3e4ac..1a16fb6dc9cfc 100644 --- a/br/pkg/summary/collector.go +++ b/br/pkg/summary/collector.go @@ -46,6 +46,10 @@ type LogCollector interface { SetSuccessStatus(success bool) + NowDureTime() time.Duration + + AdjustStartTimeToEarlierTime(t time.Duration) + Summary(name string) Log(msg string, fields ...zap.Field) @@ -163,6 +167,18 @@ func logKeyFor(key string) string { return strings.ReplaceAll(key, " ", "-") } +func (tc *logCollector) NowDureTime() time.Duration { + tc.mu.Lock() + defer tc.mu.Unlock() + return time.Since(tc.startTime) +} + +func (tc *logCollector) AdjustStartTimeToEarlierTime(t time.Duration) { + tc.mu.Lock() + defer tc.mu.Unlock() + tc.startTime = tc.startTime.Add(-t) +} + func (tc *logCollector) Summary(name string) { tc.mu.Lock() defer func() { diff --git a/br/pkg/summary/summary.go b/br/pkg/summary/summary.go index 7ae488785760e..45c8fbbc55997 100644 --- a/br/pkg/summary/summary.go +++ b/br/pkg/summary/summary.go @@ -43,6 +43,15 @@ func SetSuccessStatus(success bool) { collector.SetSuccessStatus(success) } +// NowDureTime returns the duration between start time and current time +func NowDureTime() time.Duration { + return collector.NowDureTime() +} + +func AdjustStartTimeToEarlierTime(t time.Duration) { + collector.AdjustStartTimeToEarlierTime(t) +} + // Summary outputs summary log. func Summary(name string) { collector.Summary(name) diff --git a/br/pkg/task/backup.go b/br/pkg/task/backup.go index 8b3a03c9a8719..3402640c703b2 100644 --- a/br/pkg/task/backup.go +++ b/br/pkg/task/backup.go @@ -4,6 +4,8 @@ package task import ( "context" + "crypto/sha256" + "encoding/json" "fmt" "os" "strconv" @@ -26,6 +28,7 @@ import ( "github.com/pingcap/tidb/br/pkg/storage" "github.com/pingcap/tidb/br/pkg/summary" "github.com/pingcap/tidb/br/pkg/utils" + "github.com/pingcap/tidb/br/pkg/version" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/statistics/handle" @@ -45,11 +48,13 @@ const ( flagRemoveSchedulers = "remove-schedulers" flagIgnoreStats = "ignore-stats" flagUseBackupMetaV2 = "use-backupmeta-v2" + flagUseCheckpoint = "use-checkpoint" flagGCTTL = "gcttl" defaultBackupConcurrency = 4 maxBackupConcurrency = 256 + checkpointDefaultGCTTL = 72 * 60 // 72 minutes ) const ( @@ -77,6 +82,7 @@ type BackupConfig struct { RemoveSchedulers bool `json:"remove-schedulers" toml:"remove-schedulers"` IgnoreStats bool `json:"ignore-stats" toml:"ignore-stats"` UseBackupMetaV2 bool `json:"use-backupmeta-v2"` + UseCheckpoint bool `json:"use-checkpoint" toml:"use-checkpoint"` CompressionConfig // for ebs-based backup @@ -126,6 +132,9 @@ func DefineBackupFlags(flags *pflag.FlagSet) { // but will generate v1 meta due to this flag is false. the behaviour is as same as v4.0.15, v4.0.16. // finally v4.0.17 will set this flag to true, and generate v2 meta. _ = flags.MarkHidden(flagUseBackupMetaV2) + + flags.Bool(flagUseCheckpoint, true, "use checkpoint mode") + _ = flags.MarkHidden(flagUseCheckpoint) } // ParseFromFlags parses the backup-related flags from the flag set. @@ -150,10 +159,21 @@ func (cfg *BackupConfig) ParseFromFlags(flags *pflag.FlagSet) error { if err != nil { return errors.Trace(err) } + noCheckpoint, err := flags.GetBool(flagUseCheckpoint) + if err != nil { + return errors.Trace(err) + } + cfg.UseCheckpoint = !noCheckpoint gcTTL, err := flags.GetInt64(flagGCTTL) if err != nil { return errors.Trace(err) } + // if use checkpoint and gcTTL is the default value + // update gcttl to checkpoint's default gc ttl + if cfg.UseCheckpoint && gcTTL == utils.DefaultBRGCSafePointTTL { + gcTTL = checkpointDefaultGCTTL + log.Info("use checkpoint's default GC TTL", zap.Int64("GC TTL", gcTTL)) + } cfg.GCTTL = gcTTL compressionCfg, err := parseCompressionFlags(flags) @@ -269,6 +289,23 @@ func (cfg *BackupConfig) Adjust() { } } +// a rough hash for checkpoint checker +func (cfg *BackupConfig) Hash() ([]byte, error) { + config := &BackupConfig{ + LastBackupTS: cfg.LastBackupTS, + IgnoreStats: cfg.IgnoreStats, + UseCheckpoint: cfg.UseCheckpoint, + Config: cfg.Config, + } + data, err := json.Marshal(config) + if err != nil { + return nil, errors.Trace(err) + } + hash := sha256.Sum256(data) + + return hash[:], nil +} + func isFullBackup(cmdName string) bool { return cmdName == FullBackupCmd } @@ -301,6 +338,12 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig return errors.Trace(err) } defer mgr.Close() + // after version check, check the cluster whether support checkpoint mode + if cfg.UseCheckpoint { + err = version.CheckCheckpointSupport() + log.Warn("unable to use checkpoint mode, fall back to normal mode", zap.Error(err)) + cfg.UseCheckpoint = false + } var statsHandle *handle.Handle if !skipStats { statsHandle = mgr.GetDomain().StatsHandle() @@ -308,22 +351,23 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig var newCollationEnable string err = g.UseOneShotSession(mgr.GetStorage(), !needDomain, func(se glue.Session) error { - newCollationEnable, err = se.GetGlobalVariable(tidbNewCollationEnabled) + newCollationEnable, err = se.GetGlobalVariable(utils.GetTidbNewCollationEnabled()) if err != nil { return errors.Trace(err) } log.Info("get new_collations_enabled_on_first_bootstrap config from system table", - zap.String(tidbNewCollationEnabled, newCollationEnable)) + zap.String(utils.GetTidbNewCollationEnabled(), newCollationEnable)) return nil }) if err != nil { return errors.Trace(err) } - client, err := backup.NewBackupClient(ctx, mgr) - if err != nil { - return errors.Trace(err) - } + client := backup.NewBackupClient(ctx, mgr) + + // set cipher only for checkpoint + client.SetCipher(&cfg.CipherInfo) + opts := storage.ExternalStorageOptions{ NoCredentials: cfg.NoCreds, SendCredentials: cfg.SendCreds, @@ -332,6 +376,16 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig if err = client.SetStorageAndCheckNotInUse(ctx, u, &opts); err != nil { return errors.Trace(err) } + // if checkpoint mode is unused at this time but there is checkpoint meta, + // CheckCheckpoint will stop backing up + cfgHash, err := cfg.Hash() + if err != nil { + return errors.Trace(err) + } + err = client.CheckCheckpoint(cfgHash) + if err != nil { + return errors.Trace(err) + } err = client.SetLockFile(ctx) if err != nil { return errors.Trace(err) @@ -343,24 +397,44 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig return errors.Trace(err) } g.Record("BackupTS", backupTS) + safePointID := client.GetSafePointID() sp := utils.BRServiceSafePoint{ BackupTS: backupTS, TTL: client.GetGCTTL(), - ID: utils.MakeSafePointID(), + ID: safePointID, } + // use lastBackupTS as safePoint if exists - if cfg.LastBackupTS > 0 { + isIncrementalBackup := cfg.LastBackupTS > 0 + if isIncrementalBackup { sp.BackupTS = cfg.LastBackupTS } log.Info("current backup safePoint job", zap.Object("safePoint", sp)) - err = utils.StartServiceSafePointKeeper(ctx, mgr.GetPDClient(), sp) + cctx, gcSafePointKeeperCancel := context.WithCancel(ctx) + gcSafePointKeeperRemovable := false + defer func() { + // don't reset the gc-safe-point if checkpoint mode is used and backup is not finished + if cfg.UseCheckpoint && !gcSafePointKeeperRemovable { + return + } + log.Info("start to remove gc-safepoint keeper") + // close the gc safe point keeper at first + gcSafePointKeeperCancel() + // set the ttl to 0 to remove the gc-safe-point + sp.TTL = 0 + if err := utils.UpdateServiceSafePoint(ctx, mgr.GetPDClient(), sp); err != nil { + log.Warn("failed to update service safe point, backup may fail if gc triggered", + zap.Error(err), + ) + } + log.Info("finish removing gc-safepoint keeper") + }() + err = utils.StartServiceSafePointKeeper(cctx, mgr.GetPDClient(), sp) if err != nil { return errors.Trace(err) } - isIncrementalBackup := cfg.LastBackupTS > 0 - if cfg.RemoveSchedulers { log.Debug("removing some PD schedulers") restore, e := mgr.RemoveSchedulers(ctx) @@ -395,7 +469,7 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig return errors.Trace(err) } - ranges, schemas, policies, err := backup.BuildBackupRangeAndSchema(mgr.GetStorage(), cfg.TableFilter, backupTS, isFullBackup(cmdName)) + ranges, schemas, policies, err := client.BuildBackupRangeAndSchema(mgr.GetStorage(), cfg.TableFilter, backupTS, isFullBackup(cmdName)) if err != nil { return errors.Trace(err) } @@ -422,7 +496,7 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig } // nothing to backup - if ranges == nil || len(ranges) <= 0 { + if len(ranges) == 0 { pdAddress := strings.Join(cfg.PD, ",") log.Warn("Nothing to backup, maybe connected to cluster for restoring", zap.String("PD address", pdAddress)) @@ -503,6 +577,18 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig }) } } + + if cfg.UseCheckpoint { + if err = client.StartCheckpointRunner(ctx, cfgHash, backupTS, ranges, safePointID, progressCallBack); err != nil { + return errors.Trace(err) + } + defer func() { + if !gcSafePointKeeperRemovable { + log.Info("wait for flush checkpoint...") + client.WaitForFinishCheckpoint() + } + }() + } metawriter.StartWriteMetasAsync(ctx, metautil.AppendDataFile) err = client.BackupRanges(ctx, ranges, req, uint(cfg.Concurrency), metawriter, progressCallBack) if err != nil { @@ -532,7 +618,7 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig schemasConcurrency := uint(mathutil.Min(backup.DefaultSchemaConcurrency, schemas.Len())) err = schemas.BackupSchemas( - ctx, metawriter, mgr.GetStorage(), statsHandle, backupTS, schemasConcurrency, cfg.ChecksumConcurrency, skipChecksum, updateCh) + ctx, metawriter, client.GetCheckpointRunner(), mgr.GetStorage(), statsHandle, backupTS, schemasConcurrency, cfg.ChecksumConcurrency, skipChecksum, updateCh) if err != nil { return errors.Trace(err) } @@ -541,6 +627,9 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig if err != nil { return errors.Trace(err) } + // Since backupmeta is flushed on the external storage, + // we can remove the gc safepoint keeper + gcSafePointKeeperRemovable = true // Checksum has finished, close checksum progress. updateCh.Close() diff --git a/br/pkg/task/backup_ebs.go b/br/pkg/task/backup_ebs.go index 5d9a262d7cce6..ff0fb6a01a461 100644 --- a/br/pkg/task/backup_ebs.go +++ b/br/pkg/task/backup_ebs.go @@ -111,10 +111,7 @@ func RunBackupEBS(c context.Context, g glue.Glue, cfg *BackupConfig) error { return errors.Trace(err) } defer mgr.Close() - client, err := backup.NewBackupClient(ctx, mgr) - if err != nil { - return errors.Trace(err) - } + client := backup.NewBackupClient(ctx, mgr) opts := storage.ExternalStorageOptions{ NoCredentials: cfg.NoCreds, diff --git a/br/pkg/task/backup_raw.go b/br/pkg/task/backup_raw.go index 9d46c151d23c7..2b46347327501 100644 --- a/br/pkg/task/backup_raw.go +++ b/br/pkg/task/backup_raw.go @@ -144,10 +144,7 @@ func RunBackupRaw(c context.Context, g glue.Glue, cmdName string, cfg *RawKvConf } defer mgr.Close() - client, err := backup.NewBackupClient(ctx, mgr) - if err != nil { - return errors.Trace(err) - } + client := backup.NewBackupClient(ctx, mgr) opts := storage.ExternalStorageOptions{ NoCredentials: cfg.NoCreds, SendCredentials: cfg.SendCreds, @@ -216,9 +213,18 @@ func RunBackupRaw(c context.Context, g glue.Glue, cmdName string, cfg *RawKvConf CompressionLevel: cfg.CompressionLevel, CipherInfo: &cfg.CipherInfo, } + rg := rtree.Range{ + StartKey: backupRange.StartKey, + EndKey: backupRange.EndKey, + } + progressRange := &rtree.ProgressRange{ + Res: rtree.NewRangeTree(), + Incomplete: []rtree.Range{rg}, + Origin: rg, + } metaWriter := metautil.NewMetaWriter(client.GetStorage(), metautil.MetaFileSize, false, metautil.MetaFile, &cfg.CipherInfo) metaWriter.StartWriteMetasAsync(ctx, metautil.AppendDataFile) - err = client.BackupRange(ctx, req, metaWriter, progressCallBack) + err = client.BackupRange(ctx, req, progressRange, metaWriter, progressCallBack) if err != nil { return errors.Trace(err) } diff --git a/br/pkg/task/common.go b/br/pkg/task/common.go index 5d76a2db4f85b..2d04f916d98ec 100644 --- a/br/pkg/task/common.go +++ b/br/pkg/task/common.go @@ -96,8 +96,6 @@ const ( crypterAES192KeyLen = 24 crypterAES256KeyLen = 32 - tidbNewCollationEnabled = "new_collation_enabled" - flagFullBackupType = "type" ) diff --git a/br/pkg/task/restore.go b/br/pkg/task/restore.go index cf1ce4682a09f..83c22a29e61db 100644 --- a/br/pkg/task/restore.go +++ b/br/pkg/task/restore.go @@ -26,7 +26,6 @@ import ( "github.com/pingcap/tidb/br/pkg/utils" "github.com/pingcap/tidb/br/pkg/version" "github.com/pingcap/tidb/config" - "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/util" "github.com/pingcap/tidb/util/mathutil" "github.com/spf13/cobra" @@ -58,14 +57,20 @@ const ( FlagStreamRestoreTS = "restored-ts" // FlagStreamFullBackupStorage is used for log restore, represents the full backup storage. FlagStreamFullBackupStorage = "full-backup-storage" - - defaultRestoreConcurrency = 128 - defaultRestoreStreamConcurrency = 16 - maxRestoreBatchSizeLimit = 10240 - defaultPDConcurrency = 1 - defaultBatchFlushInterval = 16 * time.Second - defaultFlagDdlBatchSize = 128 - resetSpeedLimitRetryTimes = 3 + // FlagPiTRBatchCount and FlagPiTRBatchSize are used for restore log with batch method. + FlagPiTRBatchCount = "pitr-batch-count" + FlagPiTRBatchSize = "pitr-batch-size" + FlagPiTRConcurrency = "pitr-concurrency" + + defaultPiTRBatchCount = 8 + defaultPiTRBatchSize = 16 * 1024 * 1024 + defaultRestoreConcurrency = 128 + defaultPiTRConcurrency = 16 + maxRestoreBatchSizeLimit = 10240 + defaultPDConcurrency = 1 + defaultBatchFlushInterval = 16 * time.Second + defaultFlagDdlBatchSize = 128 + resetSpeedLimitRetryTimes = 3 ) const ( @@ -169,6 +174,9 @@ type RestoreConfig struct { StartTS uint64 `json:"start-ts" toml:"start-ts"` RestoreTS uint64 `json:"restore-ts" toml:"restore-ts"` tiflashRecorder *tiflashrec.TiFlashRecorder `json:"-" toml:"-"` + PitrBatchCount uint32 `json:"pitr-batch-count" toml:"pitr-batch-count"` + PitrBatchSize uint32 `json:"pitr-batch-size" toml:"pitr-batch-size"` + PitrConcurrency uint32 `json:"-" toml:"-"` // for ebs-based restore FullBackupType FullBackupType `json:"full-backup-type" toml:"full-backup-type"` @@ -200,6 +208,9 @@ func DefineStreamRestoreFlags(command *cobra.Command) { "support TSO or datetime, e.g. '400036290571534337' or '2018-05-11 01:42:23+0800'") command.Flags().String(FlagStreamFullBackupStorage, "", "specify the backup full storage. "+ "fill it if want restore full backup before restore log.") + command.Flags().Uint32(FlagPiTRBatchCount, defaultPiTRBatchCount, "specify the batch count to restore log.") + command.Flags().Uint32(FlagPiTRBatchSize, defaultPiTRBatchSize, "specify the batch size to retore log.") + command.Flags().Uint32(FlagPiTRConcurrency, defaultPiTRConcurrency, "specify the concurrency to restore log.") } // ParseStreamRestoreFlags parses the `restore stream` flags from the flag set. @@ -228,6 +239,15 @@ func (cfg *RestoreConfig) ParseStreamRestoreFlags(flags *pflag.FlagSet) error { FlagStreamStartTS, FlagStreamFullBackupStorage) } + if cfg.PitrBatchCount, err = flags.GetUint32(FlagPiTRBatchCount); err != nil { + return errors.Trace(err) + } + if cfg.PitrBatchSize, err = flags.GetUint32(FlagPiTRBatchSize); err != nil { + return errors.Trace(err) + } + if cfg.PitrConcurrency, err = flags.GetUint32(FlagPiTRConcurrency); err != nil { + return errors.Trace(err) + } return nil } @@ -354,10 +374,18 @@ func (cfg *RestoreConfig) Adjust() { } func (cfg *RestoreConfig) adjustRestoreConfigForStreamRestore() { - if cfg.Config.Concurrency == 0 || cfg.Config.Concurrency > defaultRestoreStreamConcurrency { - log.Info("set restore kv files concurrency", zap.Int("concurrency", defaultRestoreStreamConcurrency)) - cfg.Config.Concurrency = defaultRestoreStreamConcurrency + if cfg.PitrConcurrency == 0 { + cfg.PitrConcurrency = defaultPiTRConcurrency } + if cfg.PitrBatchCount == 0 { + cfg.PitrBatchCount = defaultPiTRBatchCount + } + if cfg.PitrBatchSize == 0 { + cfg.PitrBatchSize = defaultPiTRBatchSize + } + + log.Info("set restore kv files concurrency", zap.Int("concurrency", int(cfg.PitrConcurrency))) + cfg.Config.Concurrency = cfg.PitrConcurrency } func configureRestoreClient(ctx context.Context, client *restore.Client, cfg *RestoreConfig) error { @@ -424,42 +452,6 @@ func CheckRestoreDBAndTable(client *restore.Client, cfg *RestoreConfig) error { return nil } -func CheckNewCollationEnable( - backupNewCollationEnable string, - g glue.Glue, - storage kv.Storage, - CheckRequirements bool, -) error { - if backupNewCollationEnable == "" { - if CheckRequirements { - return errors.Annotatef(berrors.ErrUnknown, - "the config 'new_collations_enabled_on_first_bootstrap' not found in backupmeta. "+ - "you can use \"show config WHERE name='new_collations_enabled_on_first_bootstrap';\" to manually check the config. "+ - "if you ensure the config 'new_collations_enabled_on_first_bootstrap' in backup cluster is as same as restore cluster, "+ - "use --check-requirements=false to skip this check") - } - log.Warn("the config 'new_collations_enabled_on_first_bootstrap' is not in backupmeta") - return nil - } - - se, err := g.CreateSession(storage) - if err != nil { - return errors.Trace(err) - } - - newCollationEnable, err := se.GetGlobalVariable(tidbNewCollationEnabled) - if err != nil { - return errors.Trace(err) - } - - if !strings.EqualFold(backupNewCollationEnable, newCollationEnable) { - return errors.Annotatef(berrors.ErrUnknown, - "the config 'new_collations_enabled_on_first_bootstrap' not match, upstream:%v, downstream: %v", - backupNewCollationEnable, newCollationEnable) - } - return nil -} - func isFullRestore(cmdName string) bool { return cmdName == FullRestoreCmd } @@ -531,7 +523,7 @@ func RunRestore(c context.Context, g glue.Glue, cmdName string, cfg *RestoreConf return errors.Trace(versionErr) } } - if err = CheckNewCollationEnable(backupMeta.GetNewCollationsEnabled(), g, mgr.GetStorage(), cfg.CheckRequirements); err != nil { + if err = restore.CheckNewCollationEnable(backupMeta.GetNewCollationsEnabled(), g, mgr.GetStorage(), cfg.CheckRequirements); err != nil { return errors.Trace(err) } @@ -555,7 +547,7 @@ func RunRestore(c context.Context, g glue.Glue, cmdName string, cfg *RestoreConf g.Record(summary.RestoreDataSize, archiveSize) //restore from tidb will fetch a general Size issue https://github.com/pingcap/tidb/issues/27247 g.Record("Size", archiveSize) - restoreTS, err := client.GetTS(ctx) + restoreTS, err := client.GetTSWithRetry(ctx) if err != nil { return errors.Trace(err) } diff --git a/br/pkg/task/restore_test.go b/br/pkg/task/restore_test.go index 94bbcb3c3692c..b13ecf0eccc08 100644 --- a/br/pkg/task/restore_test.go +++ b/br/pkg/task/restore_test.go @@ -63,6 +63,16 @@ func TestConfigureRestoreClient(t *testing.T) { require.True(t, client.IsOnline()) } +func TestAdjustRestoreConfigForStreamRestore(t *testing.T) { + restoreCfg := RestoreConfig{} + + restoreCfg.adjustRestoreConfigForStreamRestore() + require.Equal(t, restoreCfg.PitrBatchCount, uint32(defaultPiTRBatchCount)) + require.Equal(t, restoreCfg.PitrBatchSize, uint32(defaultPiTRBatchSize)) + require.Equal(t, restoreCfg.PitrConcurrency, uint32(defaultPiTRConcurrency)) + require.Equal(t, restoreCfg.Concurrency, restoreCfg.PitrConcurrency) +} + func TestCheckRestoreDBAndTable(t *testing.T) { cases := []struct { cfgSchemas map[string]struct{} diff --git a/br/pkg/task/stream.go b/br/pkg/task/stream.go index a259452b14b2d..fdcc728a9ce5f 100644 --- a/br/pkg/task/stream.go +++ b/br/pkg/task/stream.go @@ -307,10 +307,7 @@ func NewStreamMgr(ctx context.Context, cfg *StreamConfig, g glue.Glue, isStreamS mgr: mgr, } if isStreamStart { - client, err := backup.NewBackupClient(ctx, mgr) - if err != nil { - return nil, errors.Trace(err) - } + client := backup.NewBackupClient(ctx, mgr) backend, err := storage.ParseBackend(cfg.Storage, &cfg.BackendOptions) if err != nil { @@ -427,7 +424,7 @@ func (s *streamMgr) backupFullSchemas(ctx context.Context, g glue.Glue) error { } schemasConcurrency := uint(mathutil.Min(backup.DefaultSchemaConcurrency, schemas.Len())) - err = schemas.BackupSchemas(ctx, metaWriter, s.mgr.GetStorage(), nil, + err = schemas.BackupSchemas(ctx, metaWriter, nil, s.mgr.GetStorage(), nil, s.cfg.StartTS, schemasConcurrency, 0, true, nil) if err != nil { return errors.Trace(err) @@ -1132,7 +1129,7 @@ func restoreStream( } defer client.Close() - currentTS, err := client.GetTS(ctx) + currentTS, err := client.GetTSWithRetry(ctx) if err != nil { return errors.Trace(err) } @@ -1200,10 +1197,10 @@ func restoreStream( } updateRewriteRules(rewriteRules, schemasReplace) - dmlFiles, err := client.LoadDMLFiles(ctx) + logFilesIter, err := client.LoadDMLFiles(ctx) pd := g.StartProgress(ctx, "Restore KV Files", int64(dataFileCount), !cfg.LogProgress) err = withProgress(pd, func(p glue.Progress) error { - return client.RestoreKVFiles(ctx, rewriteRules, dmlFiles, updateStats, p.Inc) + return client.RestoreKVFiles(ctx, rewriteRules, logFilesIter, cfg.PitrBatchCount, cfg.PitrBatchSize, updateStats, p.IncBy) }) if err != nil { return errors.Annotate(err, "failed to restore kv files") @@ -1549,7 +1546,7 @@ func initRewriteRules(client *restore.Client, tables map[int64]*metautil.Table) zap.Stringer("database", t.DB.Name), zap.Int("old-id", int(t.Info.ID)), zap.Array("rewrite-rules", zapcore.ArrayMarshalerFunc(func(ae zapcore.ArrayEncoder) error { - for _, r := range rules { + for _, r := range tableRules { for _, rule := range r.Data { if err := ae.AppendObject(logutil.RewriteRuleObject(rule)); err != nil { return err diff --git a/br/pkg/utils/BUILD.bazel b/br/pkg/utils/BUILD.bazel index 0ae948d18a779..c3bcc629183d5 100644 --- a/br/pkg/utils/BUILD.bazel +++ b/br/pkg/utils/BUILD.bazel @@ -79,6 +79,7 @@ go_test( ], embed = [":utils"], flaky = True, + shard_count = 20, deps = [ "//br/pkg/errors", "//br/pkg/metautil", diff --git a/br/pkg/utils/db.go b/br/pkg/utils/db.go index 23911fa6f0a93..6cc9f82a1229a 100644 --- a/br/pkg/utils/db.go +++ b/br/pkg/utils/db.go @@ -15,6 +15,10 @@ import ( "go.uber.org/zap" ) +const ( + tidbNewCollationEnabled = "new_collation_enabled" +) + var ( // check sql.DB and sql.Conn implement QueryExecutor and DBExecutor _ DBExecutor = &sql.DB{} @@ -94,14 +98,14 @@ func IsLogBackupEnabled(ctx sqlexec.RestrictedSQLExecutor) (bool, error) { return true, nil } -// CheckLogBackupTaskExist increases the count of log backup task. +// LogBackupTaskCountInc increases the count of log backup task. func LogBackupTaskCountInc() { LogBackupTaskMutex.Lock() logBackupTaskCount++ LogBackupTaskMutex.Unlock() } -// CheckLogBackupTaskExist decreases the count of log backup task. +// LogBackupTaskCountDec decreases the count of log backup task. func LogBackupTaskCountDec() { LogBackupTaskMutex.Lock() logBackupTaskCount-- @@ -117,3 +121,8 @@ func CheckLogBackupTaskExist() bool { func IsLogBackupInUse(ctx sessionctx.Context) bool { return CheckLogBackupEnabled(ctx) && CheckLogBackupTaskExist() } + +// GetTidbNewCollationEnabled returns the variable name of NewCollationEnabled. +func GetTidbNewCollationEnabled() string { + return tidbNewCollationEnabled +} diff --git a/br/pkg/utils/key.go b/br/pkg/utils/key.go index 062f4b5aac52d..62d194ca57a2e 100644 --- a/br/pkg/utils/key.go +++ b/br/pkg/utils/key.go @@ -163,7 +163,7 @@ func CloneSlice[T any](s []T) []T { // toClampIn: |_____| |____| |________________| // result: |_____| |_| |______________| // we are assuming the arguments are sorted by the start key and no overlaps. -// you can call CollapseRanges to get key ranges fits this requirements. +// you can call spans.Collapse to get key ranges fits this requirements. // Note: this algorithm is pretty like the `checkIntervalIsSubset`, can we get them together? func IntersectAll(s1 []kv.KeyRange, s2 []kv.KeyRange) []kv.KeyRange { currentClamping := 0 diff --git a/br/pkg/version/version.go b/br/pkg/version/version.go index ba3551f58b463..14a0201ad4325 100644 --- a/br/pkg/version/version.go +++ b/br/pkg/version/version.go @@ -32,6 +32,9 @@ var ( compatibleTiFlashMajor4 = semver.New("4.0.0") versionHash = regexp.MustCompile("-[0-9]+-g[0-9a-f]{7,}") + + checkpointSupportError error = nil + pitrSupportBatchKVFiles bool = true ) // NextMajorVersion returns the next major version. @@ -134,6 +137,10 @@ func CheckVersionForBRPiTR(s *metapb.Store, tikvVersion *semver.Version) error { return errors.Annotatef(berrors.ErrVersionMismatch, "TiKV node %s version %s is too low when use PiTR, please update tikv's version to at least v6.1.0(v6.2.0+ recommanded)", s.Address, tikvVersion) } + // If tikv version < 6.5, PITR do not support restoring batch kv files. + if tikvVersion.Major < 6 || (tikvVersion.Major == 6 && tikvVersion.Minor < 5) { + pitrSupportBatchKVFiles = false + } // The versions of BR and TiKV should be the same when use BR 6.1.0 if BRVersion.Major == 6 && BRVersion.Minor == 1 { @@ -148,7 +155,6 @@ func CheckVersionForBRPiTR(s *metapb.Store, tikvVersion *semver.Version) error { s.Address, tikvVersion, build.ReleaseVersion) } } - return nil } @@ -199,6 +205,14 @@ func CheckVersionForBR(s *metapb.Store, tikvVersion *semver.Version) error { } } + // reset the checkpoint support error + checkpointSupportError = nil + if tikvVersion.Major < 6 || (tikvVersion.Major == 6 && tikvVersion.Minor < 5) { + // checkpoint mode only support after v6.5.0 + checkpointSupportError = errors.Annotatef(berrors.ErrVersionMismatch, "TiKV node %s version %s is too low when use checkpoint, please update tikv's version to at least v6.5.0", + s.Address, tikvVersion) + } + // don't warn if we are the master build, which always have the version v4.0.0-beta.2-* if build.GitBranch != "master" && tikvVersion.Compare(*BRVersion) > 0 { log.Warn(fmt.Sprintf("BR version is outdated, please consider use version %s of BR", tikvVersion)) @@ -306,6 +320,14 @@ func FetchVersion(ctx context.Context, db utils.QueryExecutor) (string, error) { return versionInfo, nil } +func CheckCheckpointSupport() error { + return checkpointSupportError +} + +func CheckPITRSupportBatchKVFiles() bool { + return pitrSupportBatchKVFiles +} + type ServerType int const ( diff --git a/br/pkg/version/version_test.go b/br/pkg/version/version_test.go index f70a2074be0ec..96c8d9a306ef7 100644 --- a/br/pkg/version/version_test.go +++ b/br/pkg/version/version_test.go @@ -83,6 +83,29 @@ func TestCheckClusterVersion(t *testing.T) { } err := CheckClusterVersion(context.Background(), &mock, CheckVersionForBRPiTR) require.NoError(t, err) + require.Equal(t, CheckPITRSupportBatchKVFiles(), false) + } + + { + pitrSupportBatchKVFiles = true + build.ReleaseVersion = "v6.2.0" + mock.getAllStores = func() []*metapb.Store { + return []*metapb.Store{{Version: `v6.4.0`}} + } + err := CheckClusterVersion(context.Background(), &mock, CheckVersionForBRPiTR) + require.NoError(t, err) + require.Equal(t, CheckPITRSupportBatchKVFiles(), false) + } + + { + pitrSupportBatchKVFiles = true + build.ReleaseVersion = "v6.2.0" + mock.getAllStores = func() []*metapb.Store { + return []*metapb.Store{{Version: `v6.5.0`}} + } + err := CheckClusterVersion(context.Background(), &mock, CheckVersionForBRPiTR) + require.NoError(t, err) + require.Equal(t, CheckPITRSupportBatchKVFiles(), true) } { @@ -205,6 +228,29 @@ func TestCheckClusterVersion(t *testing.T) { } err := CheckClusterVersion(context.Background(), &mock, CheckVersionForBR) require.NoError(t, err) + require.Error(t, CheckCheckpointSupport()) + } + + { + build.ReleaseVersion = "v6.0.0-rc.2" + mock.getAllStores = func() []*metapb.Store { + // TiKV v6.0.0-rc.1 with BR v6.0.0-rc.2 is ok + return []*metapb.Store{{Version: "v6.0.0-rc.1"}} + } + err := CheckClusterVersion(context.Background(), &mock, CheckVersionForBR) + require.NoError(t, err) + require.Error(t, CheckCheckpointSupport()) + } + + { + build.ReleaseVersion = "v6.5.0-rc.2" + mock.getAllStores = func() []*metapb.Store { + // TiKV v6.5.0-rc.1 with BR v6.5.0-rc.2 is ok + return []*metapb.Store{{Version: "v6.5.0-rc.1"}} + } + err := CheckClusterVersion(context.Background(), &mock, CheckVersionForBR) + require.NoError(t, err) + require.NoError(t, CheckCheckpointSupport()) } { diff --git a/br/tests/br_foreign_key/run.sh b/br/tests/br_foreign_key/run.sh new file mode 100644 index 0000000000000..c0c0c98304b74 --- /dev/null +++ b/br/tests/br_foreign_key/run.sh @@ -0,0 +1,54 @@ +#!/bin/sh +# +# Copyright 2022 PingCAP, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -eu +DB="$TEST_NAME" + +run_sql "set @@global.tidb_enable_foreign_key=1;" +run_sql "set @@global.foreign_key_checks=1;" +run_sql "set @@foreign_key_checks=1;" +run_sql "create schema $DB;" +run_sql "create table $DB.t1 (id int key);" +run_sql "create table $DB.t2 (id int key, a int, b int, foreign key fk_1 (a) references t1(id) ON UPDATE SET NULL ON DELETE SET NULL, foreign key fk_2 (b) references t1(id) ON DELETE CASCADE ON UPDATE CASCADE);" +run_sql "insert into $DB.t1 values (1), (2), (3);" +run_sql "insert into $DB.t2 values (1, 1, 1), (2, 2, 2), (3, 3, 3);" +run_sql "update $DB.t1 set id=id+10 where id in (1, 3);" +run_sql "delete from $DB.t1 where id = 2;" + +echo "backup start..." +run_br backup db --db "$DB" -s "local://$TEST_DIR/$DB" --pd $PD_ADDR + +run_sql "drop schema $DB;" + +echo "restore start..." +run_br restore db --db $DB -s "local://$TEST_DIR/$DB" --pd $PD_ADDR + +set -x + +run_sql "select count(*) from $DB.t1;" +check_contains 'count(*): 2' + +run_sql "select count(*) from $DB.t2;" +check_contains 'count(*): 2' + +run_sql "select id, a, b from $DB.t2;" +check_contains 'id: 1' +check_contains 'id: 3' +check_contains 'a: NULL' +check_contains 'b: 11' +check_contains 'b: 13' + +run_sql "drop schema $DB" diff --git a/br/tests/lightning_check_partial_imported/config.toml b/br/tests/lightning_check_partial_imported/config.toml new file mode 100644 index 0000000000000..30cb6fe6b4eb3 --- /dev/null +++ b/br/tests/lightning_check_partial_imported/config.toml @@ -0,0 +1,5 @@ +[tikv-importer] +backend = "local" + +[mydumper.csv] +header = true diff --git a/br/tests/lightning_check_partial_imported/data/db01.tbl01-schema.sql b/br/tests/lightning_check_partial_imported/data/db01.tbl01-schema.sql new file mode 100644 index 0000000000000..b6832e95d95e3 --- /dev/null +++ b/br/tests/lightning_check_partial_imported/data/db01.tbl01-schema.sql @@ -0,0 +1,12 @@ +CREATE TABLE tbl01 ( + `id` INTEGER, + `val` VARCHAR(64), + `aaa` CHAR(66) DEFAULT NULL, + `bbb` CHAR(10) NOT NULL, + `ccc` CHAR(42) DEFAULT NULL, + `ddd` CHAR(42) DEFAULT NULL, + `eee` CHAR(66) DEFAULT NULL, + `fff` VARCHAR(128) DEFAULT NULL, + KEY `aaa` (`aaa`), + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; diff --git a/br/tests/lightning_check_partial_imported/data/db01.tbl01.csv b/br/tests/lightning_check_partial_imported/data/db01.tbl01.csv new file mode 100644 index 0000000000000..108134af2ee72 --- /dev/null +++ b/br/tests/lightning_check_partial_imported/data/db01.tbl01.csv @@ -0,0 +1,6 @@ +id,val,aaa,bbb,ccc,ddd,eee,fff +1,"v01","a01","b01","c01","d01","e01","f01" +2,"v02","a02","b02","c02","d02","e02","f02" +3,"v03","a03","b03","c03","d03","e03","f03" +4,"v04","a04","b04","c04","d04","e04","f04" +5,"v05","a05","b05","c05","d05","e05","f05" diff --git a/br/tests/lightning_check_partial_imported/run.sh b/br/tests/lightning_check_partial_imported/run.sh new file mode 100755 index 0000000000000..00ed78a5013d1 --- /dev/null +++ b/br/tests/lightning_check_partial_imported/run.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# +# Copyright 2022 PingCAP, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +MYDIR=$(dirname "${BASH_SOURCE[0]}") +set -eux + +check_cluster_version 4 0 0 'local backend' || exit 0 + +export GO_FAILPOINTS="github.com/pingcap/tidb/br/pkg/lightning/restore/FailBeforeStartImportingIndexEngine=return" +set +e +if run_lightning; then + echo "The first import doesn't fail as expected" >&2 + exit 1 +fi +set -e + +data_records=$(tail -n +2 "${MYDIR}/data/db01.tbl01.csv" | wc -l | xargs echo ) +run_sql "SELECT COUNT(*) FROM db01.tbl01 USE INDEX();" +check_contains "${data_records}" + +export GO_FAILPOINTS="" +set +e +if run_lightning --check-requirements=1; then + echo "The pre-check doesn't find out the non-empty table problem" + exit 2 +fi +set -e + +run_sql "TRUNCATE TABLE db01.tbl01;" +run_lightning --check-requirements=1 +run_sql "SELECT COUNT(*) FROM db01.tbl01;" +check_contains "${data_records}" +run_sql "SELECT COUNT(*) FROM db01.tbl01 USE INDEX();" +check_contains "${data_records}" diff --git a/br/tests/lightning_checkpoint/run.sh b/br/tests/lightning_checkpoint/run.sh index 86551fd6246eb..5263dd90f1acf 100755 --- a/br/tests/lightning_checkpoint/run.sh +++ b/br/tests/lightning_checkpoint/run.sh @@ -79,6 +79,9 @@ for i in $(seq "$TABLE_COUNT"); do done set -e +# at the failure of last table, all data engines are imported so finished == total +grep "print lightning status" "$TEST_DIR/lightning.log" | grep -q "equal=true" + export GO_FAILPOINTS="$SLOWDOWN_FAILPOINTS" # After everything is done, there should be no longer new calls to ImportEngine # (and thus `kill_lightning_after_one_import` will spare this final check) diff --git a/br/tests/lightning_checkpoint_columns/run.sh b/br/tests/lightning_checkpoint_columns/run.sh index 401c75cfb9f64..5809d05a1b830 100755 --- a/br/tests/lightning_checkpoint_columns/run.sh +++ b/br/tests/lightning_checkpoint_columns/run.sh @@ -29,6 +29,8 @@ echo "INSERT INTO tbl (j, i) VALUES (3, 1),(4, 2);" > "$DBPATH/cp_tsr.tbl.sql" # Set the failpoint to kill the lightning instance as soon as one row is written PKG="github.com/pingcap/tidb/br/pkg/lightning/restore" export GO_FAILPOINTS="$PKG/SlowDownWriteRows=sleep(1000);$PKG/FailAfterWriteRows=panic;$PKG/SetMinDeliverBytes=return(1)" +# Check after 1 row is written in tidb backend, the finished progress is updated +export GO_FAILPOINTS="${GO_FAILPOINTS};github.com/pingcap/tidb/br/pkg/lightning/PrintStatus=return()" # Start importing the tables. run_sql 'DROP DATABASE IF EXISTS cp_tsr' @@ -40,11 +42,16 @@ set -e run_sql 'SELECT count(*) FROM `cp_tsr`.tbl' check_contains "count(*): 1" +# After FailAfterWriteRows, the finished bytes is 36 as the first row size +grep "PrintStatus Failpoint" "$TEST_DIR/lightning.log" | grep -q "finished=36" + # restart lightning from checkpoint, the second line should be written successfully -export GO_FAILPOINTS= +# also check after restart from checkpoint, final finished equals to total +export GO_FAILPOINTS="github.com/pingcap/tidb/br/pkg/lightning/PrintStatus=return()" set +e run_lightning -d "$DBPATH" --backend tidb --enable-checkpoint=1 2> /dev/null set -e run_sql 'SELECT j FROM `cp_tsr`.tbl WHERE i = 2;' check_contains "j: 4" +grep "PrintStatus Failpoint" "$TEST_DIR/lightning.log" | grep -q "equal=true" diff --git a/br/tests/lightning_compress/config.toml b/br/tests/lightning_compress/config.toml new file mode 100644 index 0000000000000..000018c5c41d4 --- /dev/null +++ b/br/tests/lightning_compress/config.toml @@ -0,0 +1,18 @@ +[mydumper.csv] +separator = ',' +delimiter = '"' +header = true +not-null = false +null = '\N' +backslash-escape = true +trim-last-separator = false + +[checkpoint] +enable = true +schema = "tidb_lightning_checkpoint_test" +driver = "mysql" +keep-after-success = true + +[tikv-importer] +send-kv-pairs=10 +region-split-size = 1024 diff --git a/br/tests/lightning_compress/data.gzip/compress-schema-create.sql.gz b/br/tests/lightning_compress/data.gzip/compress-schema-create.sql.gz new file mode 100644 index 0000000000000000000000000000000000000000..6571d2a15b507c2b8d3d5c3206b7b4f1410dcbd4 GIT binary patch literal 113 zcmb2|=3oGW|Cg=@nHUt=5gwbx6Z07m$pAE;wviUDGV(rC47avOtV9xCZ$cBowA6*h*f}r P;s5`~*U~+bfi?jEN8l<- literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.gzip/compress.empty_strings-schema.sql.gz b/br/tests/lightning_compress/data.gzip/compress.empty_strings-schema.sql.gz new file mode 100644 index 0000000000000000000000000000000000000000..542898561bab1b01cf4e274116413dabfb713c11 GIT binary patch literal 175 zcmV;g08sxQiwFP!00000|8&Vci-Ry20N_2p;=N7fKyx@8h(px(u0ooE#@QtO%wSq# zTJYbO4(-&A4^NtWH`Oca73+GG2VM literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.gzip/compress.escapes-schema.sql.gz b/br/tests/lightning_compress/data.gzip/compress.escapes-schema.sql.gz new file mode 100644 index 0000000000000000000000000000000000000000..bed4b7859ac92be875a58e014f39fb8d74173721 GIT binary patch literal 221 zcmV<303!b%iwFP!00000|76TTYr-%X#_@YU#pA6lgIe$~5D&3^x0S^>()1u>_!`Y1 z;?iLvxNkpp*cfj^6uwPjO4BfEj@@q{(~dq7{_o6mSIn$y@40qt%Tm-nKsDTbAhTf zlh^&}5|cZ-!`6p`yS|~3LvKh^i?YfJkb3MCExHiKcKH`=o`mknEH3H&{=?4Dtfdr& Xe)rb;FwedN00960il|vd4FLcEMN@9> literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.gzip/compress.escapes.000000000.csv.gz b/br/tests/lightning_compress/data.gzip/compress.escapes.000000000.csv.gz new file mode 100644 index 0000000000000000000000000000000000000000..37028e36d9de82f124269e054e0bf9aa9f57426d GIT binary patch literal 103 zcmb2|=3oGW|2mxuxehysu>5WQ&Y${a*0y!azYvMezG literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.gzip/compress.multi_rows-schema.sql.gz b/br/tests/lightning_compress/data.gzip/compress.multi_rows-schema.sql.gz new file mode 100644 index 0000000000000000000000000000000000000000..328fed9cb3df88807fc198eea7177de65e421208 GIT binary patch literal 141 zcmb2|=3oGW|28K#@--OK;COZI#TEzUIYg9ffai+n1>u`yDx}6y32aY(LQM|Nl2hN{BZASpY9tK~4Yw literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.gzip/compress.multi_rows.000000000.csv.gz b/br/tests/lightning_compress/data.gzip/compress.multi_rows.000000000.csv.gz new file mode 100644 index 0000000000000000000000000000000000000000..c732af263d57611423998ac6624b8cc95e160013 GIT binary patch literal 2763 zcmb2|=3oGW|8I^f3Nje*uo&#yJ+mVH{e726Q4uwr%zxg~XO4o=5Eu=C(GVC7fzc2c h4S~@R7!85Z5Euj@aPy}c1H=FSw@S)49*q%Y000A9X!`&F literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.gzip/compress.threads-schema.sql.gz b/br/tests/lightning_compress/data.gzip/compress.threads-schema.sql.gz new file mode 100644 index 0000000000000000000000000000000000000000..1782675bfc7fea8c917e35d7f18d78b2b8464379 GIT binary patch literal 444 zcmV;t0Ym;DiwFP!00000|CEzaZ`v>r$KUxB*C!l=L|~|@RQ16)*J3TPk$riHrYV7v z(MYW;g)nvBe#%%&2$ZN#k$u0r^Z#=H(co(8kNq)NBv3p;3#-B{%RhtBZBH2Fgg|^2 zB4pK5nJ?Gd3|J2!qq#vIq%z20Rcs1Zv5D`&&TWg0%h#YZfr`U$ShIEA41O=m$ERh< z#*-WGI8Mo;8TVV^h0y}74W*?|`vrK<z;sJ-sUAXyKuq4^?hi4%U|JyPB444z-zrpn){Gb}f#DDC*$Cuv59U9XVJl8GZ! zgh2+m+r6-Ug0?^GE8TBxz+76=Ch5Y2Rtg14t|A34F%{Si>$Jj0SY|=NFdCTrh#Jr7VlNQHOOxz}L!F=R34 m#vsK!XBZJg9UfA%@wIRT^(aWI)>^BFKfI9Ue31nKjm`1Ke^ z(;!I}^CXqG4+ox-AU+v-h?4YVXm)opFpZYWNq9P0I$xdwlXQ|QiwN%{F*J#TFwG7Z z9!CrD@H|Y?_-Pr0X&^=)=1CgG&%gxJC=7#XI*-Dv7uWxHl=Kq>N%Ry?gY1tudU^z3 zzt|?=TMF}X$lj`9og)lPa5tI$DIO34R$>1E^^Uz&-GFO5E;ZkA{%WKucO?ap~$V%gt_T3qibVsJIwgnm{EuEuZrWv=T?L5=P&%iWIM1F(xh71@vVCI*O$TAf%MgtR@&~%ss#FH56|VMBOZz zc8+2%qS2s`p?|eGnJ?4MQ7omCm9tCJ?xKcm?90q^6h9Hd%C>H_$&zX3C~i`sf@h59 zoavO+XPjavYtAy#a8zG`AOO(+bD&3O1->}Fj+^uv!znAFu8}`*&?YK)vI!kUiRTT#5`lg z7M5+*8OMDT2me#NgDH~=!ls)J{GB6?@Wvq6fOW%n##;+p2!3cOwyZ0jcZ6qXgYzoe z=D4hW-L`CLBHqmrqabxdA!FHwqcY?9O9fA4-X6%D<*+6g^q~ThmNgKU2ycEOPu3UD zKSC1>vw~m@3y#F3M^y1vM+xD;1QjXrYD<{-o8@)Wt+3y4-?Q8g4;Lh)c!gY;=&fa0 z{WlZ#Cl=wJT|@)vn$SAO1?+;O&VdR3Y9ZYL(=tIKx5OxOE^aVb!GasV8EZ;vL!z01 zFee6S`5INw7z}yc4DH_w_C7G~=fPr@7-sSss1MMT zP#+&1kYr+lLRn%_azM6@d3IK#*YU&-kJ*l*4;uy literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.snappy/compress.empty_strings.000000000.sql.snappy b/br/tests/lightning_compress/data.snappy/compress.empty_strings.000000000.sql.snappy new file mode 100644 index 0000000000000000000000000000000000000000..9c81e8f78f234b325aa6e86d6591107abf1beef0 GIT binary patch literal 128 zcmey*#=ubQml#kG$ymg|u;vYKv%Z$1iGiVkp+c~0h=QM^uWPVEQf6LaQKgo?HJ7Jf zuxn6=f~Q}Izd}N4Zb3<9d~r!pW?p)6fTqcoA(+NG>M=?% KaTBPxH5UK`3m_8! literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.snappy/compress.escapes-schema.sql.snappy b/br/tests/lightning_compress/data.snappy/compress.escapes-schema.sql.snappy new file mode 100644 index 0000000000000000000000000000000000000000..9e27befa522a077cf841ceeef3223aabf93bc252 GIT binary patch literal 251 zcmXw!!D@p*6h)_9bm6|BUA^p73P#8x5V9D@msUD4LC1wHC8Kc)hI9;Z0_jH-`X&9d zLjIt2)8$>9!@0jVg!E~(K9uB#kniWa=JWc(1AjCbhvN`(6p+#-=1{k~I)3=U%wic* zfgota5v1z3)j{nvH)tb`{l!5wTK1il!(Z1<<$sH18&t!~u$6&Npaff>f&2bKqzJ|rp5 i6Ro>Ax-GugBh7~N`N_OZ-|Gpm73V|q|K1E|X4W6cQ%TGK literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.snappy/compress.escapes.000000000.sql.snappy b/br/tests/lightning_compress/data.snappy/compress.escapes.000000000.sql.snappy new file mode 100644 index 0000000000000000000000000000000000000000..1380b47d9881e7064fb08e1077c928caa8ba127a GIT binary patch literal 184 zcmey*#=ubQml#kG$+(JvVV>3bB7H4I69Yp7Lxo`15CuO+U)NxTq|Cg;qDn1&Yc5Z} zVAr4!1y8>ae}#n9;^f4F)Zzq%Fh`$I*I+IULml;)7>KG;a7$qx(=-66yoeK3d zC{Wkb;nFYys!;-}iBXD)$%7&wze3$0#UK%c!K#db3i5!eqGObFbaY~rVnHfQlZ}!= JSY6Ya3jo3{G4KEY literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.snappy/compress.multi_rows-schema.sql.snappy b/br/tests/lightning_compress/data.snappy/compress.multi_rows-schema.sql.snappy new file mode 100644 index 0000000000000000000000000000000000000000..5cc0365d1c65d62156db13d3b38ee7c2dd7ee5c4 GIT binary patch literal 146 zcmey*#=ubQml#kG$=JfcV4;_>OQbmrmT% z!@UFF!s+DTqJwWj1aT0@>J@Ryl2Oi2c&6i)=ksuoFTaEPbt#0SZn}1`6}r{%_03W= z98P?{H$Qvx*23b#V$y5(lkW2Ub}xCb^Ef?xIy>KtI^AA-y`OZt{ncc!cd~oDvwgUK zdNfEjmsd90y{J)7)7ph(7d!2x+Y{ zeI5jjdTlDCrQf{`5+Fc;009C72oNCfM<7!Mh9U$A5FkK+009C72n1!|btwV_2oNAZ zfB*pk1Y%`ictn5z0RjXF5FkK+Kp~KMo5Wib9rT>-8(yISp*1-3fw6k zjdw3B0t7|{mWoGXtz{AT_XS?AwJNm`9=(74D*gLAFNkoZ8g4v%a#~cyoM{8dM z2oNAZfB*pk1jZD|Rl%52ZX-Z|009C72oNApR)Jgk7p@C}3x9yP^jElb<3t)s^wy>Qms@G#{v<(gE`t8hJN(CtZrothIN6F&|5Y}-sB(({QlTOat0w!v}4fh zS*8~g2E%Y7YZV1e!|`ws27N?mEa%wvTC$tydg#QD_7D6>u4)bCe_XiT^LVV2&~ta> zE~5tK+_t#b8$s5@JGx`9ijCW_>~PGy+>6CqnsTDTr8ecFpr-4Uxe95swYm>QKv{oXtv{_8$+p$l|+|v?N3`z(#ghfeDxEfE9 zK)U=nP5C<~)nJ%YhZ(rH%c#@!98LyOrOT|2&RldKyGXur^ga$&L26kPAMGDb$CDrm z`n_S;4`xr0VLM!4hD}sflYFIy_A#}bd_vy73ZUd});~cmTKZNf`QN4X!eU`%L%opK z4TCyFNH;cCAlQL5?HWMaFF(MraDDRwEMyDnHjyCFxT|CogvqW&aMKFIW3%N9&y2Rt b;+8b0lV^>iy&5v8ZN~}zn|pC@wlaSK&XT7p literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.snappy/compress.threads.000000000.sql.snappy b/br/tests/lightning_compress/data.snappy/compress.threads.000000000.sql.snappy new file mode 100644 index 0000000000000000000000000000000000000000..dc7c1ee8adc0b0f5912ba123c64c483f7cfcaab4 GIT binary patch literal 1395 zcmXX`O>7fa5T56F!SPRG@<)sa-5|ooU}CTB#C9lAW3r*4#!2j?At++m*e}k4z3c3* z6YL^{lh`4+krFDka#avjOGR5MwLQ?9142>7rD_jV%b~{}dgzH;n+h#`RNQ91`F7^b z%(wGm7l0ZS##O4yVZrXJ0pk^<6^>tC*L|18=Z^}F|O!j zB+@~(Fqu3d*!J3etT))((cy5}nQ1Q0*mhBE?Ez13DB$x^wic($-0gMkx!g|ZdDX2^ zr68|~8LaSc^hdO{(!QZ+X6eUSc&bmdJ7iV*GeEr7n zSHW@fToFPP^qww)DJ`e;Yf!ib;HN(6M9_Eo8dzWUqZgr2gb^PqLV(y$ivWGS1_-{g z1Fa;-D?8X)G_s!4%V1wpL=Ee^424|=2su`&rTn_S0ykCwf>jH!)lK3(Sb_EXg4M|S z^mX)f9T|h((0aIun#c+%%+IBB>O7y2WhF_bt;veM&#<_U)U9;_8$L*V{91Qn9w#nk zWlWSor{D74YltZ%^W4XBM0V3gXgDvNwtPF!l@>rHY_)7#NvJAzPk zoP?(+R5^qdMOOHXEQxx=xEwK(ScJqbQ0QG!?)@@UPZ2jkH7uCz3RcB}zOcKnu$$0c z;!{+Y#VDvx#;J#OR#Pz4_nSn}7}aU9CUcpre#cO_W2nA-+!%EzDJC>t)dWp_Sc2_( zbZa0yPSJCk%F9_Ij3;e|?dxzWREszLX=}OcUXqnd`kF1aW;2F7`DXCdPUuTeUV=OY zzUoJ|CA*MF;B4_dlY}+&?`_mDprW>4>%A{*c4jP{OEt_iHkca8$J5K;i&g5Z*_@Jk z)My+iL*aUZF~lC$&EN~)s4LokE`cN0Z-$t)(Yp%aN*!A5T-%;BZJUwvn}(8w&?5i&!EF(nCUeqNB0^_v%mTO5Cr z`iobf765-OfUb-s3<;PBfjM)ln~CStES89p zQ#W^`okyg(uTaG$OPDBJl5j#35$`R-n=CmQiY#m7QV^L5>3La2R;wyxvedT_ciuIH z{2u2&9bb1jd%6sMCQhV?2|3{D^LT7*@dxP5`^sBD_Ok`uS**;-N=A?pm`l8#5lGVU z99Hs-%j06=PN$Vl3L0|wRh%X-ppVdVikzX_PP9H7P-*g4$uyDpoS4S+4CB@^SvT90 zP#0$ydU%A348`dQE_P-lIyk`%(cx*ragh)gJsBB|?`fiE4iYai66J=EfqiC1nqiLJ Uzu1BN-aZc->ihrpIggwF1F-R_F8}}l literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.zstd/compress-schema-create.sql.zst b/br/tests/lightning_compress/data.zstd/compress-schema-create.sql.zst new file mode 100644 index 0000000000000000000000000000000000000000..12bdbd710973e7229b4877b70edcde04708b142a GIT binary patch literal 108 zcmV-y0F(bHwJ-ey0Q~|0GR77iaBCAVMi~p0clZa z<~)kx0rBdy(`|PbH1ELhfHKZp$r4ml<Y4`k-@!^(@|2yKGN!PI4~^$z%=2L&c7KTtl}lC zUZSHT&K>#M&j36Bc6?$4*W!#>Sw6S~<{LgwzUAu)YK@X)m|j~?HRHw0rtTKEFoi@3 V1OR791K?tZvM(KpIs?7f?pB&~NLl~@ literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.zstd/compress.empty_strings.000000000.csv.zst b/br/tests/lightning_compress/data.zstd/compress.empty_strings.000000000.csv.zst new file mode 100644 index 0000000000000000000000000000000000000000..aa89918bb2cee01b2aded5caf591f0e61a0ef00e GIT binary patch literal 50 zcmV-20L}j>wJ-ey04)IkLPH1+um=H_jVzp{jN85W&`d+_gdz8^V8|UX_FtA_B(+A z8UO%`s6Z@X>wK_u?=_+$W&!}hwJ0Q0(G5fk$+C7*Fq{M+-(gR?#E~Ucz32xQDzWt; zp%r>B3ngN}$oAan+RYtIa7T2EDHcqNGT+l$*W^8Ul?!0$_d@Uc_RkFORq(O_??6y< zZGG4NS@XWA0wi+LKEH*NXX!XbEb+933dGiViWv@GGIi(x9S}@=0tEnPND~+?49|J< M^!Bka&4tllDH9D}a{vGU literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.zstd/compress.escapes.000000000.csv.zst b/br/tests/lightning_compress/data.zstd/compress.escapes.000000000.csv.zst new file mode 100644 index 0000000000000000000000000000000000000000..40994e745bdf3d6e23bed1ed837e66677df3e11f GIT binary patch literal 88 zcmV-e0H^;bwJ-ey09^tA;>Hmfpa%djGcz+2*{00`$k4xsT82`SSaF1zDnst~PQ$l3 uan^1yWPMy8JH5WX-kt6QLzYsCb72qw!3(Z%z6%U#a3Y)u=fMC~U6KtWXi_^kh2r)`b2ymjgQVPZXt6=PkSKwc3K>(&j7 zX_UHV)ig(G3D5gY3$eT7EJ~w>VKjhzguOSx_nQ`CccitW&IF>)#^sbhJ1!RhRy9yp m#ZbuebGFaDEIo`-l7KoXb$H~$!Z*jar7eO$q67d9h+{;889a{w literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.zstd/compress.multi_rows.000000000.csv.zst b/br/tests/lightning_compress/data.zstd/compress.multi_rows.000000000.csv.zst new file mode 100644 index 0000000000000000000000000000000000000000..4db1bea4c69f959a9050322b82d9b7a70418ef16 GIT binary patch literal 178 zcmdPcs{fZIqlbaPLMc&+mrE&;iQ(;kLt}?xw-^Qn2F4Hu0h7P~|Nm!%@&tjr-~XAR zJRu-sk`9IY50(0SrQ4|8p`tVPv>p0^&O`dL1q+- zhhNWrTBG9x3953dsX|%Q1#xLmKmhn>!46}o4_KNlf>R=?avDtSW|g!jm6J>OuHB`R zrhEz`jr2y*(3TqJaJdxQ*Y6$G`P5;Qb9(RDE(z+g+=m9XvcTcDryaq6FrK$4lFspf zJm~RMMw~{#Y+7S&1^u4FNNGDcC6GjVN1(xA)`UU9nnbYesJUfk6fsukm(CUHS}KTp zVFzlk>sFSE!uG-GwVsi;%nV}-QJGK{!)3W6q&@eyo{kwrQ0B4eRlqj|axhRT+)DDW!;L`$v6Yt?naJjE`(Y6^lT;S{7)F23ADpmBLL0q;m;_kJcH)Z&Pe+q7xh7 yX=D1?4bIj8$SMlB(WgFp2-i>m literal 0 HcmV?d00001 diff --git a/br/tests/lightning_compress/data.zstd/compress.threads.000000000.csv.zst b/br/tests/lightning_compress/data.zstd/compress.threads.000000000.csv.zst new file mode 100644 index 0000000000000000000000000000000000000000..13eef0ba83011073d588bcfc35896b64f5f056e5 GIT binary patch literal 1030 zcmV+h1o`_YwJ-f-^b*A%0OIkOCh)4x0FtXLx8e&KUtxocuqIu_Gl9g6fhC9`0WuH$ z2s|TFp2q_K0TdD``8X7W$Pmb+7lT1OM8g;gIvGSnFbf3CVr~g~HL|%e+JZ5!0tRv6 z-N4g;UvChM#aGfp&FG#l!QN!5eB%uy=l^5pUcTew6$(uOv)Fb*C3ER!`e$+url z;X!M$_R`F-0vvjl((&4}z1Rj@coadkitkQ-NiUk3Ss?+sB`c1pWAn zt1c2VJJ>#exu6kMrU(QEK$2D>2*3h>fud~#5V(OC;czLOh^(iyvktc!;mQJs0?{?T z5$ujv+lTdbf8b7vv7?J5F0Iw`-5eccF}J-5*)hQCy)MFaJtLCRYz}BVox57lw#$Ukq*Lu)}F=-GjWsY8V2(@ zXOuwkvQz_SrP?Dpf2+9_reN-J#s#?mYDGpnxZ)v*0C|MR?h?6YwrW012}^dZvJnR* zM~U#DOsl9ADTU(I7aezoCwv!Nb3zN1kEoJcvL}U~~rFK2nST zbQd&SM3zePDubwHBrw6Wm^a9M3etutx}knIct?j8?F@{n4K3=Rn>loIJV-1|NV}?? zEfmoP8h*C4wszERXSAsro!m=;GQtP;c`vl|NHvUx4q8cIQ2J8fan$zu_jTtv0zZ&~ z@KK(k;u-DTpF}&!cjz59c*Y1O6IRJ%Zcd2Nhma|qlXSvF2d6t}@yufAdEKW)KF6*4 A /dev/null + set -e + + # restart lightning from checkpoint, the second line should be written successfully + export GO_FAILPOINTS= + set +e + run_lightning --backend $BACKEND -d "tests/$TEST_NAME/data.$compress" --enable-checkpoint=1 2> /dev/null + set -e + + run_sql 'SELECT count(*), sum(PROCESSLIST_TIME), sum(THREAD_OS_ID), count(PROCESSLIST_STATE) FROM compress.threads' + check_contains 'count(*): 43' + check_contains 'sum(PROCESSLIST_TIME): 322253' + check_contains 'sum(THREAD_OS_ID): 303775702' + check_contains 'count(PROCESSLIST_STATE): 3' + + run_sql 'SELECT count(*) FROM compress.threads WHERE PROCESSLIST_TIME IS NOT NULL' + check_contains 'count(*): 12' + + run_sql 'SELECT count(*) FROM compress.multi_rows WHERE a="aaaaaaaaaa"' + check_contains 'count(*): 100000' + + run_sql 'SELECT hex(t), j, hex(b) FROM compress.escapes WHERE i = 1' + check_contains 'hex(t): 5C' + check_contains 'j: {"?": []}' + check_contains 'hex(b): FFFFFFFF' + + run_sql 'SELECT hex(t), j, hex(b) FROM compress.escapes WHERE i = 2' + check_contains 'hex(t): 22' + check_contains 'j: "\n\n\n"' + check_contains 'hex(b): 0D0A0D0A' + + run_sql 'SELECT hex(t), j, hex(b) FROM compress.escapes WHERE i = 3' + check_contains 'hex(t): 0A' + check_contains 'j: [",,,"]' + check_contains 'hex(b): 5C2C5C2C' + + run_sql 'SELECT id FROM compress.empty_strings WHERE a = """"' + check_contains 'id: 3' + run_sql 'SELECT id FROM compress.empty_strings WHERE b <> ""' + check_not_contains 'id:' + done +done diff --git a/build/nogo_config.json b/build/nogo_config.json index 731eed4c54f00..ce3715232b472 100644 --- a/build/nogo_config.json +++ b/build/nogo_config.json @@ -229,6 +229,7 @@ }, "gci": { "exclude_files": { + "external/": "no need to vet third party code", "/external/": "no need to vet third party code", ".*_generated\\.go$": "ignore generated code", "/cgo/": "ignore cgo code", @@ -364,6 +365,8 @@ "ddl/backfilling.go": "ddl/backfilling.go", "ddl/column.go": "ddl/column.go", "ddl/index.go": "ddl/index.go", + "ddl/ttl.go": "ddl/ttl.go", + "ddl/ttl_test.go": "ddl/ttl_test.go", "ddl/ingest/": "ddl/ingest/", "expression/builtin_cast.go": "expression/builtin_cast code", "server/conn.go": "server/conn.go", @@ -744,17 +747,19 @@ "exclude_files": { "/build/": "no need to linter code", "/external/": "no need to vet third party code", - ".*_generated\\.go$": "ignore generated code" + ".*_generated\\.go$": "ignore generated code", + ".*_test\\.go$": "ignore test code" }, "only_files": { "util/gctuner": "util/gctuner", + "util/cgroup": "util/cgroup code", + "util/watcher": "util/watcher", + "br/pkg/lightning/restore/": "br/pkg/lightning/restore/", "br/pkg/lightning/mydump/": "br/pkg/lightning/mydump/", - "br/pkg/lightning/restore/opts": "br/pkg/lightning/restore/opts", "executor/aggregate.go": "executor/aggregate.go", "types/json_binary_functions.go": "types/json_binary_functions.go", "types/json_binary_test.go": "types/json_binary_test.go", "ddl/": "enable to ddl", - "util/cgroup": "util/cgroup code", "expression/builtin_cast.go": "enable expression/builtin_cast.go", "planner/core/plan.go": "planner/core/plan.go", "server/conn.go": "server/conn.go", diff --git a/build/patches/io_etcd_go_etcd_raft_v3.patch b/build/patches/io_etcd_go_etcd_raft_v3.patch deleted file mode 100644 index 11c777b38f4de..0000000000000 --- a/build/patches/io_etcd_go_etcd_raft_v3.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -urN a/raftpb/BUILD.bazel b/raftpb/BUILD.bazel ---- a/raftpb/BUILD.bazel 1969-12-31 19:00:00.000000000 -0500 -+++ b/raftpb/BUILD.bazel 2000-01-01 00:00:00.000000000 -0000 -@@ -1,4 +1,5 @@ - load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") -+load("@rules_proto//proto:defs.bzl", "proto_library") - - go_library( - name = "raftpb", -@@ -28,3 +29,12 @@ - srcs = ["confstate_test.go"], - embed = [":raftpb"], - ) -+ -+# keep -+proto_library( -+ name = "raftpb_proto", -+ srcs = ["raft.proto"], -+ deps = ["@com_github_gogo_protobuf//gogoproto:gogo_proto"], -+ import_prefix = "etcd/raft/v3/", -+ visibility = ["//visibility:public"], -+) diff --git a/cmd/benchkv/main.go b/cmd/benchkv/main.go index 73a388bebbfe5..2b7cf5c9e9abb 100644 --- a/cmd/benchkv/main.go +++ b/cmd/benchkv/main.go @@ -14,7 +14,6 @@ package main -// #nosec G108 import ( "context" "flag" diff --git a/cmd/benchraw/main.go b/cmd/benchraw/main.go index 80f1a1d2289bc..c042d59e9f180 100644 --- a/cmd/benchraw/main.go +++ b/cmd/benchraw/main.go @@ -14,7 +14,6 @@ package main -// #nosec G108 import ( "context" "flag" diff --git a/cmd/ddltest/index_test.go b/cmd/ddltest/index_test.go index 7d3206197eba4..dbd96aa62aa39 100644 --- a/cmd/ddltest/index_test.go +++ b/cmd/ddltest/index_test.go @@ -18,11 +18,13 @@ import ( goctx "context" "fmt" "math" + "os" "sync" "sync/atomic" "testing" "time" + "github.com/pingcap/log" "github.com/pingcap/tidb/store/gcworker" "github.com/pingcap/tidb/table" "github.com/stretchr/testify/require" @@ -48,6 +50,11 @@ func (s *ddlSuite) checkDropIndex(t *testing.T, tableName string) { // TestIndex operations on table test_index (c int, c1 bigint, c2 double, c3 varchar(256), primary key(c)). func TestIndex(t *testing.T) { + err := os.Setenv("tidb_manager_ttl", fmt.Sprintf("%d", *lease+5)) + if err != nil { + log.Fatal("set tidb_manager_ttl failed") + } + s := createDDLSuite(t) defer s.teardown(t) diff --git a/cmd/explaintest/r/collation_agg_func_disabled.result b/cmd/explaintest/r/collation_agg_func_disabled.result index 4b4a9d1074af8..b5075b3c82f83 100644 --- a/cmd/explaintest/r/collation_agg_func_disabled.result +++ b/cmd/explaintest/r/collation_agg_func_disabled.result @@ -133,13 +133,13 @@ approx_count_distinct(value collate utf8mb4_bin, value1) create table tt(a char(10), b enum('a', 'B', 'c'), c set('a', 'B', 'c'), d json) collate utf8mb4_general_ci; insert into tt values ("a", "a", "a", JSON_OBJECT("a", "a")); insert into tt values ("A", "A", "A", JSON_OBJECT("A", "A")); -Error 1265: Data truncated for column 'b' at row 1 +Error 1265 (01000): Data truncated for column 'b' at row 1 insert into tt values ("b", "b", "b", JSON_OBJECT("b", "b")); -Error 1265: Data truncated for column 'b' at row 1 +Error 1265 (01000): Data truncated for column 'b' at row 1 insert into tt values ("B", "B", "B", JSON_OBJECT("B", "B")); insert into tt values ("c", "c", "c", JSON_OBJECT("c", "c")); insert into tt values ("C", "C", "C", JSON_OBJECT("C", "C")); -Error 1265: Data truncated for column 'b' at row 1 +Error 1265 (01000): Data truncated for column 'b' at row 1 split table tt by (0), (1), (2), (3), (4), (5); desc format='brief' select min(a) from tt; id estRows task access object operator info @@ -210,9 +210,9 @@ select min(b) from tt; min(b) B desc format='brief' select min(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select min(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select max(b) from tt; id estRows task access object operator info StreamAgg 1.00 root funcs:max(Column#8)->Column#6 @@ -223,9 +223,9 @@ select max(b) from tt; max(b) c desc format='brief' select max(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select max(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select min(c) from tt; id estRows task access object operator info HashAgg 1.00 root funcs:min(collation_agg_func.tt.c)->Column#6 @@ -235,9 +235,9 @@ select min(c) from tt; min(c) B desc format='brief' select min(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select min(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select max(c) from tt; id estRows task access object operator info HashAgg 1.00 root funcs:max(collation_agg_func.tt.c)->Column#6 @@ -247,9 +247,9 @@ select max(c) from tt; max(c) c desc format='brief' select max(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select max(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select min(d) from tt; id estRows task access object operator info StreamAgg 1.00 root funcs:min(collation_agg_func.tt.d)->Column#6 diff --git a/cmd/explaintest/r/collation_agg_func_enabled.result b/cmd/explaintest/r/collation_agg_func_enabled.result index ea345c13ede58..5b587ff02d279 100644 --- a/cmd/explaintest/r/collation_agg_func_enabled.result +++ b/cmd/explaintest/r/collation_agg_func_enabled.result @@ -207,9 +207,9 @@ select min(b) from tt; min(b) a desc format='brief' select min(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select min(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select max(b) from tt; id estRows task access object operator info StreamAgg 1.00 root funcs:max(Column#8)->Column#6 @@ -220,9 +220,9 @@ select max(b) from tt; max(b) c desc format='brief' select max(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select max(b collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select min(c) from tt; id estRows task access object operator info HashAgg 1.00 root funcs:min(collation_agg_func.tt.c)->Column#6 @@ -232,9 +232,9 @@ select min(c) from tt; min(c) a desc format='brief' select min(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select min(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select max(c) from tt; id estRows task access object operator info HashAgg 1.00 root funcs:max(collation_agg_func.tt.c)->Column#6 @@ -244,9 +244,9 @@ select max(c) from tt; max(c) c desc format='brief' select max(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' select max(c collate utf8mb4_bin) from tt; -Error 1235: This version of TiDB doesn't yet support 'use collate clause for enum or set' +Error 1235 (42000): This version of TiDB doesn't yet support 'use collate clause for enum or set' desc format='brief' select min(d) from tt; id estRows task access object operator info StreamAgg 1.00 root funcs:min(collation_agg_func.tt.d)->Column#6 diff --git a/cmd/explaintest/r/collation_check_use_collation_disabled.result b/cmd/explaintest/r/collation_check_use_collation_disabled.result index 493b26812bfbb..2c0bd306f445b 100644 --- a/cmd/explaintest/r/collation_check_use_collation_disabled.result +++ b/cmd/explaintest/r/collation_check_use_collation_disabled.result @@ -32,7 +32,7 @@ drop table if exists t; create table t(a enum('a', 'b') charset utf8mb4 collate utf8mb4_general_ci, b varchar(20)); insert into t values ("b", "c"); insert into t values ("B", "b"); -Error 1265: Data truncated for column 'a' at row 1 +Error 1265 (01000): Data truncated for column 'a' at row 1 select * from t where 'B' collate utf8mb4_general_ci in (a); a b select * from t where 'B' collate utf8mb4_bin in (a); @@ -82,7 +82,7 @@ drop table if exists t; create table t(a set('a', 'b') charset utf8mb4 collate utf8mb4_general_ci, b varchar(20)); insert into t values ("b", "c"); insert into t values ("B", "b"); -Error 1265: Data truncated for column 'a' at row 1 +Error 1265 (01000): Data truncated for column 'a' at row 1 select * from t where 'B' collate utf8mb4_general_ci in (a); a b select * from t where 'B' collate utf8mb4_bin in (a); diff --git a/cmd/explaintest/r/collation_misc_disabled.result b/cmd/explaintest/r/collation_misc_disabled.result index eff046aa33009..a66f63ead2db9 100644 --- a/cmd/explaintest/r/collation_misc_disabled.result +++ b/cmd/explaintest/r/collation_misc_disabled.result @@ -15,7 +15,7 @@ select * from t; a t_value alter table t modify column a varchar(20) charset utf8; -Error 8200: Unsupported modify charset from latin1 to utf8 +Error 8200 (HY000): Unsupported modify charset from latin1 to utf8 drop table t; create table t(a varchar(20) charset latin1); insert into t values ("t_value"); @@ -38,13 +38,13 @@ drop table t; create table t(a varchar(20) charset latin1); insert into t values ("t_value"); alter table t modify column a varchar(20) charset utf8 collate utf8_bin; -Error 8200: Unsupported modify charset from latin1 to utf8 +Error 8200 (HY000): Unsupported modify charset from latin1 to utf8 alter table t modify column a varchar(20) charset utf8mb4 collate utf8bin; [ddl:1273]Unknown collation: 'utf8bin' alter table t collate LATIN1_GENERAL_CI charset utf8 collate utf8_bin; -Error 1302: Conflicting declarations: 'CHARACTER SET latin1' and 'CHARACTER SET utf8' +Error 1302 (HY000): Conflicting declarations: 'CHARACTER SET latin1' and 'CHARACTER SET utf8' alter table t collate LATIN1_GENERAL_CI collate UTF8MB4_UNICODE_ci collate utf8_bin; -Error 1253: COLLATION 'utf8mb4_unicode_ci' is not valid for CHARACTER SET 'latin1' +Error 1253 (42000): COLLATION 'utf8mb4_unicode_ci' is not valid for CHARACTER SET 'latin1' drop table t; create table t(a varchar(20) charset latin1); insert into t values ("t_value"); diff --git a/cmd/explaintest/r/collation_misc_enabled.result b/cmd/explaintest/r/collation_misc_enabled.result index 235d5896380ee..a088ddb0b2c9d 100644 --- a/cmd/explaintest/r/collation_misc_enabled.result +++ b/cmd/explaintest/r/collation_misc_enabled.result @@ -15,7 +15,7 @@ select * from t; a t_value alter table t modify column a varchar(20) charset utf8; -Error 8200: Unsupported modify charset from latin1 to utf8 +Error 8200 (HY000): Unsupported modify charset from latin1 to utf8 drop table t; create table t(a varchar(20) charset latin1); insert into t values ("t_value"); @@ -38,13 +38,13 @@ drop table t; create table t(a varchar(20) charset latin1); insert into t values ("t_value"); alter table t modify column a varchar(20) charset utf8 collate utf8_bin; -Error 8200: Unsupported modify charset from latin1 to utf8 +Error 8200 (HY000): Unsupported modify charset from latin1 to utf8 alter table t modify column a varchar(20) charset utf8mb4 collate utf8bin; [ddl:1273]Unknown collation: 'utf8bin' alter table t collate LATIN1_GENERAL_CI charset utf8 collate utf8_bin; -Error 1273: Unsupported collation when new collation is enabled: 'latin1_general_ci' +Error 1273 (HY000): Unsupported collation when new collation is enabled: 'latin1_general_ci' alter table t collate LATIN1_GENERAL_CI collate UTF8MB4_UNICODE_ci collate utf8_bin; -Error 1273: Unsupported collation when new collation is enabled: 'latin1_general_ci' +Error 1273 (HY000): Unsupported collation when new collation is enabled: 'latin1_general_ci' drop table t; create table t(a varchar(20) charset latin1); insert into t values ("t_value"); @@ -56,7 +56,7 @@ a t_value create database if not exists cd_test_utf8 CHARACTER SET utf8 COLLATE utf8_bin; create database if not exists cd_test_latin1 CHARACTER SET latin1 COLLATE latin1_swedish_ci; -Error 1273: Unsupported collation when new collation is enabled: 'latin1_swedish_ci' +Error 1273 (HY000): Unsupported collation when new collation is enabled: 'latin1_swedish_ci' use cd_test_utf8; select @@character_set_database; @@character_set_database @@ -65,7 +65,7 @@ select @@collation_database; @@collation_database utf8_bin use cd_test_latin1; -Error 1049: Unknown database 'cd_test_latin1' +Error 1049 (42000): Unknown database 'cd_test_latin1' select @@character_set_database; @@character_set_database utf8 @@ -73,7 +73,7 @@ select @@collation_database; @@collation_database utf8_bin create database if not exists test_db CHARACTER SET latin1 COLLATE latin1_swedish_ci; -Error 1273: Unsupported collation when new collation is enabled: 'latin1_swedish_ci' +Error 1273 (HY000): Unsupported collation when new collation is enabled: 'latin1_swedish_ci' with cte as (select cast('2010-09-09' as date) a union select '2010-09-09 ') select count(*) from cte; count(*) 1 diff --git a/cmd/explaintest/r/collation_pointget_disabled.result b/cmd/explaintest/r/collation_pointget_disabled.result index a763c54c96344..db7b0a9ab630f 100644 --- a/cmd/explaintest/r/collation_pointget_disabled.result +++ b/cmd/explaintest/r/collation_pointget_disabled.result @@ -111,15 +111,15 @@ select *, a, b from t tmp where tmp.a = "aa"; a b a b aa bb aa bb select a from t where xxxxx.a = "aa"; -Error 1054: Unknown column 'xxxxx.a' in 'where clause' +Error 1054 (42S22): Unknown column 'xxxxx.a' in 'where clause' select xxxxx.a from t where a = "aa"; -Error 1054: Unknown column 'xxxxx.a' in 'field list' +Error 1054 (42S22): Unknown column 'xxxxx.a' in 'field list' select a from t tmp where t.a = "aa"; -Error 1054: Unknown column 't.a' in 'where clause' +Error 1054 (42S22): Unknown column 't.a' in 'where clause' select t.a from t tmp where a = "aa"; -Error 1054: Unknown column 't.a' in 'field list' +Error 1054 (42S22): Unknown column 't.a' in 'field list' select t.* from t tmp where a = "aa"; -Error 1051: Unknown table 't' +Error 1051 (42S02): Unknown table 't' drop table if exists t; create table t(a char(4) primary key, b char(4)); insert into t values("aa", "bb"); diff --git a/cmd/explaintest/r/collation_pointget_enabled.result b/cmd/explaintest/r/collation_pointget_enabled.result index 156e4d87f931c..7c404177ce587 100644 --- a/cmd/explaintest/r/collation_pointget_enabled.result +++ b/cmd/explaintest/r/collation_pointget_enabled.result @@ -124,15 +124,15 @@ select *, a, b from t tmp where tmp.a = "aa"; a b a b aa bb aa bb select a from t where xxxxx.a = "aa"; -Error 1054: Unknown column 'xxxxx.a' in 'where clause' +Error 1054 (42S22): Unknown column 'xxxxx.a' in 'where clause' select xxxxx.a from t where a = "aa"; -Error 1054: Unknown column 'xxxxx.a' in 'field list' +Error 1054 (42S22): Unknown column 'xxxxx.a' in 'field list' select a from t tmp where t.a = "aa"; -Error 1054: Unknown column 't.a' in 'where clause' +Error 1054 (42S22): Unknown column 't.a' in 'where clause' select t.a from t tmp where a = "aa"; -Error 1054: Unknown column 't.a' in 'field list' +Error 1054 (42S22): Unknown column 't.a' in 'field list' select t.* from t tmp where a = "aa"; -Error 1051: Unknown table 't' +Error 1051 (42S02): Unknown table 't' drop table if exists t; create table t(a char(4) primary key, b char(4)); insert into t values("aa", "bb"); diff --git a/cmd/explaintest/r/cte.result b/cmd/explaintest/r/cte.result index 7a8677c848294..6f277815bb566 100644 --- a/cmd/explaintest/r/cte.result +++ b/cmd/explaintest/r/cte.result @@ -91,7 +91,7 @@ c1 c2 1 1 1 2 with recursive tbl_0 (col_943,col_944,col_945,col_946,col_947) AS ( with recursive tbl_0 (col_948,col_949,col_950,col_951,col_952) AS ( select 1, 2,3,4,5 UNION ALL select col_948 + 1,col_949 + 1,col_950 + 1,col_951 + 1,col_952 + 1 from tbl_0 where col_948 < 5 ) select col_948,col_949,col_951,col_950,col_952 from tbl_0 UNION ALL select col_943 + 1,col_944 + 1,col_945 + 1,col_946 + 1,col_947 + 1 from tbl_0 where col_943 < 5 ) select * from tbl_0; -Error 1054: Unknown column 'col_943' in 'where clause' +Error 1054 (42S22): Unknown column 'col_943' in 'where clause' with recursive cte1 (c1, c2) as (select 1, '1' union select concat(c1, 1), c2 + 1 from cte1 where c1 < 100) select * from cte1; c1 c2 1 1 @@ -283,15 +283,15 @@ union all select 3, 0 from qn ) select * from qn; -Error 1222: The used SELECT statements have a different number of columns +Error 1222 (21000): The used SELECT statements have a different number of columns with recursive cte1 as (select 1 union all (select 1 from cte1 limit 10)) select * from cte1; -Error 1235: This version of TiDB doesn't yet support 'ORDER BY / LIMIT / SELECT DISTINCT in recursive query block of Common Table Expression' +Error 1235 (42000): This version of TiDB doesn't yet support 'ORDER BY / LIMIT / SELECT DISTINCT in recursive query block of Common Table Expression' with recursive qn as (select 123 as a union all select null from qn where a is not null) select * from qn; a 123 NULL with recursive q (b) as (select 1, 1 union all select 1, 1 from q) select b from q; -Error 1353: In definition of view, derived table or common table expression, SELECT list and column names list have different column counts +Error 1353 (HY000): In definition of view, derived table or common table expression, SELECT list and column names list have different column counts drop table if exists t1; create table t1(a int); insert into t1 values(1); @@ -356,7 +356,7 @@ drop table if exists t1; create table t1(c1 bigint unsigned); insert into t1 values(0); with recursive cte1 as (select c1 - 1 c1 from t1 union all select c1 - 1 c1 from cte1 where c1 != 0) select * from cte1 dt1, cte1 dt2; -Error 1690: BIGINT UNSIGNED value is out of range in '(test.t1.c1 - 1)' +Error 1690 (22003): BIGINT UNSIGNED value is out of range in '(test.t1.c1 - 1)' drop table if exists t; create table t(a int, b int, key (b)); desc with cte as (select * from t) select * from cte; diff --git a/cmd/explaintest/r/explain_foreign_key.result b/cmd/explaintest/r/explain_foreign_key.result new file mode 100644 index 0000000000000..cb903a57684a1 --- /dev/null +++ b/cmd/explaintest/r/explain_foreign_key.result @@ -0,0 +1,169 @@ +set @@global.tidb_enable_foreign_key=1; +set @@foreign_key_checks=1; +use test; +drop table if exists t1,t2; +create table t1 (id int key); +create table t2 (id int key, foreign key fk(id) references t1(id) ON UPDATE CASCADE ON DELETE CASCADE); +create table t3 (id int, unique index idx(id)); +create table t4 (id int, index idx_id(id),foreign key fk(id) references t3(id)); +create table t5 (id int key, id2 int, id3 int, unique index idx2(id2), index idx3(id3)); +create table t6 (id int, id2 int, id3 int, index idx_id(id), index idx_id2(id2), foreign key fk_1 (id) references t5(id) ON UPDATE CASCADE ON DELETE CASCADE, foreign key fk_2 (id2) references t5(id2) ON UPDATE CASCADE, foreign key fk_3 (id3) references t5(id3) ON DELETE CASCADE); +explain format = 'brief' insert into t2 values (1); +id estRows task access object operator info +Insert N/A root N/A +└─Foreign_Key_Check 0.00 root table:t1 foreign_key:fk, check_exist +explain format = 'brief' update t2 set id=id+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─Point_Get 1.00 root table:t2 handle:1, lock +└─Foreign_Key_Check 0.00 root table:t1 foreign_key:fk, check_exist +explain format = 'brief' delete from t1 where id > 1; +id estRows task access object operator info +Delete N/A root N/A +├─SelectLock 3333.33 root for update 0 +│ └─TableReader 3333.33 root data:TableRangeScan +│ └─TableRangeScan 3333.33 cop[tikv] table:t1 range:(1,+inf], keep order:false, stats:pseudo +└─Foreign_Key_Cascade 0.00 root table:t2 foreign_key:fk, on_delete:CASCADE +explain format = 'brief' update t1 set id=id+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─Point_Get 1.00 root table:t1 handle:1, lock +└─Foreign_Key_Cascade 0.00 root table:t2 foreign_key:fk, on_update:CASCADE +explain format = 'brief' insert into t1 values (1); +id estRows task access object operator info +Insert N/A root N/A +explain format = 'brief' insert into t1 values (1) on duplicate key update id = 100; +id estRows task access object operator info +Insert N/A root N/A +└─Foreign_Key_Cascade 0.00 root table:t2 foreign_key:fk, on_update:CASCADE +explain format = 'brief' insert into t4 values (1); +id estRows task access object operator info +Insert N/A root N/A +└─Foreign_Key_Check 0.00 root table:t3, index:idx foreign_key:fk, check_exist +explain format = 'brief' update t4 set id=id+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─SelectLock 10.00 root for update 0 +│ └─IndexReader 10.00 root index:IndexRangeScan +│ └─IndexRangeScan 10.00 cop[tikv] table:t4, index:idx_id(id) range:[1,1], keep order:false, stats:pseudo +└─Foreign_Key_Check 0.00 root table:t3, index:idx foreign_key:fk, check_exist +explain format = 'brief' delete from t3 where id > 1; +id estRows task access object operator info +Delete N/A root N/A +├─SelectLock 3333.33 root for update 0 +│ └─IndexReader 3333.33 root index:IndexRangeScan +│ └─IndexRangeScan 3333.33 cop[tikv] table:t3, index:idx(id) range:(1,+inf], keep order:false, stats:pseudo +└─Foreign_Key_Check 0.00 root table:t4, index:idx_id foreign_key:fk, check_not_exist +explain format = 'brief' update t3 set id=id+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─Point_Get 1.00 root table:t3, index:idx(id) lock +└─Foreign_Key_Check 0.00 root table:t4, index:idx_id foreign_key:fk, check_not_exist +explain format = 'brief' insert into t3 values (1); +id estRows task access object operator info +Insert N/A root N/A +explain format = 'brief' insert into t3 values (1) on duplicate key update id = 100; +id estRows task access object operator info +Insert N/A root N/A +└─Foreign_Key_Check 0.00 root table:t4, index:idx_id foreign_key:fk, check_not_exist +explain format = 'brief' insert into t6 values (1,1,1); +id estRows task access object operator info +Insert N/A root N/A +├─Foreign_Key_Check 0.00 root table:t5 foreign_key:fk_1, check_exist +├─Foreign_Key_Check 0.00 root table:t5, index:idx2 foreign_key:fk_2, check_exist +└─Foreign_Key_Check 0.00 root table:t5, index:idx3 foreign_key:fk_3, check_exist +explain format = 'brief' update t6 set id=id+1, id3=id2+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─SelectLock 10.00 root for update 0 +│ └─IndexLookUp 10.00 root +│ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t6, index:idx_id(id) range:[1,1], keep order:false, stats:pseudo +│ └─TableRowIDScan(Probe) 10.00 cop[tikv] table:t6 keep order:false, stats:pseudo +├─Foreign_Key_Check 0.00 root table:t5 foreign_key:fk_1, check_exist +└─Foreign_Key_Check 0.00 root table:t5, index:idx3 foreign_key:fk_3, check_exist +explain format = 'brief' delete from t5 where id > 1; +id estRows task access object operator info +Delete N/A root N/A +├─SelectLock 3333.33 root for update 0 +│ └─TableReader 3333.33 root data:TableRangeScan +│ └─TableRangeScan 3333.33 cop[tikv] table:t5 range:(1,+inf], keep order:false, stats:pseudo +├─Foreign_Key_Check 0.00 root table:t6, index:idx_id2 foreign_key:fk_2, check_not_exist +├─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id foreign_key:fk_1, on_delete:CASCADE +└─Foreign_Key_Cascade 0.00 root table:t6, index:fk_3 foreign_key:fk_3, on_delete:CASCADE +explain format = 'brief' update t5 set id=id+1, id2=id2+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─Point_Get 1.00 root table:t5 handle:1, lock +├─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id foreign_key:fk_1, on_update:CASCADE +└─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id2 foreign_key:fk_2, on_update:CASCADE +explain format = 'brief' update t5 set id=id+1, id2=id2+1, id3=id3+1 where id = 1; +id estRows task access object operator info +Update N/A root N/A +├─Point_Get 1.00 root table:t5 handle:1, lock +├─Foreign_Key_Check 0.00 root table:t6, index:fk_3 foreign_key:fk_3, check_not_exist +├─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id foreign_key:fk_1, on_update:CASCADE +└─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id2 foreign_key:fk_2, on_update:CASCADE +explain format = 'brief' insert into t5 values (1,1,1); +id estRows task access object operator info +Insert N/A root N/A +explain format = 'brief' insert into t5 values (1,1,1) on duplicate key update id = 100, id3=100; +id estRows task access object operator info +Insert N/A root N/A +├─Foreign_Key_Check 0.00 root table:t6, index:fk_3 foreign_key:fk_3, check_not_exist +└─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id foreign_key:fk_1, on_update:CASCADE +explain format = 'brief' insert into t5 values (1,1,1) on duplicate key update id = 100, id2=100, id3=100; +id estRows task access object operator info +Insert N/A root N/A +├─Foreign_Key_Check 0.00 root table:t6, index:fk_3 foreign_key:fk_3, check_not_exist +├─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id foreign_key:fk_1, on_update:CASCADE +└─Foreign_Key_Cascade 0.00 root table:t6, index:idx_id2 foreign_key:fk_2, on_update:CASCADE +drop table if exists t1,t2,t3,t4,t5,t6; +drop table if exists t_1,t_2,t_3,t_4; +create table t_1 (id int key); +create table t_2 (id int key); +create table t_3 (id int key, id2 int, foreign key fk_1(id) references t_1(id), foreign key fk_2(id2) references t_1(id), foreign key fk_3(id) references t_2(id) ON UPDATE CASCADE ON DELETE CASCADE); +create table t_4 (id int key, id2 int, foreign key fk_1(id) references t_2(id), foreign key fk_2(id2) references t_1(id), foreign key fk_3(id) references t_1(id) ON UPDATE CASCADE ON DELETE CASCADE); +explain format = 'brief' update t_1,t_2 set t_1.id=2,t_2.id=2 where t_1.id=t_2.id and t_1.id=1; +id estRows task access object operator info +Update N/A root N/A +├─HashJoin 1.00 root CARTESIAN inner join +│ ├─Point_Get(Build) 1.00 root table:t_2 handle:1 +│ └─Point_Get(Probe) 1.00 root table:t_1 handle:1 +├─Foreign_Key_Check 0.00 root table:t_3 foreign_key:fk_1, check_not_exist +├─Foreign_Key_Check 0.00 root table:t_3, index:fk_2 foreign_key:fk_2, check_not_exist +├─Foreign_Key_Check 0.00 root table:t_4, index:fk_2 foreign_key:fk_2, check_not_exist +├─Foreign_Key_Check 0.00 root table:t_4 foreign_key:fk_1, check_not_exist +├─Foreign_Key_Cascade 0.00 root table:t_4 foreign_key:fk_3, on_update:CASCADE +└─Foreign_Key_Cascade 0.00 root table:t_3 foreign_key:fk_3, on_update:CASCADE +explain format = 'brief' delete t_1,t_2 from t_1 join t_2 where t_1.id=t_2.id and t_1.id > 0; +id estRows task access object operator info +Delete N/A root N/A +├─MergeJoin 4166.67 root inner join, left key:test.t_1.id, right key:test.t_2.id +│ ├─TableReader(Build) 3333.33 root data:TableRangeScan +│ │ └─TableRangeScan 3333.33 cop[tikv] table:t_2 range:(0,+inf], keep order:true, stats:pseudo +│ └─TableReader(Probe) 3333.33 root data:TableRangeScan +│ └─TableRangeScan 3333.33 cop[tikv] table:t_1 range:(0,+inf], keep order:true, stats:pseudo +├─Foreign_Key_Check 0.00 root table:t_3 foreign_key:fk_1, check_not_exist +├─Foreign_Key_Check 0.00 root table:t_3, index:fk_2 foreign_key:fk_2, check_not_exist +├─Foreign_Key_Check 0.00 root table:t_4, index:fk_2 foreign_key:fk_2, check_not_exist +├─Foreign_Key_Check 0.00 root table:t_4 foreign_key:fk_1, check_not_exist +├─Foreign_Key_Cascade 0.00 root table:t_4 foreign_key:fk_3, on_delete:CASCADE +└─Foreign_Key_Cascade 0.00 root table:t_3 foreign_key:fk_3, on_delete:CASCADE +set @@foreign_key_checks=0; +explain format = 'brief' update t_1,t_2 set t_1.id=2,t_2.id=2 where t_1.id=t_2.id and t_1.id=1; +id estRows task access object operator info +Update N/A root N/A +└─HashJoin 1.00 root CARTESIAN inner join + ├─Point_Get(Build) 1.00 root table:t_2 handle:1 + └─Point_Get(Probe) 1.00 root table:t_1 handle:1 +explain format = 'brief' delete t_1,t_2 from t_1 join t_2 where t_1.id=t_2.id and t_1.id > 0; +id estRows task access object operator info +Delete N/A root N/A +└─MergeJoin 4166.67 root inner join, left key:test.t_1.id, right key:test.t_2.id + ├─TableReader(Build) 3333.33 root data:TableRangeScan + │ └─TableRangeScan 3333.33 cop[tikv] table:t_2 range:(0,+inf], keep order:true, stats:pseudo + └─TableReader(Probe) 3333.33 root data:TableRangeScan + └─TableRangeScan 3333.33 cop[tikv] table:t_1 range:(0,+inf], keep order:true, stats:pseudo +drop table if exists t_1,t_2,t_3,t_4; +set @@global.tidb_enable_foreign_key=0; +set @@foreign_key_checks=0; diff --git a/cmd/explaintest/r/explain_indexmerge.result b/cmd/explaintest/r/explain_indexmerge.result index 07530b9596bb5..46ba855e6c2a8 100644 --- a/cmd/explaintest/r/explain_indexmerge.result +++ b/cmd/explaintest/r/explain_indexmerge.result @@ -7,33 +7,33 @@ create index td on t (d); load stats 's/explain_indexmerge_stats_t.json'; explain format = 'brief' select * from t where a < 50 or b < 50; id estRows task access object operator info -IndexMerge 98.00 root +IndexMerge 98.00 root type: union ├─TableRangeScan(Build) 49.00 cop[tikv] table:t range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false └─TableRowIDScan(Probe) 98.00 cop[tikv] table:t keep order:false explain format = 'brief' select * from t where (a < 50 or b < 50) and f > 100; id estRows task access object operator info -IndexMerge 98.00 root +IndexMerge 98.00 root type: union ├─TableRangeScan(Build) 49.00 cop[tikv] table:t range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false └─Selection(Probe) 98.00 cop[tikv] gt(test.t.f, 100) └─TableRowIDScan 98.00 cop[tikv] table:t keep order:false explain format = 'brief' select * from t where b < 50 or c < 50; id estRows task access object operator info -IndexMerge 98.00 root +IndexMerge 98.00 root type: union ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tc(c) range:[-inf,50), keep order:false └─TableRowIDScan(Probe) 98.00 cop[tikv] table:t keep order:false set session tidb_enable_index_merge = on; explain format = 'brief' select * from t where a < 50 or b < 50; id estRows task access object operator info -IndexMerge 98.00 root +IndexMerge 98.00 root type: union ├─TableRangeScan(Build) 49.00 cop[tikv] table:t range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false └─TableRowIDScan(Probe) 98.00 cop[tikv] table:t keep order:false explain format = 'brief' select * from t where (a < 50 or b < 50) and f > 100; id estRows task access object operator info -IndexMerge 98.00 root +IndexMerge 98.00 root type: union ├─TableRangeScan(Build) 49.00 cop[tikv] table:t range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false └─Selection(Probe) 98.00 cop[tikv] gt(test.t.f, 100) @@ -45,7 +45,7 @@ TableReader 4999999.00 root data:Selection └─TableFullScan 5000000.00 cop[tikv] table:t keep order:false explain format = 'brief' select * from t where b < 50 or c < 50; id estRows task access object operator info -IndexMerge 98.00 root +IndexMerge 98.00 root type: union ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tc(c) range:[-inf,50), keep order:false └─TableRowIDScan(Probe) 98.00 cop[tikv] table:t keep order:false @@ -56,14 +56,14 @@ TableReader 4999999.00 root data:Selection └─TableFullScan 5000000.00 cop[tikv] table:t keep order:false explain format = 'brief' select * from t where a < 50 or b < 50 or c < 50; id estRows task access object operator info -IndexMerge 147.00 root +IndexMerge 147.00 root type: union ├─TableRangeScan(Build) 49.00 cop[tikv] table:t range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tc(c) range:[-inf,50), keep order:false └─TableRowIDScan(Probe) 147.00 cop[tikv] table:t keep order:false explain format = 'brief' select * from t where (b < 10000 or c < 10000) and (a < 10 or d < 10) and f < 10; id estRows task access object operator info -IndexMerge 0.00 root +IndexMerge 0.00 root type: union ├─TableRangeScan(Build) 9.00 cop[tikv] table:t range:[-inf,10), keep order:false ├─IndexRangeScan(Build) 9.00 cop[tikv] table:t, index:td(d) range:[-inf,10), keep order:false └─Selection(Probe) 0.00 cop[tikv] lt(test.t.f, 10), or(lt(test.t.b, 10000), lt(test.t.c, 10000)) @@ -104,20 +104,20 @@ label = "cop" set session tidb_enable_index_merge = off; explain format = 'brief' select /*+ use_index_merge(t, primary, tb, tc) */ * from t where a <= 500000 or b <= 1000000 or c <= 3000000; id estRows task access object operator info -IndexMerge 3560000.00 root +IndexMerge 3560000.00 root type: union ├─TableRangeScan(Build) 500000.00 cop[tikv] table:t range:[-inf,500000], keep order:false ├─IndexRangeScan(Build) 1000000.00 cop[tikv] table:t, index:tb(b) range:[-inf,1000000], keep order:false ├─IndexRangeScan(Build) 3000000.00 cop[tikv] table:t, index:tc(c) range:[-inf,3000000], keep order:false └─TableRowIDScan(Probe) 3560000.00 cop[tikv] table:t keep order:false explain format = 'brief' select /*+ use_index_merge(t, tb, tc) */ * from t where b < 50 or c < 5000000; id estRows task access object operator info -IndexMerge 4999999.00 root +IndexMerge 4999999.00 root type: union ├─IndexRangeScan(Build) 49.00 cop[tikv] table:t, index:tb(b) range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 4999999.00 cop[tikv] table:t, index:tc(c) range:[-inf,5000000), keep order:false └─TableRowIDScan(Probe) 4999999.00 cop[tikv] table:t keep order:false explain format = 'brief' select /*+ use_index_merge(t, tb, tc) */ * from t where (b < 10000 or c < 10000) and (a < 10 or d < 10) and f < 10; id estRows task access object operator info -IndexMerge 0.00 root +IndexMerge 0.00 root type: union ├─IndexRangeScan(Build) 9999.00 cop[tikv] table:t, index:tb(b) range:[-inf,10000), keep order:false ├─IndexRangeScan(Build) 9999.00 cop[tikv] table:t, index:tc(c) range:[-inf,10000), keep order:false └─Selection(Probe) 0.00 cop[tikv] lt(test.t.f, 10), or(lt(test.t.a, 10), lt(test.t.d, 10)) @@ -134,7 +134,7 @@ TableReader 4999999.00 root data:Selection └─TableFullScan 5000000.00 cop[tikv] table:t keep order:false explain format = 'brief' select /*+ use_index_merge(t, primary, tb) */ * from t where a < 50 or b < 5000000; id estRows task access object operator info -IndexMerge 4999999.00 root +IndexMerge 4999999.00 root type: union ├─TableRangeScan(Build) 49.00 cop[tikv] table:t range:[-inf,50), keep order:false ├─IndexRangeScan(Build) 4999999.00 cop[tikv] table:t, index:tb(b) range:[-inf,5000000), keep order:false └─TableRowIDScan(Probe) 4999999.00 cop[tikv] table:t keep order:false @@ -151,7 +151,7 @@ KEY `aid_c2` (`aid`,`c2`) ); desc select /*+ USE_INDEX_MERGE(t, aid_c1, aid_c2) */ * from t where (aid = 1 and c1='aaa') or (aid = 2 and c2='bbb'); id estRows task access object operator info -IndexMerge_8 8.08 root +IndexMerge_8 8.08 root type: union ├─IndexRangeScan_5(Build) 0.10 cop[tikv] table:t, index:aid_c1(aid, c1) range:[1 "aaa",1 "aaa"], keep order:false, stats:pseudo ├─IndexRangeScan_6(Build) 0.10 cop[tikv] table:t, index:aid_c2(aid, c2) range:[2 "bbb",2 "bbb"], keep order:false, stats:pseudo └─TableRowIDScan_7(Probe) 8.08 cop[tikv] table:t keep order:false, stats:pseudo diff --git a/cmd/explaintest/r/index_merge.result b/cmd/explaintest/r/index_merge.result index 1870b6bcd8d5d..0233dbdb55f52 100644 --- a/cmd/explaintest/r/index_merge.result +++ b/cmd/explaintest/r/index_merge.result @@ -15,7 +15,7 @@ Sort_8 4433.77 root test.t1.c1 └─HashJoin_12 5542.21 root CARTESIAN left outer semi join, other cond:eq(test.t1.c3, test.t1.c3) ├─TableReader_18(Build) 10000.00 root data:TableFullScan_17 │ └─TableFullScan_17 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo - └─IndexMerge_16(Probe) 5542.21 root + └─IndexMerge_16(Probe) 5542.21 root type: union ├─IndexRangeScan_13(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_14(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_15(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -35,7 +35,7 @@ Sort_8 4433.77 root test.t1.c1 └─HashJoin_12 5542.21 root CARTESIAN anti left outer semi join, other cond:eq(test.t1.c3, test.t1.c3) ├─TableReader_18(Build) 10000.00 root data:TableFullScan_17 │ └─TableFullScan_17 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo - └─IndexMerge_16(Probe) 5542.21 root + └─IndexMerge_16(Probe) 5542.21 root type: union ├─IndexRangeScan_13(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_14(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_15(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -50,7 +50,7 @@ c1 c2 c3 explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and c3 = (select max(c3) from t1) order by 1; id estRows task access object operator info Sort_33 3325.55 root test.t1.c1 -└─IndexMerge_40 1843.09 root +└─IndexMerge_40 1843.09 root type: union ├─IndexRangeScan_36(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_37(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_39(Probe) 1843.09 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), eq(test.t1.c3, 5))) @@ -71,7 +71,7 @@ Sort_9 4433.77 root test.t1.c1 └─HashJoin_22 5542.21 root left outer semi join, equal:[eq(test.t1.c1, test.t2.c1)] ├─IndexReader_30(Build) 10000.00 root index:IndexFullScan_29 │ └─IndexFullScan_29 10000.00 cop[tikv] table:t2, index:c1(c1) keep order:false, stats:pseudo - └─IndexMerge_26(Probe) 5542.21 root + └─IndexMerge_26(Probe) 5542.21 root type: union ├─IndexRangeScan_23(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_24(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_25(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -91,7 +91,7 @@ Sort_9 4433.77 root test.t1.c1 └─HashJoin_22 5542.21 root anti left outer semi join, equal:[eq(test.t1.c1, test.t2.c1)] ├─IndexReader_30(Build) 10000.00 root index:IndexFullScan_29 │ └─IndexFullScan_29 10000.00 cop[tikv] table:t2, index:c1(c1) keep order:false, stats:pseudo - └─IndexMerge_26(Probe) 5542.21 root + └─IndexMerge_26(Probe) 5542.21 root type: union ├─IndexRangeScan_23(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_24(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_25(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -106,7 +106,7 @@ c1 c2 c3 explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and c3 = (select count(1) from t2) order by 1; id estRows task access object operator info Sort_38 3325.55 root test.t1.c1 -└─IndexMerge_45 1843.09 root +└─IndexMerge_45 1843.09 root type: union ├─IndexRangeScan_41(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_42(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_44(Probe) 1843.09 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), eq(test.t1.c3, 5))) @@ -128,7 +128,7 @@ Sort_11 5098.44 root test.t1.c1 │ └─IndexReader_44 1.00 root index:StreamAgg_27 │ └─StreamAgg_27 1.00 cop[tikv] funcs:count(1)->Column#25 │ └─IndexFullScan_41 10000.00 cop[tikv] table:t2, index:c1(c1) keep order:false, stats:pseudo - └─IndexMerge_21(Probe) 2825.66 root + └─IndexMerge_21(Probe) 2825.66 root type: union ├─IndexRangeScan_17(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_18(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_20(Probe) 2825.66 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), if(isnull(test.t1.c3), NULL, 1))) @@ -150,7 +150,7 @@ Sort_11 5098.44 root test.t1.c1 │ └─IndexReader_44 1.00 root index:StreamAgg_27 │ └─StreamAgg_27 1.00 cop[tikv] funcs:count(1)->Column#25 │ └─IndexFullScan_41 10000.00 cop[tikv] table:t2, index:c1(c1) keep order:false, stats:pseudo - └─IndexMerge_21(Probe) 2825.66 root + └─IndexMerge_21(Probe) 2825.66 root type: union ├─IndexRangeScan_17(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_18(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_20(Probe) 2825.66 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), if(isnull(test.t1.c3), NULL, 1))) @@ -172,7 +172,7 @@ Sort_11 5542.21 root test.t1.c1 │ └─IndexReader_43 1.00 root index:StreamAgg_26 │ └─StreamAgg_26 1.00 cop[tikv] funcs:count(1)->Column#25 │ └─IndexFullScan_40 10000.00 cop[tikv] table:t2, index:c1(c1) keep order:false, stats:pseudo - └─IndexMerge_20(Probe) 5542.21 root + └─IndexMerge_20(Probe) 5542.21 root type: union ├─IndexRangeScan_17(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_18(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_19(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -194,7 +194,7 @@ Sort_39 5542.21 root test.t1.c1 │ └─IndexReader_71 1.00 root index:StreamAgg_54 │ └─StreamAgg_54 1.00 cop[tikv] funcs:count(1)->Column#38 │ └─IndexFullScan_68 10000.00 cop[tikv] table:t2, index:c1(c1) keep order:false, stats:pseudo - └─IndexMerge_48(Probe) 5542.21 root + └─IndexMerge_48(Probe) 5542.21 root type: union ├─IndexRangeScan_45(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_46(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_47(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -220,7 +220,7 @@ Sort_14 4433.77 root test.t1.c1 │ └─TableReader_51(Probe) 9990.00 root data:Selection_50 │ └─Selection_50 9990.00 cop[tikv] not(isnull(test.t2.c2)) │ └─TableFullScan_49 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo - └─IndexMerge_22(Probe) 5542.21 root + └─IndexMerge_22(Probe) 5542.21 root type: union ├─IndexRangeScan_19(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_20(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_21(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -239,7 +239,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and id estRows task access object operator info Sort_5 4060.74 root test.t1.c1 └─Selection_12 2250.55 root or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) - └─IndexMerge_11 5542.21 root + └─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -254,7 +254,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and id estRows task access object operator info Sort_5 5098.44 root test.t1.c1 └─Selection_12 2825.66 root or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), eq(test.t1.c3, plus(test.t1.c1, test.t1.c2)))) - └─IndexMerge_11 5542.21 root + └─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -269,7 +269,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and id estRows task access object operator info Sort_5 5098.44 root test.t1.c1 └─Selection_12 2825.66 root or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), istrue_with_null(cast(substring(cast(test.t1.c3, var_string(20)), test.t1.c2), double BINARY)))) - └─IndexMerge_11 5542.21 root + └─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -284,7 +284,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and id estRows task access object operator info Sort_5 4800.37 root test.t1.c1 └─Selection_12 2660.47 root or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), test.t1.c3)) - └─IndexMerge_11 5542.21 root + └─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -304,7 +304,7 @@ explain select * from t1 where c1 < 10 or c2 < 10 and c3 < 10 order by 1; id estRows task access object operator info Sort_5 4060.74 root test.t1.c1 └─Selection_12 2250.55 root or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) - └─IndexMerge_11 5542.21 root + └─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -338,7 +338,7 @@ insert into t1 values(1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5); explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and c3 < 10 order by 1; id estRows task access object operator info Sort_5 4060.74 root test.t1.c1 -└─IndexMerge_12 2250.55 root +└─IndexMerge_12 2250.55 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 2250.55 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) @@ -368,7 +368,7 @@ alter table t1 add index c1(c1); explain select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and c3 < 10 order by 1; id estRows task access object operator info Sort_5 4060.74 root test.t1.c1 -└─IndexMerge_12 2250.55 root +└─IndexMerge_12 2250.55 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 2250.55 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) @@ -391,7 +391,7 @@ Delete_11 N/A root N/A └─SelectLock_17 4056.68 root for update 0 └─HashJoin_33 4056.68 root inner join, equal:[eq(test.t1.c1, test.t1.c1)] ├─HashAgg_36(Build) 3245.34 root group by:test.t1.c1, funcs:firstrow(test.t1.c1)->test.t1.c1 - │ └─IndexMerge_41 2248.30 root + │ └─IndexMerge_41 2248.30 root type: union │ ├─IndexRangeScan_37(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo │ ├─IndexRangeScan_38(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo │ └─Selection_40(Probe) 2248.30 cop[tikv] not(isnull(test.t1.c1)), or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) @@ -409,7 +409,7 @@ Update_10 N/A root N/A └─SelectLock_14 4056.68 root for update 0 └─HashJoin_30 4056.68 root inner join, equal:[eq(test.t1.c1, test.t1.c1)] ├─HashAgg_33(Build) 3245.34 root group by:test.t1.c1, funcs:firstrow(test.t1.c1)->test.t1.c1 - │ └─IndexMerge_38 2248.30 root + │ └─IndexMerge_38 2248.30 root type: union │ ├─IndexRangeScan_34(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo │ ├─IndexRangeScan_35(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo │ └─Selection_37(Probe) 2248.30 cop[tikv] not(isnull(test.t1.c1)), or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) @@ -426,7 +426,7 @@ id estRows task access object operator info Sort_6 4060.74 root test.t1.c1 └─Projection_8 4060.74 root test.t1.c1, test.t1.c2, test.t1.c3 └─SelectLock_9 4060.74 root for update 0 - └─IndexMerge_14 2250.55 root + └─IndexMerge_14 2250.55 root type: union ├─IndexRangeScan_10(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_11(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_13(Probe) 2250.55 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) @@ -471,7 +471,7 @@ insert into t1 values(1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5); explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and c3 < 10 order by 1 limit 1 offset 2; id estRows task access object operator info TopN_10 1.00 root test.t1.c1, offset:2, count:1 -└─IndexMerge_19 1841.86 root +└─IndexMerge_19 1841.86 root type: union ├─IndexRangeScan_15(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_16(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_18(Probe) 1841.86 cop[tikv] lt(test.t1.c3, 10) @@ -485,7 +485,7 @@ id estRows task access object operator info Sort_6 1473.49 root Column#5 └─HashAgg_11 1473.49 root group by:Column#10, funcs:sum(Column#9)->Column#5 └─Projection_18 1841.86 root cast(test.t1.c1, decimal(10,0) BINARY)->Column#9, test.t1.c1 - └─IndexMerge_16 1841.86 root + └─IndexMerge_16 1841.86 root type: union ├─IndexRangeScan_12(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_13(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_15(Probe) 1841.86 cop[tikv] lt(test.t1.c3, 10) @@ -507,7 +507,7 @@ Sort_12 1841.86 root test.t1.c1 └─Projection_14 1841.86 root test.t1.c1, test.t1.c2, test.t1.c3 └─Apply_16 1841.86 root inner join, equal:[eq(Column#10, Column#9)] ├─Projection_17(Build) 1841.86 root test.t1.c1, test.t1.c2, test.t1.c3, cast(test.t1.c1, decimal(10,0) BINARY)->Column#10 - │ └─IndexMerge_22 1841.86 root + │ └─IndexMerge_22 1841.86 root type: union │ ├─IndexRangeScan_18(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo │ ├─IndexRangeScan_19(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,-1), keep order:false, stats:pseudo │ └─Selection_21(Probe) 1841.86 cop[tikv] lt(test.t1.c3, 10) @@ -530,7 +530,7 @@ Sort_16 1841.86 root test.t1.c1 └─Projection_18 1841.86 root test.t1.c1, test.t1.c2, test.t1.c3 └─Apply_20 1841.86 root inner join, equal:[eq(Column#11, Column#9)] ├─Projection_21(Build) 1841.86 root test.t1.c1, test.t1.c2, test.t1.c3, cast(test.t1.c1, decimal(10,0) BINARY)->Column#11 - │ └─IndexMerge_26 1841.86 root + │ └─IndexMerge_26 1841.86 root type: union │ ├─IndexRangeScan_22(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo │ ├─IndexRangeScan_23(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,-1), keep order:false, stats:pseudo │ └─Selection_25(Probe) 1841.86 cop[tikv] lt(test.t1.c3, 10) @@ -538,7 +538,7 @@ Sort_16 1841.86 root test.t1.c1 └─TopN_29(Probe) 1841.86 root test.t2.c1, offset:2, count:1 └─HashAgg_36 4900166.23 root group by:Column#21, funcs:avg(Column#19)->Column#9, funcs:firstrow(Column#20)->test.t2.c1 └─Projection_48 6125207.79 root cast(test.t2.c1, decimal(10,0) BINARY)->Column#19, test.t2.c1, test.t2.c1 - └─IndexMerge_41 6125207.79 root + └─IndexMerge_41 6125207.79 root type: union ├─Selection_38(Build) 6121.12 cop[tikv] eq(test.t1.c1, test.t2.c1) │ └─IndexRangeScan_37 6121120.92 cop[tikv] table:t2, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_39(Build) 6121120.92 cop[tikv] table:t2, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo @@ -553,7 +553,7 @@ insert into t1 values(1, 1, 1, 1, 1), (2, 2, 2, 2, 2), (3, 3, 3, 3, 3), (4, 4, 4 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and (c3 < 10 or c4 < 10) order by 1; id estRows task access object operator info Sort_5 3071.61 root test.t1.c1 -└─IndexMerge_12 3071.61 root +└─IndexMerge_12 3071.61 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 3071.61 cop[tikv] or(lt(test.t1.c3, 10), lt(test.t1.c4, 10)) @@ -568,7 +568,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 and c2 < 10) or (c3 < 10 and c4 < 10) order by 1; id estRows task access object operator info Sort_5 2086.93 root test.t1.c1 -└─IndexMerge_12 1156.62 root +└─IndexMerge_12 1156.62 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c3(c3) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 1156.62 cop[tikv] or(and(lt(test.t1.c1, 10), lt(test.t1.c2, 10)), and(lt(test.t1.c3, 10), lt(test.t1.c4, 10))) @@ -583,7 +583,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 and c2 < 10) or (c3 < 10 and c4 < 10) and c5 < 10 order by 1; id estRows task access object operator info Sort_5 1430.96 root test.t1.c1 -└─IndexMerge_12 793.07 root +└─IndexMerge_12 793.07 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c3(c3) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 793.07 cop[tikv] or(and(lt(test.t1.c1, 10), lt(test.t1.c2, 10)), and(lt(test.t1.c3, 10), and(lt(test.t1.c4, 10), lt(test.t1.c5, 10)))) @@ -598,7 +598,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where ((c1 < 10 and c4 < 10) or c2 < 10) and (c3 < 10 or c5 < 10) order by 1; id estRows task access object operator info Sort_5 2250.55 root test.t1.c1 -└─IndexMerge_12 1247.30 root +└─IndexMerge_12 1247.30 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 1247.30 cop[tikv] or(and(lt(test.t1.c1, 10), lt(test.t1.c4, 10)), lt(test.t1.c2, 10)), or(lt(test.t1.c3, 10), lt(test.t1.c5, 10)) @@ -628,7 +628,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (((c1 < 10 or c3 < 10) and c1 < 10) or c2 < 10) and (c3 < 10 or c5 < 10) order by 1; id estRows task access object operator info Sort_5 2523.42 root test.t1.c1 -└─IndexMerge_12 1398.53 root +└─IndexMerge_12 1398.53 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 1398.53 cop[tikv] or(and(or(lt(test.t1.c1, 10), lt(test.t1.c3, 10)), lt(test.t1.c1, 10)), lt(test.t1.c2, 10)), or(lt(test.t1.c3, 10), lt(test.t1.c5, 10)) @@ -645,7 +645,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and coalesce(c1, c2, c4) = 1 order by 1; id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 -└─IndexMerge_12 4433.77 root +└─IndexMerge_12 4433.77 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 4433.77 cop[tikv] eq(coalesce(test.t1.c1, test.t1.c2, test.t1.c4), 1) @@ -657,7 +657,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) a id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 └─Selection_12 4433.77 root eq(greatest(test.t1.c1, test.t1.c2, test.t1.c4), 1) - └─IndexMerge_11 5542.21 root + └─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -668,7 +668,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and abs(c1) = 1 order by 1; id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 -└─IndexMerge_12 4433.77 root +└─IndexMerge_12 4433.77 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 4433.77 cop[tikv] eq(abs(test.t1.c1), 1) @@ -679,7 +679,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and pi() order by 1; id estRows task access object operator info Sort_5 5542.21 root test.t1.c1 -└─IndexMerge_11 5542.21 root +└─IndexMerge_11 5542.21 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_10(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -693,7 +693,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and ceil(c1) order by 1; id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 -└─IndexMerge_12 4433.77 root +└─IndexMerge_12 4433.77 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 4433.77 cop[tikv] ceil(test.t1.c1) @@ -709,7 +709,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) a id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 └─Selection_8 4433.77 root eq(truncate(test.t1.c1, 1), 1) - └─IndexMerge_12 5542.21 root + └─IndexMerge_12 5542.21 root type: union ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_10(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_11(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -725,7 +725,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and substring(c3, 1, 1) = '1' order by 1; id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 -└─IndexMerge_12 4433.77 root +└─IndexMerge_12 4433.77 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 4433.77 cop[tikv] eq(substring(cast(test.t1.c3, var_string(20)), 1, 1), "1") @@ -737,7 +737,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and ifnull(c1, c2) order by 1; id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 -└─IndexMerge_12 4433.77 root +└─IndexMerge_12 4433.77 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 4433.77 cop[tikv] ifnull(test.t1.c1, test.t1.c2) @@ -752,7 +752,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and if(c1, c2, c3) order by 1; id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 -└─IndexMerge_12 4433.77 root +└─IndexMerge_12 4433.77 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 4433.77 cop[tikv] if(test.t1.c1, test.t1.c2, test.t1.c3) @@ -767,7 +767,7 @@ c1 c2 c3 c4 c5 explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and (c1 between 1 and 2) order by 1; id estRows task access object operator info Sort_5 138.56 root test.t1.c1 -└─IndexMerge_12 138.56 root +└─IndexMerge_12 138.56 root type: union ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_11(Probe) 138.56 cop[tikv] ge(test.t1.c1, 1), le(test.t1.c1, 2) @@ -782,7 +782,7 @@ explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) a id estRows task access object operator info Sort_5 4433.77 root test.t1.c1 └─Selection_8 4433.77 root eq(length(substring(cast(sqrt(cast(test.t1.c3, double BINARY)), var_string(5)), getvar("a"), 1)), char_length(cast(if(test.t1.c1, test.t1.c2, test.t1.c3), var_string(20)))) - └─IndexMerge_12 5542.21 root + └─IndexMerge_12 5542.21 root type: union ├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_10(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─TableRowIDScan_11(Probe) 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo @@ -800,7 +800,7 @@ insert into t1 values(1, 1, 1, 1, 1), (2, 2, 2, 2, 2), (3, 3, 3, 3, 3), (4, 4, 4 explain with cte1 as (select /*+ use_index_merge(t1) */ * from t1 where c1 < 10 or c2 < 10 and c3 < 10) select * from cte1 order by 1; id estRows task access object operator info Sort_10 4060.74 root test.t1.c1 -└─IndexMerge_17 2250.55 root +└─IndexMerge_17 2250.55 root type: union ├─IndexRangeScan_13(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo ├─IndexRangeScan_14(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo └─Selection_16(Probe) 2250.55 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) @@ -818,7 +818,7 @@ Sort_23 7309.33 root test.t1.c1 └─CTEFullScan_26 7309.33 root CTE:cte1 data:CTE_0 CTE_0 7309.33 root Recursive CTE ├─Projection_14(Seed Part) 4060.74 root test.t1.c1 -│ └─IndexMerge_19 2250.55 root +│ └─IndexMerge_19 2250.55 root type: union │ ├─IndexRangeScan_15(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo │ ├─IndexRangeScan_16(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo │ └─Selection_18(Probe) 2250.55 cop[tikv] or(lt(test.t1.c1, 10), and(lt(test.t1.c2, 10), lt(test.t1.c3, 10))) diff --git a/cmd/explaintest/r/new_character_set_builtin.result b/cmd/explaintest/r/new_character_set_builtin.result index f044ecca1019c..77c9400e3128a 100644 --- a/cmd/explaintest/r/new_character_set_builtin.result +++ b/cmd/explaintest/r/new_character_set_builtin.result @@ -399,17 +399,17 @@ a like 0xe4b880 b like 0xd2bb 1 1 1 1 select a = 0xb6fe from t; -Error 3854: Cannot convert string '\xB6\xFE' from binary to utf8mb4 +Error 3854 (HY000): Cannot convert string '\xB6\xFE' from binary to utf8mb4 select b = 0xe4ba8c from t; -Error 3854: Cannot convert string '\xE4\xBA\x8C' from binary to gbk +Error 3854 (HY000): Cannot convert string '\xE4\xBA\x8C' from binary to gbk select concat(a, 0xb6fe) from t; -Error 3854: Cannot convert string '\xB6\xFE' from binary to utf8mb4 +Error 3854 (HY000): Cannot convert string '\xB6\xFE' from binary to utf8mb4 select concat(b, 0xe4ba8c) from t; -Error 3854: Cannot convert string '\xE4\xBA\x8C' from binary to gbk +Error 3854 (HY000): Cannot convert string '\xE4\xBA\x8C' from binary to gbk select concat(convert('a' using gbk), 0x3fff) from t; -Error 3854: Cannot convert string '?\xFF' from binary to gbk +Error 3854 (HY000): Cannot convert string '?\xFF' from binary to gbk select concat(convert('a' using gbk), 0x3fffffffffffffff) from t; -Error 3854: Cannot convert string '?\xFF\xFF\xFF\xFF\xFF...' from binary to gbk +Error 3854 (HY000): Cannot convert string '?\xFF\xFF\xFF\xFF\xFF...' from binary to gbk set @@tidb_enable_vectorized_expression = false; select hex(concat(a, c)), hex(concat(b, c)) from t; hex(concat(a, c)) hex(concat(b, c)) @@ -502,13 +502,13 @@ a like 0xe4b880 b like 0xd2bb 1 1 1 1 select a = 0xb6fe from t; -Error 3854: Cannot convert string '\xB6\xFE' from binary to utf8mb4 +Error 3854 (HY000): Cannot convert string '\xB6\xFE' from binary to utf8mb4 select b = 0xe4ba8c from t; -Error 3854: Cannot convert string '\xE4\xBA\x8C' from binary to gbk +Error 3854 (HY000): Cannot convert string '\xE4\xBA\x8C' from binary to gbk select concat(a, 0xb6fe) from t; -Error 3854: Cannot convert string '\xB6\xFE' from binary to utf8mb4 +Error 3854 (HY000): Cannot convert string '\xB6\xFE' from binary to utf8mb4 select concat(b, 0xe4ba8c) from t; -Error 3854: Cannot convert string '\xE4\xBA\x8C' from binary to gbk +Error 3854 (HY000): Cannot convert string '\xE4\xBA\x8C' from binary to gbk drop table if exists t; create table t (a char(20) charset utf8mb4, b char(20) charset gbk, c binary(20)); insert into t values ('一二三', '一二三', '一二三'); diff --git a/cmd/explaintest/r/new_character_set_invalid.result b/cmd/explaintest/r/new_character_set_invalid.result index 7eea6348e2bc7..e0c749d81ab15 100644 --- a/cmd/explaintest/r/new_character_set_invalid.result +++ b/cmd/explaintest/r/new_character_set_invalid.result @@ -4,11 +4,11 @@ drop table if exists t; create table t (a varchar(255) charset gbk, b varchar(255) charset ascii, c varchar(255) charset utf8); insert into t values ('中文', 'asdf', '字符集'); insert into t values ('À', 'ø', '😂'); -Error 1366: Incorrect string value '\xC3\x80' for column 'a' +Error 1366 (HY000): Incorrect string value '\xC3\x80' for column 'a' insert into t values ('中文À中文', 'asdføfdsa', '字符集😂字符集'); -Error 1366: Incorrect string value '\xC3\x80' for column 'a' +Error 1366 (HY000): Incorrect string value '\xC3\x80' for column 'a' insert into t values (0x4040ffff, 0x4040ffff, 0x4040ffff); -Error 1366: Incorrect string value '\xFF\xFF' for column 'a' +Error 1366 (HY000): Incorrect string value '\xFF\xFF' for column 'a' select * from t; a b c 中文 asdf 字符集 diff --git a/cmd/explaintest/r/select.result b/cmd/explaintest/r/select.result index 02f2486542f45..70101f0218ca8 100644 --- a/cmd/explaintest/r/select.result +++ b/cmd/explaintest/r/select.result @@ -96,9 +96,9 @@ SELECT * from t a left join t2 b on a.c1 = b.c1; c1 c2 c3 c1 c2 1 2 3 1 2 SELECT * from (SELECT 1, 1) as a; -Error 1060: Duplicate column name '1' +Error 1060 (42S21): Duplicate column name '1' SELECT * from (SELECT * FROM t, t2) as a; -Error 1060: Duplicate column name 'c1' +Error 1060 (42S21): Duplicate column name 'c1' DROP TABLE IF EXISTS t; CREATE TABLE t (c1 INT, c2 INT); INSERT INTO t VALUES (1, 2), (1, 1), (1, 3); @@ -656,5 +656,5 @@ drop table if exists t3; create table t3(a char(10), primary key (a)); insert into t3 values ('a'); select * from t3 where a > 0x80; -Error 1105: Cannot convert string '\x80' from binary to utf8mb4 +Error 1105 (HY000): Cannot convert string '\x80' from binary to utf8mb4 set @@tidb_enable_outer_join_reorder=false; diff --git a/cmd/explaintest/t/explain_foreign_key.test b/cmd/explaintest/t/explain_foreign_key.test new file mode 100644 index 0000000000000..dc883f3d3d6fa --- /dev/null +++ b/cmd/explaintest/t/explain_foreign_key.test @@ -0,0 +1,47 @@ +set @@global.tidb_enable_foreign_key=1; +set @@foreign_key_checks=1; +use test; +drop table if exists t1,t2; +create table t1 (id int key); +create table t2 (id int key, foreign key fk(id) references t1(id) ON UPDATE CASCADE ON DELETE CASCADE); +create table t3 (id int, unique index idx(id)); +create table t4 (id int, index idx_id(id),foreign key fk(id) references t3(id)); +create table t5 (id int key, id2 int, id3 int, unique index idx2(id2), index idx3(id3)); +create table t6 (id int, id2 int, id3 int, index idx_id(id), index idx_id2(id2), foreign key fk_1 (id) references t5(id) ON UPDATE CASCADE ON DELETE CASCADE, foreign key fk_2 (id2) references t5(id2) ON UPDATE CASCADE, foreign key fk_3 (id3) references t5(id3) ON DELETE CASCADE); + +explain format = 'brief' insert into t2 values (1); +explain format = 'brief' update t2 set id=id+1 where id = 1; +explain format = 'brief' delete from t1 where id > 1; +explain format = 'brief' update t1 set id=id+1 where id = 1; +explain format = 'brief' insert into t1 values (1); +explain format = 'brief' insert into t1 values (1) on duplicate key update id = 100; +explain format = 'brief' insert into t4 values (1); +explain format = 'brief' update t4 set id=id+1 where id = 1; +explain format = 'brief' delete from t3 where id > 1; +explain format = 'brief' update t3 set id=id+1 where id = 1; +explain format = 'brief' insert into t3 values (1); +explain format = 'brief' insert into t3 values (1) on duplicate key update id = 100; +explain format = 'brief' insert into t6 values (1,1,1); +explain format = 'brief' update t6 set id=id+1, id3=id2+1 where id = 1; +explain format = 'brief' delete from t5 where id > 1; +explain format = 'brief' update t5 set id=id+1, id2=id2+1 where id = 1; +explain format = 'brief' update t5 set id=id+1, id2=id2+1, id3=id3+1 where id = 1; +explain format = 'brief' insert into t5 values (1,1,1); +explain format = 'brief' insert into t5 values (1,1,1) on duplicate key update id = 100, id3=100; +explain format = 'brief' insert into t5 values (1,1,1) on duplicate key update id = 100, id2=100, id3=100; +drop table if exists t1,t2,t3,t4,t5,t6; + +drop table if exists t_1,t_2,t_3,t_4; +create table t_1 (id int key); +create table t_2 (id int key); +create table t_3 (id int key, id2 int, foreign key fk_1(id) references t_1(id), foreign key fk_2(id2) references t_1(id), foreign key fk_3(id) references t_2(id) ON UPDATE CASCADE ON DELETE CASCADE); +create table t_4 (id int key, id2 int, foreign key fk_1(id) references t_2(id), foreign key fk_2(id2) references t_1(id), foreign key fk_3(id) references t_1(id) ON UPDATE CASCADE ON DELETE CASCADE); + +explain format = 'brief' update t_1,t_2 set t_1.id=2,t_2.id=2 where t_1.id=t_2.id and t_1.id=1; +explain format = 'brief' delete t_1,t_2 from t_1 join t_2 where t_1.id=t_2.id and t_1.id > 0; +set @@foreign_key_checks=0; +explain format = 'brief' update t_1,t_2 set t_1.id=2,t_2.id=2 where t_1.id=t_2.id and t_1.id=1; +explain format = 'brief' delete t_1,t_2 from t_1 join t_2 where t_1.id=t_2.id and t_1.id > 0; +drop table if exists t_1,t_2,t_3,t_4; +set @@global.tidb_enable_foreign_key=0; +set @@foreign_key_checks=0; diff --git a/config/config.go b/config/config.go index 1ba2c7fbd1595..d3962e917285b 100644 --- a/config/config.go +++ b/config/config.go @@ -49,7 +49,8 @@ const ( // DefTxnEntrySizeLimit is the default value of TxnEntrySizeLimit. DefTxnEntrySizeLimit = 6 * 1024 * 1024 // DefTxnTotalSizeLimit is the default value of TxnTxnTotalSizeLimit. - DefTxnTotalSizeLimit = 100 * 1024 * 1024 + DefTxnTotalSizeLimit = 100 * 1024 * 1024 + SuperLargeTxnSize uint64 = 100 * 1024 * 1024 * 1024 * 1024 // 100T, we expect a txn can never be this large // DefMaxIndexLength is the maximum index length(in bytes). This value is consistent with MySQL. DefMaxIndexLength = 3072 // DefMaxOfMaxIndexLength is the maximum index length(in bytes) for TiDB v3.0.7 and previous version. @@ -556,6 +557,8 @@ type Security struct { AuthTokenJWKS string `toml:"auth-token-jwks" json:"auth-token-jwks"` // The refresh time interval of JWKS AuthTokenRefreshInterval string `toml:"auth-token-refresh-interval" json:"auth-token-refresh-interval"` + // Disconnect directly when the password is expired + DisconnectOnExpiredPassword bool `toml:"disconnect-on-expired-password" json:"disconnect-on-expired-password"` } // The ErrConfigValidationFailed error is used so that external callers can do a type assertion @@ -974,6 +977,7 @@ var defaultConf = Config{ RSAKeySize: 4096, AuthTokenJWKS: "", AuthTokenRefreshInterval: DefAuthTokenRefreshInterval.String(), + DisconnectOnExpiredPassword: true, }, DeprecateIntegerDisplayWidth: false, EnableEnumLengthLimit: true, diff --git a/ddl/BUILD.bazel b/ddl/BUILD.bazel index b54f52a6d192c..e5ef726cfc749 100644 --- a/ddl/BUILD.bazel +++ b/ddl/BUILD.bazel @@ -27,6 +27,7 @@ go_library( "foreign_key.go", "generated_column.go", "index.go", + "index_cop.go", "index_merge_tmp.go", "job_table.go", "mock.go", @@ -44,6 +45,7 @@ go_library( "stat.go", "table.go", "table_lock.go", + "ttl.go", ], importpath = "github.com/pingcap/tidb/ddl", visibility = [ @@ -99,6 +101,7 @@ go_library( "//util/domainutil", "//util/filter", "//util/gcutil", + "//util/generic", "//util/hack", "//util/logutil", "//util/mathutil", @@ -168,6 +171,7 @@ go_test( "fail_test.go", "foreign_key_test.go", "index_change_test.go", + "index_cop_test.go", "index_merge_tmp_test.go", "index_modify_test.go", "integration_test.go", @@ -192,6 +196,7 @@ go_test( "table_split_test.go", "table_test.go", "tiflash_replica_test.go", + "ttl_test.go", ], embed = [":ddl"], flaky = True, diff --git a/ddl/backfilling.go b/ddl/backfilling.go index dfd213652ab2e..76e1fc2aaf5fd 100644 --- a/ddl/backfilling.go +++ b/ddl/backfilling.go @@ -15,7 +15,6 @@ package ddl import ( - "bytes" "context" "encoding/hex" "fmt" @@ -158,11 +157,18 @@ type reorgBackfillTask struct { endInclude bool } +func (r *reorgBackfillTask) excludedEndKey() kv.Key { + if r.endInclude { + return r.endKey.Next() + } + return r.endKey +} + func (r *reorgBackfillTask) String() string { physicalID := strconv.FormatInt(r.physicalTableID, 10) - startKey := tryDecodeToHandleString(r.startKey) - endKey := tryDecodeToHandleString(r.endKey) - rangeStr := "physicalTableID_" + physicalID + "_" + "[" + startKey + "," + endKey + startKey := hex.EncodeToString(r.startKey) + endKey := hex.EncodeToString(r.endKey) + rangeStr := "taskID_" + strconv.Itoa(r.id) + "_physicalTableID_" + physicalID + "_" + "[" + startKey + "," + endKey if r.endInclude { return rangeStr + "]" } @@ -267,13 +273,13 @@ func (w *backfillWorker) handleBackfillTask(d *ddlCtx, task *reorgBackfillTask, rc.increaseRowCount(int64(taskCtx.addedCount)) rc.mergeWarnings(taskCtx.warnings, taskCtx.warningsCount) - if num := result.scanCount - lastLogCount; num >= 30000 { + if num := result.scanCount - lastLogCount; num >= 90000 { lastLogCount = result.scanCount logutil.BgLogger().Info("[ddl] backfill worker back fill index", - zap.Int("workerID", w.id), - zap.Int("addedCount", result.addedCount), - zap.Int("scanCount", result.scanCount), - zap.String("nextHandle", tryDecodeToHandleString(taskCtx.nextKey)), + zap.Int("worker ID", w.id), + zap.Int("added count", result.addedCount), + zap.Int("scan count", result.scanCount), + zap.String("next key", hex.EncodeToString(taskCtx.nextKey)), zap.Float64("speed(rows/s)", float64(num)/time.Since(lastLogTime).Seconds())) lastLogTime = time.Now() } @@ -285,12 +291,12 @@ func (w *backfillWorker) handleBackfillTask(d *ddlCtx, task *reorgBackfillTask, } logutil.BgLogger().Info("[ddl] backfill worker finish task", zap.Stringer("type", w.tp), - zap.Int("workerID", w.id), + zap.Int("worker ID", w.id), zap.String("task", task.String()), - zap.Int("addedCount", result.addedCount), - zap.Int("scanCount", result.scanCount), - zap.String("nextHandle", tryDecodeToHandleString(result.nextKey)), - zap.String("takeTime", time.Since(startTime).String())) + zap.Int("added count", result.addedCount), + zap.Int("scan count", result.scanCount), + zap.String("next key", hex.EncodeToString(result.nextKey)), + zap.String("take time", time.Since(startTime).String())) if ResultCounterForTest != nil && result.err == nil { ResultCounterForTest.Add(1) } @@ -342,6 +348,11 @@ func (w *backfillWorker) run(d *ddlCtx, bf backfiller, job *model.Job) { w.batchCnt = int(variable.GetDDLReorgBatchSize()) result := w.handleBackfillTask(d, task, bf) w.resultCh <- result + if result.err != nil { + logutil.BgLogger().Info("[ddl] backfill worker exit on error", + zap.Stringer("type", w.tp), zap.Int("workerID", w.id), zap.Error(result.err)) + return + } } } @@ -351,8 +362,8 @@ func (w *backfillWorker) run(d *ddlCtx, bf backfiller, job *model.Job) { func splitTableRanges(t table.PhysicalTable, store kv.Storage, startKey, endKey kv.Key) ([]kv.KeyRange, error) { logutil.BgLogger().Info("[ddl] split table range from PD", zap.Int64("physicalTableID", t.GetPhysicalID()), - zap.String("startHandle", tryDecodeToHandleString(startKey)), - zap.String("endHandle", tryDecodeToHandleString(endKey))) + zap.String("start key", hex.EncodeToString(startKey)), + zap.String("end key", hex.EncodeToString(endKey))) kvRange := kv.KeyRange{StartKey: startKey, EndKey: endKey} s, ok := store.(tikv.Storage) if !ok { @@ -428,6 +439,9 @@ func (dc *ddlCtx) sendTasksAndWait(scheduler *backfillScheduler, totalAddedCount batchTasks []*reorgBackfillTask) error { reorgInfo := scheduler.reorgInfo for _, task := range batchTasks { + if scheduler.copReqSenderPool != nil { + scheduler.copReqSenderPool.sendTask(task) + } scheduler.taskCh <- task } @@ -444,14 +458,14 @@ func (dc *ddlCtx) sendTasksAndWait(scheduler *backfillScheduler, totalAddedCount err1 := reorgInfo.UpdateReorgMeta(nextKey, scheduler.sessPool) metrics.BatchAddIdxHistogram.WithLabelValues(metrics.LblError).Observe(elapsedTime.Seconds()) logutil.BgLogger().Warn("[ddl] backfill worker handle batch tasks failed", - zap.ByteString("elementType", reorgInfo.currElement.TypeKey), - zap.Int64("elementID", reorgInfo.currElement.ID), - zap.Int64("totalAddedCount", *totalAddedCount), - zap.String("startHandle", tryDecodeToHandleString(startKey)), - zap.String("nextHandle", tryDecodeToHandleString(nextKey)), - zap.Int64("batchAddedCount", taskAddedCount), - zap.String("taskFailedError", err.Error()), - zap.String("takeTime", elapsedTime.String()), + zap.ByteString("element type", reorgInfo.currElement.TypeKey), + zap.Int64("element ID", reorgInfo.currElement.ID), + zap.Int64("total added count", *totalAddedCount), + zap.String("start key", hex.EncodeToString(startKey)), + zap.String("next key", hex.EncodeToString(nextKey)), + zap.Int64("batch added count", taskAddedCount), + zap.String("task failed error", err.Error()), + zap.String("take time", elapsedTime.String()), zap.NamedError("updateHandleError", err1)) return errors.Trace(err) } @@ -460,43 +474,16 @@ func (dc *ddlCtx) sendTasksAndWait(scheduler *backfillScheduler, totalAddedCount dc.getReorgCtx(reorgInfo.Job).setNextKey(nextKey) metrics.BatchAddIdxHistogram.WithLabelValues(metrics.LblOK).Observe(elapsedTime.Seconds()) logutil.BgLogger().Info("[ddl] backfill workers successfully processed batch", - zap.ByteString("elementType", reorgInfo.currElement.TypeKey), - zap.Int64("elementID", reorgInfo.currElement.ID), - zap.Int64("totalAddedCount", *totalAddedCount), - zap.String("startHandle", tryDecodeToHandleString(startKey)), - zap.String("nextHandle", tryDecodeToHandleString(nextKey)), - zap.Int64("batchAddedCount", taskAddedCount), - zap.String("takeTime", elapsedTime.String())) + zap.ByteString("element type", reorgInfo.currElement.TypeKey), + zap.Int64("element ID", reorgInfo.currElement.ID), + zap.Int64("total added count", *totalAddedCount), + zap.String("start key", hex.EncodeToString(startKey)), + zap.String("next key", hex.EncodeToString(nextKey)), + zap.Int64("batch added count", taskAddedCount), + zap.String("take time", elapsedTime.String())) return nil } -func tryDecodeToHandleString(key kv.Key) string { - defer func() { - if r := recover(); r != nil { - logutil.BgLogger().Warn("tryDecodeToHandleString panic", - zap.Any("recover()", r), - zap.Binary("key", key)) - } - }() - handle, err := tablecodec.DecodeRowKey(key) - if err != nil { - recordPrefixIdx := bytes.Index(key, []byte("_r")) - if recordPrefixIdx == -1 { - return fmt.Sprintf("key: %x", key) - } - handleBytes := key[recordPrefixIdx+2:] - terminatedWithZero := len(handleBytes) > 0 && handleBytes[len(handleBytes)-1] == 0 - if terminatedWithZero { - handle, err := tablecodec.DecodeRowKey(key[:len(key)-1]) - if err == nil { - return handle.String() + ".next" - } - } - return fmt.Sprintf("%x", handleBytes) - } - return handle.String() -} - // handleRangeTasks sends tasks to workers, and returns remaining kvRanges that is not handled. func (dc *ddlCtx) handleRangeTasks(scheduler *backfillScheduler, t table.Table, totalAddedCount *int64, kvRanges []kv.KeyRange) ([]kv.KeyRange, error) { @@ -621,6 +608,8 @@ type backfillScheduler struct { taskCh chan *reorgBackfillTask resultCh chan *backfillResult + + copReqSenderPool *copReqSenderPool // for add index in ingest way. } const backfillTaskChanSize = 1024 @@ -674,6 +663,7 @@ func (b *backfillScheduler) workerSize() int { } func (b *backfillScheduler) adjustWorkerSize() error { + b.initCopReqSenderPool() reorgInfo := b.reorgInfo job := reorgInfo.Job jc := b.jobCtx @@ -681,7 +671,11 @@ func (b *backfillScheduler) adjustWorkerSize() error { logutil.BgLogger().Error("[ddl] load DDL reorganization variable failed", zap.Error(err)) } workerCnt := int(variable.GetDDLReorgWorkerCounter()) - workerCnt = mathutil.Min(workerCnt, b.maxSize) + if b.copReqSenderPool != nil { + workerCnt = mathutil.Min(workerCnt/2+1, b.maxSize) + } else { + workerCnt = mathutil.Min(workerCnt, b.maxSize) + } // Increase the worker. for i := len(b.workers); i < workerCnt; i++ { sessCtx, err := b.newSessCtx() @@ -696,8 +690,12 @@ func (b *backfillScheduler) adjustWorkerSize() error { case typeAddIndexWorker: idxWorker, err := newAddIndexWorker(sessCtx, i, b.tbl, b.decodeColMap, reorgInfo, jc, job) if err != nil { - return errors.Trace(err) + if b.canSkipError(err) { + continue + } + return err } + idxWorker.copReqSenderPool = b.copReqSenderPool worker, runner = idxWorker, idxWorker.backfillWorker case typeAddIndexMergeTmpWorker: tmpIdxWorker := newMergeTempIndexWorker(sessCtx, i, b.tbl, reorgInfo, jc) @@ -724,10 +722,56 @@ func (b *backfillScheduler) adjustWorkerSize() error { b.workers = b.workers[:workerCnt] closeBackfillWorkers(workers) } - return injectCheckBackfillWorkerNum(len(b.workers)) + if b.copReqSenderPool != nil { + b.copReqSenderPool.adjustSize(len(b.workers)) + } + return injectCheckBackfillWorkerNum(len(b.workers), b.tp == typeAddIndexMergeTmpWorker) +} + +func (b *backfillScheduler) initCopReqSenderPool() { + if b.tp != typeAddIndexWorker || b.reorgInfo.Job.ReorgMeta.ReorgTp != model.ReorgTypeLitMerge || + b.copReqSenderPool != nil || len(b.workers) > 0 { + return + } + indexInfo := model.FindIndexInfoByID(b.tbl.Meta().Indices, b.reorgInfo.currElement.ID) + if indexInfo == nil { + logutil.BgLogger().Warn("[ddl-ingest] cannot init cop request sender", + zap.Int64("table ID", b.tbl.Meta().ID), zap.Int64("index ID", b.reorgInfo.currElement.ID)) + return + } + sessCtx, err := b.newSessCtx() + if err != nil { + logutil.BgLogger().Warn("[ddl-ingest] cannot init cop request sender", zap.Error(err)) + return + } + copCtx, err := newCopContext(b.tbl.Meta(), indexInfo, sessCtx) + if err != nil { + logutil.BgLogger().Warn("[ddl-ingest] cannot init cop request sender", zap.Error(err)) + return + } + ver, err := sessCtx.GetStore().CurrentVersion(kv.GlobalTxnScope) + if err != nil { + logutil.BgLogger().Warn("[ddl-ingest] cannot init cop request sender", zap.Error(err)) + return + } + b.copReqSenderPool = newCopReqSenderPool(b.ctx, copCtx, ver.Ver) +} + +func (b *backfillScheduler) canSkipError(err error) bool { + if len(b.workers) > 0 { + // The error can be skipped because the rest workers can handle the tasks. + return true + } + logutil.BgLogger().Warn("[ddl] create add index backfill worker failed", + zap.Int("current worker count", len(b.workers)), + zap.Int64("job ID", b.reorgInfo.ID), zap.Error(err)) + return false } func (b *backfillScheduler) Close() { + if b.copReqSenderPool != nil { + b.copReqSenderPool.close() + } closeBackfillWorkers(b.workers) close(b.taskCh) close(b.resultCh) @@ -777,6 +821,15 @@ func (dc *ddlCtx) writePhysicalTableRecord(sessPool *sessionPool, t table.Physic scheduler := newBackfillScheduler(dc.ctx, reorgInfo, sessPool, bfWorkerType, t, decodeColMap, jc) defer scheduler.Close() + var ingestBeCtx *ingest.BackendContext + if bfWorkerType == typeAddIndexWorker && job.ReorgMeta.ReorgTp == model.ReorgTypeLitMerge { + if bc, ok := ingest.LitBackCtxMgr.Load(job.ID); ok { + ingestBeCtx = bc + } else { + return errors.New(ingest.LitErrGetBackendFail) + } + } + for { kvRanges, err := splitTableRanges(t, reorgInfo.d.store, startKey, endKey) if err != nil { @@ -795,14 +848,11 @@ func (dc *ddlCtx) writePhysicalTableRecord(sessPool *sessionPool, t table.Physic zap.Int("regionCnt", len(kvRanges)), zap.String("startKey", hex.EncodeToString(startKey)), zap.String("endKey", hex.EncodeToString(endKey))) - if bfWorkerType == typeAddIndexWorker && job.ReorgMeta.ReorgTp == model.ReorgTypeLitMerge { - if bc, ok := ingest.LitBackCtxMgr.Load(job.ID); ok { - err := bc.Flush(reorgInfo.currElement.ID) - if err != nil { - return errors.Trace(err) - } - } else { - return errors.New(ingest.LitErrGetBackendFail) + + if ingestBeCtx != nil { + err := ingestBeCtx.Flush(reorgInfo.currElement.ID) + if err != nil { + return errors.Trace(err) } } remains, err := dc.handleRangeTasks(scheduler, t, &totalAddedCount, kvRanges) @@ -811,6 +861,9 @@ func (dc *ddlCtx) writePhysicalTableRecord(sessPool *sessionPool, t table.Physic } if len(remains) == 0 { + if ingestBeCtx != nil { + ingestBeCtx.EngMgr.ResetWorkers(ingestBeCtx, job.ID, reorgInfo.currElement.ID) + } break } startKey = remains[0].StartKey @@ -818,7 +871,10 @@ func (dc *ddlCtx) writePhysicalTableRecord(sessPool *sessionPool, t table.Physic return nil } -func injectCheckBackfillWorkerNum(curWorkerSize int) error { +func injectCheckBackfillWorkerNum(curWorkerSize int, isMergeWorker bool) error { + if isMergeWorker { + return nil + } failpoint.Inject("checkBackfillWorkerNum", func(val failpoint.Value) { //nolint:forcetypeassert if val.(bool) { diff --git a/ddl/cluster.go b/ddl/cluster.go index ebb833156cec2..96a7cd8544abb 100644 --- a/ddl/cluster.go +++ b/ddl/cluster.go @@ -50,11 +50,7 @@ import ( ) var pdScheduleKey = []string{ - "hot-region-schedule-limit", - "leader-schedule-limit", "merge-schedule-limit", - "region-schedule-limit", - "replica-schedule-limit", } const ( @@ -68,6 +64,7 @@ const ( autoAnalyzeOffset readOnlyOffset totalLockedRegionsOffset + startTSOffset commitTSOffset ) @@ -280,6 +277,7 @@ func GetFlashbackKeyRanges(sess sessionctx.Context) ([]kv.KeyRange, error) { func SendPrepareFlashbackToVersionRPC( ctx context.Context, s tikv.Storage, + flashbackTS, startTS uint64, r tikvstore.KeyRange, ) (rangetask.TaskStat, error) { startKey, rangeEndKey := r.StartKey, r.EndKey @@ -314,6 +312,8 @@ func SendPrepareFlashbackToVersionRPC( req := tikvrpc.NewRequest(tikvrpc.CmdPrepareFlashbackToVersion, &kvrpcpb.PrepareFlashbackToVersionRequest{ StartKey: startKey, EndKey: endKey, + StartTs: startTS, + Version: flashbackTS, }) resp, err := s.SendReq(bo, req, loc.Region, flashbackTimeout) @@ -481,11 +481,11 @@ func (w *worker) onFlashbackCluster(d *ddlCtx, t *meta.Meta, job *model.Job) (ve return ver, errors.Errorf("Not support flashback cluster in non-TiKV env") } - var flashbackTS, lockedRegions, commitTS uint64 + var flashbackTS, lockedRegions, startTS, commitTS uint64 var pdScheduleValue map[string]interface{} var autoAnalyzeValue, readOnlyValue string var gcEnabledValue bool - if err := job.DecodeArgs(&flashbackTS, &pdScheduleValue, &gcEnabledValue, &autoAnalyzeValue, &readOnlyValue, &lockedRegions, &commitTS); err != nil { + if err := job.DecodeArgs(&flashbackTS, &pdScheduleValue, &gcEnabledValue, &autoAnalyzeValue, &readOnlyValue, &lockedRegions, &startTS, &commitTS); err != nil { job.State = model.JobStateCancelled return ver, errors.Trace(err) } @@ -533,6 +533,13 @@ func (w *worker) onFlashbackCluster(d *ddlCtx, t *meta.Meta, job *model.Job) (ve job.State = model.JobStateCancelled return ver, errors.Trace(err) } + // We should get startTS here to avoid lost startTS when TiDB crashed during send prepare flashback RPC. + startTS, err = d.store.GetOracle().GetTimestamp(d.ctx, &oracle.Option{TxnScope: oracle.GlobalTxnScope}) + if err != nil { + job.State = model.JobStateCancelled + return ver, errors.Trace(err) + } + job.Args[startTSOffset] = startTS job.SchemaState = model.StateWriteOnly return ver, nil // Stage 3, get key ranges and get locks. @@ -552,7 +559,7 @@ func (w *worker) onFlashbackCluster(d *ddlCtx, t *meta.Meta, job *model.Job) (ve for _, r := range keyRanges { if err = flashbackToVersion(d.ctx, d, func(ctx context.Context, r tikvstore.KeyRange) (rangetask.TaskStat, error) { - stats, err := SendPrepareFlashbackToVersionRPC(ctx, d.store.(tikv.Storage), r) + stats, err := SendPrepareFlashbackToVersionRPC(ctx, d.store.(tikv.Storage), flashbackTS, startTS, r) totalRegions.Add(uint64(stats.CompletedRegions)) return stats, err }, r.StartKey, r.EndKey); err != nil { @@ -587,8 +594,8 @@ func (w *worker) onFlashbackCluster(d *ddlCtx, t *meta.Meta, job *model.Job) (ve for _, r := range keyRanges { if err = flashbackToVersion(d.ctx, d, func(ctx context.Context, r tikvstore.KeyRange) (rangetask.TaskStat, error) { - // Use commitTS - 1 as startTS, make sure it less than commitTS. - stats, err := SendFlashbackToVersionRPC(ctx, d.store.(tikv.Storage), flashbackTS, commitTS-1, commitTS, r) + // Use same startTS as prepare phase to simulate 1PC txn. + stats, err := SendFlashbackToVersionRPC(ctx, d.store.(tikv.Storage), flashbackTS, startTS, commitTS, r) completedRegions.Add(uint64(stats.CompletedRegions)) logutil.BgLogger().Info("[ddl] flashback cluster stats", zap.Uint64("complete regions", completedRegions.Load()), @@ -615,12 +622,12 @@ func finishFlashbackCluster(w *worker, job *model.Job) error { return nil } - var flashbackTS, lockedRegions, commitTS uint64 + var flashbackTS, lockedRegions, startTS, commitTS uint64 var pdScheduleValue map[string]interface{} var autoAnalyzeValue, readOnlyValue string var gcEnabled bool - if err := job.DecodeArgs(&flashbackTS, &pdScheduleValue, &gcEnabled, &autoAnalyzeValue, &readOnlyValue, &lockedRegions, &commitTS); err != nil { + if err := job.DecodeArgs(&flashbackTS, &pdScheduleValue, &gcEnabled, &autoAnalyzeValue, &readOnlyValue, &lockedRegions, &startTS, &commitTS); err != nil { return errors.Trace(err) } sess, err := w.sessPool.get() diff --git a/ddl/cluster_test.go b/ddl/cluster_test.go index 2cbf5ee45336a..4c1ec291f87f2 100644 --- a/ddl/cluster_test.go +++ b/ddl/cluster_test.go @@ -98,7 +98,7 @@ func TestFlashbackCloseAndResetPDSchedule(t *testing.T) { fmt.Sprintf("return(%v)", injectSafeTS))) oldValue := map[string]interface{}{ - "hot-region-schedule-limit": 1, + "merge-schedule-limit": 1, } require.NoError(t, infosync.SetPDScheduleConfig(context.Background(), oldValue)) @@ -112,7 +112,7 @@ func TestFlashbackCloseAndResetPDSchedule(t *testing.T) { if job.SchemaState == model.StateWriteReorganization { closeValue, err := infosync.GetPDScheduleConfig(context.Background()) assert.NoError(t, err) - assert.Equal(t, closeValue["hot-region-schedule-limit"], 0) + assert.Equal(t, closeValue["merge-schedule-limit"], 0) // cancel flashback job job.State = model.JobStateCancelled job.Error = dbterror.ErrCancelledDDLJob @@ -128,7 +128,7 @@ func TestFlashbackCloseAndResetPDSchedule(t *testing.T) { finishValue, err := infosync.GetPDScheduleConfig(context.Background()) require.NoError(t, err) - require.EqualValues(t, finishValue["hot-region-schedule-limit"], 1) + require.EqualValues(t, finishValue["merge-schedule-limit"], 1) require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/ddl/mockFlashbackTest")) require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/expression/injectSafeTS")) diff --git a/ddl/column.go b/ddl/column.go index 06f6e2897f3ae..9f5174737915a 100644 --- a/ddl/column.go +++ b/ddl/column.go @@ -17,6 +17,7 @@ package ddl import ( "bytes" "context" + "encoding/hex" "fmt" "math/bits" "strings" @@ -341,6 +342,9 @@ func checkDropColumn(d *ddlCtx, t *meta.Meta, job *model.Job) (*model.TableInfo, if err = checkDropColumnWithForeignKeyConstraintInOwner(d, t, job, tblInfo, colName.L); err != nil { return nil, nil, nil, false, errors.Trace(err) } + if err = checkDropColumnWithTTLConfig(tblInfo, colName.L); err != nil { + return nil, nil, nil, false, errors.Trace(err) + } idxInfos := listIndicesWithColumn(colName.L, tblInfo.Indices) return tblInfo, colInfo, idxInfos, false, nil } @@ -857,6 +861,9 @@ func adjustTableInfoAfterModifyColumnWithData(tblInfo *model.TableInfo, pos *ast indexesToRemove := filterIndexesToRemove(changingIdxs, newName, tblInfo) replaceOldIndexes(tblInfo, indexesToRemove) } + if tblInfo.TTLInfo != nil { + updateTTLInfoWhenModifyColumn(tblInfo, oldCol.Name, changingCol.Name) + } // Move the new column to a correct offset. destOffset, err := LocateOffsetToMove(changingCol.Offset, pos, tblInfo) if err != nil { @@ -931,6 +938,17 @@ func updateFKInfoWhenModifyColumn(tblInfo *model.TableInfo, oldCol, newCol model } } +func updateTTLInfoWhenModifyColumn(tblInfo *model.TableInfo, oldCol, newCol model.CIStr) { + if oldCol.L == newCol.L { + return + } + if tblInfo.TTLInfo != nil { + if tblInfo.TTLInfo.ColumnName.L == oldCol.L { + tblInfo.TTLInfo.ColumnName = newCol + } + } +} + // filterIndexesToRemove filters out the indexes that can be removed. func filterIndexesToRemove(changingIdxs []*model.IndexInfo, colName model.CIStr, tblInfo *model.TableInfo) []*model.IndexInfo { indexesToRemove := make([]*model.IndexInfo, 0, len(changingIdxs)) @@ -1116,11 +1134,11 @@ func (w *worker) updateCurrentElement(t table.Table, reorgInfo *reorgInfo) error // Write the reorg info to store so the whole reorganize process can recover from panic. err := reorgInfo.UpdateReorgMeta(reorgInfo.StartKey, w.sessPool) logutil.BgLogger().Info("[ddl] update column and indexes", - zap.Int64("jobID", reorgInfo.Job.ID), - zap.ByteString("elementType", reorgInfo.currElement.TypeKey), - zap.Int64("elementID", reorgInfo.currElement.ID), - zap.String("startHandle", tryDecodeToHandleString(reorgInfo.StartKey)), - zap.String("endHandle", tryDecodeToHandleString(reorgInfo.EndKey))) + zap.Int64("job ID", reorgInfo.Job.ID), + zap.ByteString("element type", reorgInfo.currElement.TypeKey), + zap.Int64("element ID", reorgInfo.currElement.ID), + zap.String("start key", hex.EncodeToString(reorgInfo.StartKey)), + zap.String("end key", hex.EncodeToString(reorgInfo.EndKey))) if err != nil { return errors.Trace(err) } @@ -1473,6 +1491,7 @@ func adjustTableInfoAfterModifyColumn( tblInfo.MoveColumnInfo(oldCol.Offset, destOffset) updateNewIdxColsNameOffset(tblInfo.Indices, oldCol.Name, newCol) updateFKInfoWhenModifyColumn(tblInfo, oldCol.Name, newCol.Name) + updateTTLInfoWhenModifyColumn(tblInfo, oldCol.Name, newCol.Name) return nil } @@ -1524,7 +1543,7 @@ func checkAndApplyAutoRandomBits(d *ddlCtx, m *meta.Meta, dbInfo *model.DBInfo, return nil } idAcc := m.GetAutoIDAccessors(dbInfo.ID, tblInfo.ID) - err := checkNewAutoRandomBits(idAcc, oldCol, newCol, newAutoRandBits, tblInfo.AutoRandomRangeBits, tblInfo.Version) + err := checkNewAutoRandomBits(idAcc, oldCol, newCol, newAutoRandBits, tblInfo.AutoRandomRangeBits, tblInfo.SepAutoInc()) if err != nil { return err } @@ -1533,13 +1552,17 @@ func checkAndApplyAutoRandomBits(d *ddlCtx, m *meta.Meta, dbInfo *model.DBInfo, // checkNewAutoRandomBits checks whether the new auto_random bits number can cause overflow. func checkNewAutoRandomBits(idAccessors meta.AutoIDAccessors, oldCol *model.ColumnInfo, - newCol *model.ColumnInfo, newShardBits, newRangeBits uint64, tblVer uint16) error { + newCol *model.ColumnInfo, newShardBits, newRangeBits uint64, sepAutoInc bool) error { shardFmt := autoid.NewShardIDFormat(&newCol.FieldType, newShardBits, newRangeBits) idAcc := idAccessors.RandomID() convertedFromAutoInc := mysql.HasAutoIncrementFlag(oldCol.GetFlag()) if convertedFromAutoInc { - idAcc = idAccessors.IncrementID(tblVer) + if sepAutoInc { + idAcc = idAccessors.IncrementID(model.TableInfoVersion5) + } else { + idAcc = idAccessors.RowID() + } } // Generate a new auto ID first to prevent concurrent update in DML. _, err := idAcc.Inc(1) diff --git a/ddl/column_modify_test.go b/ddl/column_modify_test.go index f933182737d05..2055f9df9fa9c 100644 --- a/ddl/column_modify_test.go +++ b/ddl/column_modify_test.go @@ -1036,6 +1036,7 @@ func TestWriteReorgForColumnTypeChangeOnAmendTxn(t *testing.T) { tk := testkit.NewTestKit(t, store) tk.MustExec("set global tidb_enable_metadata_lock=0") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0") tk.MustExec("set global tidb_enable_amend_pessimistic_txn = ON") defer tk.MustExec("set global tidb_enable_amend_pessimistic_txn = OFF") diff --git a/ddl/concurrentddltest/BUILD.bazel b/ddl/concurrentddltest/BUILD.bazel index 81b86bf3f3856..82e2adf1fe9c2 100644 --- a/ddl/concurrentddltest/BUILD.bazel +++ b/ddl/concurrentddltest/BUILD.bazel @@ -2,18 +2,20 @@ load("@io_bazel_rules_go//go:def.bzl", "go_test") go_test( name = "concurrentddltest_test", - timeout = "short", + timeout = "moderate", srcs = [ "main_test.go", "switch_test.go", ], flaky = True, race = "on", + shard_count = 2, deps = [ "//config", "//ddl", "//kv", "//meta", + "//sessionctx/variable", "//testkit", "//testkit/testsetup", "//util", diff --git a/ddl/concurrentddltest/switch_test.go b/ddl/concurrentddltest/switch_test.go index d487859260eb2..6cd26811008e6 100644 --- a/ddl/concurrentddltest/switch_test.go +++ b/ddl/concurrentddltest/switch_test.go @@ -23,6 +23,7 @@ import ( "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/meta" + "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/testkit" "github.com/pingcap/tidb/util" "github.com/stretchr/testify/require" @@ -134,3 +135,15 @@ func TestConcurrentDDLSwitch(t *testing.T) { } } } + +func TestConcurrentDDLSwitchWithMDL(t *testing.T) { + if !variable.EnableConcurrentDDL.Load() { + t.Skip("skip test if concurrent DDL is disabled") + } + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustGetErrMsg("set global tidb_enable_concurrent_ddl=off", "can not disable concurrent ddl when metadata lock is enabled") + tk.MustExec("set global tidb_enable_metadata_lock=0") + tk.MustExec("set global tidb_enable_concurrent_ddl=off") + tk.MustExec("create table test.t(a int)") +} diff --git a/ddl/db_change_test.go b/ddl/db_change_test.go index d865c970e7f42..cf11036a9935e 100644 --- a/ddl/db_change_test.go +++ b/ddl/db_change_test.go @@ -1738,8 +1738,6 @@ func TestCreateUniqueExpressionIndex(t *testing.T) { if checkErr != nil { return } - err := originalCallback.OnChanged(nil) - require.NoError(t, err) switch job.SchemaState { case model.StateDeleteOnly: for _, sql := range stateDeleteOnlySQLs { diff --git a/ddl/db_integration_test.go b/ddl/db_integration_test.go index b25aa87f2fce8..4b2468b3be9c4 100644 --- a/ddl/db_integration_test.go +++ b/ddl/db_integration_test.go @@ -2926,94 +2926,84 @@ func TestAutoIncrementForce(t *testing.T) { return gid } - for _, str := range []string{"", " AUTO_ID_CACHE 1"} { - // Rebase _tidb_row_id. - tk.MustExec("create table t (a int)" + str) - tk.MustExec("alter table t force auto_increment = 2;") - tk.MustExec("insert into t values (1),(2);") - tk.MustQuery("select a, _tidb_rowid from t;").Check(testkit.Rows("1 2", "2 3")) - // Cannot set next global ID to 0. - tk.MustGetErrCode("alter table t force auto_increment = 0;", errno.ErrAutoincReadFailed) - tk.MustExec("alter table t force auto_increment = 1;") - require.Equal(t, uint64(1), getNextGlobalID()) - // inserting new rows can overwrite the existing data. - tk.MustExec("insert into t values (3);") - require.Equal(t, "[kv:1062]Duplicate entry '2' for key 't.PRIMARY'", tk.ExecToErr("insert into t values (3);").Error()) - tk.MustQuery("select a, _tidb_rowid from t;").Check(testkit.Rows("3 1", "1 2", "2 3")) - tk.MustExec("drop table if exists t;") - } + // Rebase _tidb_row_id. + tk.MustExec("create table t (a int)") + tk.MustExec("alter table t force auto_increment = 2;") + tk.MustExec("insert into t values (1),(2);") + tk.MustQuery("select a, _tidb_rowid from t;").Check(testkit.Rows("1 2", "2 3")) + // Cannot set next global ID to 0. + tk.MustGetErrCode("alter table t force auto_increment = 0;", errno.ErrAutoincReadFailed) + tk.MustExec("alter table t force auto_increment = 1;") + require.Equal(t, uint64(1), getNextGlobalID()) + // inserting new rows can overwrite the existing data. + tk.MustExec("insert into t values (3);") + require.Equal(t, "[kv:1062]Duplicate entry '2' for key 't.PRIMARY'", tk.ExecToErr("insert into t values (3);").Error()) + tk.MustQuery("select a, _tidb_rowid from t;").Check(testkit.Rows("3 1", "1 2", "2 3")) + tk.MustExec("drop table if exists t;") - for _, str := range []string{"", " AUTO_ID_CACHE 1"} { - // Rebase auto_increment. - tk.MustExec("create table t (a int primary key auto_increment, b int)" + str) - tk.MustExec("insert into t values (1, 1);") - tk.MustExec("insert into t values (100000000, 1);") - tk.MustExec("delete from t where a = 100000000;") - require.Greater(t, getNextGlobalID(), uint64(100000000)) - // Cannot set next global ID to 0. - tk.MustGetErrCode("alter table t /*T![force_inc] force */ auto_increment = 0;", errno.ErrAutoincReadFailed) - tk.MustExec("alter table t /*T![force_inc] force */ auto_increment = 2;") - require.Equal(t, uint64(2), getNextGlobalID()) - tk.MustExec("insert into t(b) values (2);") - tk.MustQuery("select a, b from t;").Check(testkit.Rows("1 1", "2 2")) - tk.MustExec("drop table if exists t;") - } + // Rebase auto_increment. + tk.MustExec("create table t (a int primary key auto_increment, b int)") + tk.MustExec("insert into t values (1, 1);") + tk.MustExec("insert into t values (100000000, 1);") + tk.MustExec("delete from t where a = 100000000;") + require.Greater(t, getNextGlobalID(), uint64(100000000)) + // Cannot set next global ID to 0. + tk.MustGetErrCode("alter table t /*T![force_inc] force */ auto_increment = 0;", errno.ErrAutoincReadFailed) + tk.MustExec("alter table t /*T![force_inc] force */ auto_increment = 2;") + require.Equal(t, uint64(2), getNextGlobalID()) + tk.MustExec("insert into t(b) values (2);") + tk.MustQuery("select a, b from t;").Check(testkit.Rows("1 1", "2 2")) + tk.MustExec("drop table if exists t;") - for _, str := range []string{"", " AUTO_ID_CACHE 1"} { - // Rebase auto_random. - tk.MustExec("create table t (a bigint primary key auto_random(5))" + str) - tk.MustExec("insert into t values ();") - tk.MustExec("set @@allow_auto_random_explicit_insert = true") - tk.MustExec("insert into t values (100000000);") - tk.MustExec("delete from t where a = 100000000;") - require.Greater(t, getNextGlobalID(), uint64(100000000)) - // Cannot set next global ID to 0. - tk.MustGetErrCode("alter table t force auto_random_base = 0;", errno.ErrAutoincReadFailed) - tk.MustExec("alter table t force auto_random_base = 2;") - require.Equal(t, uint64(2), getNextGlobalID()) - tk.MustExec("insert into t values ();") - tk.MustQuery("select (a & 3) from t order by 1;").Check(testkit.Rows("1", "2")) - tk.MustExec("drop table if exists t;") - } + // Rebase auto_random. + tk.MustExec("create table t (a bigint primary key auto_random(5))") + tk.MustExec("insert into t values ();") + tk.MustExec("set @@allow_auto_random_explicit_insert = true") + tk.MustExec("insert into t values (100000000);") + tk.MustExec("delete from t where a = 100000000;") + require.Greater(t, getNextGlobalID(), uint64(100000000)) + // Cannot set next global ID to 0. + tk.MustGetErrCode("alter table t force auto_random_base = 0;", errno.ErrAutoincReadFailed) + tk.MustExec("alter table t force auto_random_base = 2;") + require.Equal(t, uint64(2), getNextGlobalID()) + tk.MustExec("insert into t values ();") + tk.MustQuery("select (a & 3) from t order by 1;").Check(testkit.Rows("1", "2")) + tk.MustExec("drop table if exists t;") - for _, str := range []string{"", " AUTO_ID_CACHE 1"} { - // Change next global ID. - tk.MustExec("create table t (a bigint primary key auto_increment)" + str) - tk.MustExec("insert into t values (1);") - bases := []uint64{1, 65535, 10, math.MaxUint64, math.MaxInt64 + 1, 1, math.MaxUint64, math.MaxInt64, 2} - lastBase := fmt.Sprintf("%d", bases[len(bases)-1]) - for _, b := range bases { - fmt.Println("execute alter table force increment to ==", b) - tk.MustExec(fmt.Sprintf("alter table t force auto_increment = %d;", b)) - require.Equal(t, b, getNextGlobalID()) - } + // Change next global ID. + tk.MustExec("create table t (a bigint primary key auto_increment)") + tk.MustExec("insert into t values (1);") + bases := []uint64{1, 65535, 10, math.MaxUint64, math.MaxInt64 + 1, 1, math.MaxUint64, math.MaxInt64, 2} + lastBase := fmt.Sprintf("%d", bases[len(bases)-1]) + for _, b := range bases { + fmt.Println("execute alter table force increment to ==", b) + tk.MustExec(fmt.Sprintf("alter table t force auto_increment = %d;", b)) + require.Equal(t, b, getNextGlobalID()) + } + tk.MustExec("insert into t values ();") + tk.MustQuery("select a from t;").Check(testkit.Rows("1", lastBase)) + // Force alter unsigned int auto_increment column. + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a bigint unsigned primary key auto_increment)") + for _, b := range bases { + tk.MustExec(fmt.Sprintf("alter table t force auto_increment = %d;", b)) + require.Equal(t, b, getNextGlobalID()) tk.MustExec("insert into t values ();") - tk.MustQuery("select a from t;").Check(testkit.Rows("1", lastBase)) - // Force alter unsigned int auto_increment column. - tk.MustExec("drop table if exists t;") - tk.MustExec("create table t (a bigint unsigned primary key auto_increment)" + str) - for _, b := range bases { - tk.MustExec(fmt.Sprintf("alter table t force auto_increment = %d;", b)) - require.Equal(t, b, getNextGlobalID()) - tk.MustExec("insert into t values ();") - tk.MustQuery("select a from t;").Check(testkit.Rows(fmt.Sprintf("%d", b))) - tk.MustExec("delete from t;") - } - tk.MustExec("drop table if exists t;") + tk.MustQuery("select a from t;").Check(testkit.Rows(fmt.Sprintf("%d", b))) + tk.MustExec("delete from t;") } + tk.MustExec("drop table if exists t;") - for _, str := range []string{"", " AUTO_ID_CACHE 1"} { - // Force alter with @@auto_increment_increment and @@auto_increment_offset. - tk.MustExec("create table t(a int key auto_increment)" + str) - tk.MustExec("set @@auto_increment_offset=2;") - tk.MustExec("set @@auto_increment_increment = 11;") - tk.MustExec("insert into t values (500);") - tk.MustExec("alter table t force auto_increment=100;") - tk.MustExec("insert into t values (), ();") - tk.MustQuery("select * from t;").Check(testkit.Rows("101", "112", "500")) - tk.MustQuery("select * from t order by a;").Check(testkit.Rows("101", "112", "500")) - tk.MustExec("drop table if exists t;") - } + // Force alter with @@auto_increment_increment and @@auto_increment_offset. + tk.MustExec("create table t(a int key auto_increment)") + tk.MustExec("set @@auto_increment_offset=2;") + tk.MustExec("set @@auto_increment_increment = 11;") + tk.MustExec("insert into t values (500);") + tk.MustExec("alter table t force auto_increment=100;") + tk.MustExec("insert into t values (), ();") + tk.MustQuery("select * from t;").Check(testkit.Rows("101", "112", "500")) + tk.MustQuery("select * from t order by a;").Check(testkit.Rows("101", "112", "500")) + tk.MustExec("drop table if exists t;") // Check for warning in case we can't set the auto_increment to the desired value tk.MustExec("create table t(a int primary key auto_increment)") @@ -3033,6 +3023,135 @@ func TestAutoIncrementForce(t *testing.T) { tk.MustExec("drop table t") } +func TestAutoIncrementForceAutoIDCache(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("drop database if exists auto_inc_force;") + tk.MustExec("create database auto_inc_force;") + tk.MustExec("use auto_inc_force;") + getNextGlobalID := func() uint64 { + gidStr := tk.MustQuery("show table t next_row_id").Rows()[0][3] + gid, err := strconv.ParseUint(gidStr.(string), 10, 64) + require.NoError(t, err) + return gid + } + + // When AUTO_ID_CACHE is 1, row id and auto increment id use separate allocator, so the behaviour differs. + // "Alter table t force auto_increment" has no effect on row id. + tk.MustExec("create table t (a int) AUTO_ID_CACHE 1") + tk.MustExec("alter table t force auto_increment = 2;") + tk.MustExec("insert into t values (1),(2);") + tk.MustQuery("select a, _tidb_rowid from t;").Check(testkit.Rows("1 1", "2 2")) + // Cannot set next global ID to 0. + tk.MustExec("alter table t force auto_increment = 0;") + tk.MustExec("alter table t force auto_increment = 1;") + tk.MustQuery("show table t next_row_id").Check(testkit.Rows( + "auto_inc_force t _tidb_rowid 5001 _TIDB_ROWID", + )) + + // inserting new rows can overwrite the existing data. + tk.MustExec("insert into t values (3);") + tk.MustExec("insert into t values (3);") + tk.MustQuery("select a, _tidb_rowid from t;").Check(testkit.Rows("1 1", "2 2", "3 5001", "3 5002")) + tk.MustExec("drop table if exists t;") + + // Rebase auto_increment. + tk.MustExec("create table t (a int primary key auto_increment, b int) AUTO_ID_CACHE 1") + tk.MustExec("insert into t values (1, 1);") + tk.MustExec("insert into t values (100000000, 1);") + tk.MustExec("delete from t where a = 100000000;") + tk.MustQuery("show table t next_row_id").Check(testkit.Rows( + "auto_inc_force t a 1 _TIDB_ROWID", + "auto_inc_force t a 100000001 AUTO_INCREMENT", + )) + // Cannot set next global ID to 0. + tk.MustGetErrCode("alter table t /*T![force_inc] force */ auto_increment = 0;", errno.ErrAutoincReadFailed) + tk.MustExec("alter table t /*T![force_inc] force */ auto_increment = 2;") + tk.MustQuery("show table t next_row_id").Check(testkit.Rows( + "auto_inc_force t a 1 _TIDB_ROWID", + "auto_inc_force t a 2 AUTO_INCREMENT", + )) + + tk.MustExec("insert into t(b) values (2);") + tk.MustQuery("select a, b from t;").Check(testkit.Rows("1 1", "2 2")) + tk.MustExec("drop table if exists t;") + + // Rebase auto_random. + tk.MustExec("create table t (a bigint primary key auto_random(5)) AUTO_ID_CACHE 1") + tk.MustExec("insert into t values ();") + tk.MustExec("set @@allow_auto_random_explicit_insert = true") + tk.MustExec("insert into t values (100000000);") + tk.MustExec("delete from t where a = 100000000;") + require.Greater(t, getNextGlobalID(), uint64(100000000)) + // Cannot set next global ID to 0. + tk.MustGetErrCode("alter table t force auto_random_base = 0;", errno.ErrAutoincReadFailed) + tk.MustExec("alter table t force auto_random_base = 2;") + require.Equal(t, uint64(2), getNextGlobalID()) + tk.MustExec("insert into t values ();") + tk.MustQuery("select (a & 3) from t order by 1;").Check(testkit.Rows("1", "2")) + tk.MustExec("drop table if exists t;") + + // Change next global ID. + tk.MustExec("create table t (a bigint primary key auto_increment) AUTO_ID_CACHE 1") + tk.MustExec("insert into t values (1);") + bases := []uint64{1, 65535, 10, math.MaxUint64, math.MaxInt64 + 1, 1, math.MaxUint64, math.MaxInt64, 2} + lastBase := fmt.Sprintf("%d", bases[len(bases)-1]) + for _, b := range bases { + fmt.Println("execute alter table force increment to ==", b) + tk.MustExec(fmt.Sprintf("alter table t force auto_increment = %d;", b)) + tk.MustQuery("show table t next_row_id").Check(testkit.Rows( + "auto_inc_force t a 1 _TIDB_ROWID", + fmt.Sprintf("auto_inc_force t a %d AUTO_INCREMENT", b), + )) + } + tk.MustExec("insert into t values ();") + tk.MustQuery("select a from t;").Check(testkit.Rows("1", lastBase)) + // Force alter unsigned int auto_increment column. + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a bigint unsigned primary key auto_increment) AUTO_ID_CACHE 1") + for _, b := range bases { + tk.MustExec(fmt.Sprintf("alter table t force auto_increment = %d;", b)) + tk.MustQuery("show table t next_row_id").Check(testkit.Rows( + "auto_inc_force t a 1 _TIDB_ROWID", + fmt.Sprintf("auto_inc_force t a %d AUTO_INCREMENT", b), + )) + tk.MustExec("insert into t values ();") + tk.MustQuery("select a from t;").Check(testkit.Rows(fmt.Sprintf("%d", b))) + tk.MustExec("delete from t;") + } + tk.MustExec("drop table if exists t;") + + // Force alter with @@auto_increment_increment and @@auto_increment_offset. + tk.MustExec("create table t(a int key auto_increment) AUTO_ID_CACHE 1") + tk.MustExec("set @@auto_increment_offset=2;") + tk.MustExec("set @@auto_increment_increment = 11;") + tk.MustExec("insert into t values (500);") + tk.MustExec("alter table t force auto_increment=100;") + tk.MustExec("insert into t values (), ();") + tk.MustQuery("select * from t;").Check(testkit.Rows("101", "112", "500")) + tk.MustQuery("select * from t order by a;").Check(testkit.Rows("101", "112", "500")) + tk.MustExec("drop table if exists t;") + + // Check for warning in case we can't set the auto_increment to the desired value + tk.MustExec("create table t(a int primary key auto_increment) AUTO_ID_CACHE 1") + tk.MustExec("insert into t values (200)") + tk.MustQuery("show create table t").Check(testkit.Rows( + "t CREATE TABLE `t` (\n" + + " `a` int(11) NOT NULL AUTO_INCREMENT,\n" + + " PRIMARY KEY (`a`) /*T![clustered_index] CLUSTERED */\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin /*T![auto_id_cache] AUTO_ID_CACHE=1 */")) + tk.MustExec("alter table t auto_increment=100;") + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 Can't reset AUTO_INCREMENT to 100 without FORCE option, using 201 instead")) + tk.MustExec("insert into t values ()") + tk.MustQuery("select * from t").Check(testkit.Rows("200", "211")) + tk.MustQuery("show create table t").Check(testkit.Rows( + "t CREATE TABLE `t` (\n" + + " `a` int(11) NOT NULL AUTO_INCREMENT,\n" + + " PRIMARY KEY (`a`) /*T![clustered_index] CLUSTERED */\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin /*T![auto_id_cache] AUTO_ID_CACHE=1 */")) + tk.MustExec("drop table t") +} + func TestIssue20490(t *testing.T) { store := testkit.CreateMockStore(t, mockstore.WithDDLChecker()) diff --git a/ddl/db_partition_test.go b/ddl/db_partition_test.go index e5ad2aa2bbfec..d714ed716f9f9 100644 --- a/ddl/db_partition_test.go +++ b/ddl/db_partition_test.go @@ -1409,7 +1409,7 @@ func TestAlterTableDropPartitionByList(t *testing.T) { );`) tk.MustExec(`insert into t values (1),(3),(5),(null)`) tk.MustExec(`alter table t drop partition p1`) - tk.MustQuery("select * from t").Sort().Check(testkit.Rows("1", "5", "")) + tk.MustQuery("select * from t order by id").Check(testkit.Rows("", "1", "5")) ctx := tk.Session() is := domain.GetDomain(ctx).InfoSchema() tbl, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) diff --git a/ddl/db_test.go b/ddl/db_test.go index 207aad4e0f116..a061af75baf26 100644 --- a/ddl/db_test.go +++ b/ddl/db_test.go @@ -898,11 +898,11 @@ func TestAutoIncrementIDOnTemporaryTable(t *testing.T) { tk.MustExec("drop table if exists global_temp_auto_id") tk.MustExec("create global temporary table global_temp_auto_id(id int primary key auto_increment) on commit delete rows") tk.MustExec("begin") - tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 1 AUTO_INCREMENT")) + tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 1 _TIDB_ROWID")) tk.MustExec("insert into global_temp_auto_id value(null)") tk.MustQuery("select @@last_insert_id").Check(testkit.Rows("1")) tk.MustQuery("select id from global_temp_auto_id").Check(testkit.Rows("1")) - tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 2 AUTO_INCREMENT")) + tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 2 _TIDB_ROWID")) tk.MustExec("commit") tk.MustExec("drop table global_temp_auto_id") @@ -914,12 +914,12 @@ func TestAutoIncrementIDOnTemporaryTable(t *testing.T) { " `id` int(11) NOT NULL AUTO_INCREMENT,\n" + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */\n" + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin AUTO_INCREMENT=100 ON COMMIT DELETE ROWS")) - tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 100 AUTO_INCREMENT")) + tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 100 _TIDB_ROWID")) tk.MustExec("begin") tk.MustExec("insert into global_temp_auto_id value(null)") tk.MustQuery("select @@last_insert_id").Check(testkit.Rows("100")) tk.MustQuery("select id from global_temp_auto_id").Check(testkit.Rows("100")) - tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 101 AUTO_INCREMENT")) + tk.MustQuery("show table global_temp_auto_id next_row_id").Check(testkit.Rows("test global_temp_auto_id id 101 _TIDB_ROWID")) tk.MustExec("commit") } tk.MustExec("drop table global_temp_auto_id") @@ -985,6 +985,7 @@ func TestCommitTxnWithIndexChange(t *testing.T) { // Prepare work. tk := testkit.NewTestKit(t, store) tk.MustExec("set global tidb_enable_metadata_lock=0") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk.MustExec("use test") tk.MustExec("create table t1 (c1 int primary key, c2 int, c3 int, index ok2(c2))") @@ -1385,6 +1386,7 @@ func TestAmendTxnSavepointWithDDL(t *testing.T) { tk.MustExec("use test;") tk.MustExec("set global tidb_enable_metadata_lock=0") tk2.MustExec("use test;") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") prepareFn := func() { @@ -1736,3 +1738,48 @@ func TestTiDBDownBeforeUpdateGlobalVersion(t *testing.T) { require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/ddl/mockDownBeforeUpdateGlobalVersion")) require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/ddl/checkDownBeforeUpdateGlobalVersion")) } + +func TestDDLBlockedCreateView(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(a int)") + + hook := &ddl.TestDDLCallback{Do: dom} + first := true + hook.OnJobRunBeforeExported = func(job *model.Job) { + if job.SchemaState != model.StateWriteOnly { + return + } + if !first { + return + } + first = false + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk2.MustExec("create view v as select * from t") + } + dom.DDL().SetHook(hook) + tk.MustExec("alter table t modify column a char(10)") +} + +func TestHashPartitionAddColumn(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(a int, b int) partition by hash(a) partitions 4") + + hook := &ddl.TestDDLCallback{Do: dom} + hook.OnJobRunBeforeExported = func(job *model.Job) { + if job.SchemaState != model.StateWriteOnly { + return + } + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk2.MustExec("delete from t") + } + dom.DDL().SetHook(hook) + tk.MustExec("alter table t add column c int") +} diff --git a/ddl/ddl.go b/ddl/ddl.go index 7eeaa8c1f357e..8c4d5235ea7ad 100644 --- a/ddl/ddl.go +++ b/ddl/ddl.go @@ -979,7 +979,6 @@ func (d *ddl) DoDDLJob(ctx sessionctx.Context, job *model.Job) error { // Instead, we merge all the jobs into one pending job. return appendToSubJobs(mci, job) } - // Get a global job ID and put the DDL job in the queue. setDDLJobQuery(ctx, job) task := &limitJobTask{job, make(chan error)} @@ -1094,8 +1093,13 @@ func (d *ddl) DoDDLJob(ctx sessionctx.Context, job *model.Job) error { logutil.BgLogger().Info("[ddl] DDL warnings doesn't match the warnings count", zap.Int64("jobID", jobID)) } else { for key, warning := range historyJob.ReorgMeta.Warnings { - for j := int64(0); j < historyJob.ReorgMeta.WarningsCount[key]; j++ { + keyCount := historyJob.ReorgMeta.WarningsCount[key] + if keyCount == 1 { ctx.GetSessionVars().StmtCtx.AppendWarning(warning) + } else { + newMsg := fmt.Sprintf("%d warnings with this error code, first warning: "+warning.GetMsg(), keyCount) + newWarning := dbterror.ClassTypes.Synthesize(terror.ErrCode(warning.Code()), newMsg) + ctx.GetSessionVars().StmtCtx.AppendWarning(newWarning) } } } @@ -1193,6 +1197,10 @@ func (d *ddl) SwitchConcurrentDDL(toConcurrentDDL bool) error { }) } + if variable.EnableMDL.Load() && !toConcurrentDDL { + return errors.New("can not disable concurrent ddl when metadata lock is enabled") + } + ctx, cancel := context.WithTimeout(context.Background(), time.Second*30) defer cancel() d.waiting.Store(true) @@ -1209,8 +1217,10 @@ func (d *ddl) SwitchConcurrentDDL(toConcurrentDDL bool) error { } if err == nil { variable.EnableConcurrentDDL.Store(toConcurrentDDL) + logutil.BgLogger().Info("[ddl] SwitchConcurrentDDL", zap.Bool("toConcurrentDDL", toConcurrentDDL)) + } else { + logutil.BgLogger().Warn("[ddl] SwitchConcurrentDDL", zap.Bool("toConcurrentDDL", toConcurrentDDL), zap.Error(err)) } - logutil.BgLogger().Info("[ddl] SwitchConcurrentDDL", zap.Bool("toConcurrentDDL", toConcurrentDDL), zap.Error(err)) return err } @@ -1259,7 +1269,22 @@ func (d *ddl) SwitchMDL(enable bool) error { } variable.EnableMDL.Store(enable) - logutil.BgLogger().Info("[ddl] switch metadata lock feature", zap.Bool("enable", enable), zap.Error(err)) + err = kv.RunInNewTxn(kv.WithInternalSourceType(context.Background(), kv.InternalTxnDDL), d.store, true, func(ctx context.Context, txn kv.Transaction) error { + m := meta.NewMeta(txn) + oldEnable, _, err := m.GetMetadataLock() + if err != nil { + return err + } + if oldEnable != enable { + err = m.SetMetadataLock(enable) + } + return err + }) + if err != nil { + logutil.BgLogger().Warn("[ddl] switch metadata lock feature", zap.Bool("enable", enable), zap.Error(err)) + return err + } + logutil.BgLogger().Info("[ddl] switch metadata lock feature", zap.Bool("enable", enable)) return nil } @@ -1304,6 +1329,12 @@ type RecoverSchemaInfo struct { // It should be called before any DDL that could break data consistency. // This provides a safe window for async commit and 1PC to commit with an old schema. func delayForAsyncCommit() { + if variable.EnableMDL.Load() { + // If metadata lock is enabled. The transaction of DDL must begin after prewrite of the async commit transaction, + // then the commit ts of DDL must be greater than the async commit transaction. In this case, the corresponding schema of the async commit transaction + // is correct. But if metadata lock is disabled, we can't ensure that the corresponding schema of the async commit transaction isn't change. + return + } cfg := config.GetGlobalConfig().TiKVClient.AsyncCommit duration := cfg.SafeWindow + cfg.AllowedClockDrift logutil.BgLogger().Info("sleep before DDL finishes to make async commit and 1PC safe", diff --git a/ddl/ddl_api.go b/ddl/ddl_api.go index 6111dd3fb4fdb..84e64dcb61d6b 100644 --- a/ddl/ddl_api.go +++ b/ddl/ddl_api.go @@ -2115,6 +2115,11 @@ func checkTableInfoValidWithStmt(ctx sessionctx.Context, tbInfo *model.TableInfo } } } + if tbInfo.TTLInfo != nil { + if err := checkTTLInfoValid(ctx, s.Table.Schema, tbInfo); err != nil { + return errors.Trace(err) + } + } return nil } @@ -2147,7 +2152,7 @@ func checkPartitionDefinitionConstraints(ctx sessionctx.Context, tbInfo *model.T // checkTableInfoValid uses to check table info valid. This is used to validate table info. func checkTableInfoValid(tblInfo *model.TableInfo) error { - _, err := tables.TableFromMeta(nil, tblInfo) + _, err := tables.TableFromMeta(autoid.NewAllocators(false), tblInfo) if err != nil { return err } @@ -2193,6 +2198,10 @@ func BuildTableInfoWithLike(ctx sessionctx.Context, ident ast.Ident, referTblInf copy(pi.Definitions, referTblInfo.Partition.Definitions) tblInfo.Partition = &pi } + + if referTblInfo.TTLInfo != nil { + tblInfo.TTLInfo = referTblInfo.TTLInfo.Clone() + } return &tblInfo, nil } @@ -2484,7 +2493,13 @@ func (d *ddl) createTableWithInfoPost( // Default tableAutoIncID base is 0. // If the first ID is expected to greater than 1, we need to do rebase. newEnd := tbInfo.AutoIncID - 1 - if err = d.handleAutoIncID(tbInfo, schemaID, newEnd, autoid.RowIDAllocType); err != nil { + var allocType autoid.AllocatorType + if tbInfo.SepAutoInc() { + allocType = autoid.AutoIncrementType + } else { + allocType = autoid.RowIDAllocType + } + if err = d.handleAutoIncID(tbInfo, schemaID, newEnd, allocType); err != nil { return errors.Trace(err) } } @@ -2709,6 +2724,14 @@ func (d *ddl) preSplitAndScatter(ctx sessionctx.Context, tbInfo *model.TableInfo func (d *ddl) FlashbackCluster(ctx sessionctx.Context, flashbackTS uint64) error { logutil.BgLogger().Info("[ddl] get flashback cluster job", zap.String("flashbackTS", oracle.GetTimeFromTS(flashbackTS).String())) + nowTS, err := ctx.GetStore().GetOracle().GetTimestamp(d.ctx, &oracle.Option{}) + if err != nil { + return errors.Trace(err) + } + gap := time.Until(oracle.GetTimeFromTS(nowTS)).Abs() + if gap > 1*time.Second { + ctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("Gap between local time and PD TSO is %s, please check PD/system time", gap)) + } job := &model.Job{ Type: model.ActionFlashbackCluster, BinlogInfo: &model.HistoryInfo{}, @@ -2720,9 +2743,10 @@ func (d *ddl) FlashbackCluster(ctx sessionctx.Context, flashbackTS uint64) error variable.On, /* tidb_enable_auto_analyze */ variable.Off, /* tidb_super_read_only */ 0, /* totalRegions */ - 0 /* newCommitTS */}, + 0, /* startTS */ + 0 /* commitTS */}, } - err := d.DoDDLJob(ctx, job) + err = d.DoDDLJob(ctx, job) err = d.callHookOnChanged(job, err) return errors.Trace(err) } @@ -3000,6 +3024,8 @@ func SetDirectPlacementOpt(placementSettings *model.PlacementSettings, placement // handleTableOptions updates tableInfo according to table options. func handleTableOptions(options []*ast.TableOption, tbInfo *model.TableInfo) error { + var handledTTLOrTTLEnable bool + for _, op := range options { switch op.Tp { case ast.TableOptionAutoIncrement: @@ -3036,6 +3062,23 @@ func handleTableOptions(options []*ast.TableOption, tbInfo *model.TableInfo) err tbInfo.PlacementPolicyRef = &model.PolicyRefInfo{ Name: model.NewCIStr(op.StrValue), } + case ast.TableOptionTTL, ast.TableOptionTTLEnable: + if handledTTLOrTTLEnable { + continue + } + + ttlInfo, ttlEnable, err := getTTLInfoInOptions(options) + if err != nil { + return err + } + // It's impossible that `ttlInfo` and `ttlEnable` are all nil, because we have met this option. + // After exclude the situation `ttlInfo == nil && ttlEnable != nil`, we could say `ttlInfo != nil` + if ttlInfo == nil && ttlEnable != nil { + return errors.Trace(dbterror.ErrSetTTLEnableForNonTTLTable) + } + + tbInfo.TTLInfo = ttlInfo + handledTTLOrTTLEnable = true } } shardingBits := shardingBits(tbInfo) @@ -3227,6 +3270,7 @@ func (d *ddl) AlterTable(ctx context.Context, sctx sessionctx.Context, stmt *ast } for _, spec := range validSpecs { var handledCharsetOrCollate bool + var handledTTLOrTTLEnable bool switch spec.Tp { case ast.AlterTableAddColumns: err = d.AddColumn(sctx, ident, spec) @@ -3332,7 +3376,7 @@ func (d *ddl) AlterTable(ctx context.Context, sctx sessionctx.Context, stmt *ast } err = d.ShardRowID(sctx, ident, opt.UintValue) case ast.TableOptionAutoIncrement: - err = d.RebaseAutoID(sctx, ident, int64(opt.UintValue), autoid.RowIDAllocType, opt.BoolValue) + err = d.RebaseAutoID(sctx, ident, int64(opt.UintValue), autoid.AutoIncrementType, opt.BoolValue) case ast.TableOptionAutoIdCache: if opt.UintValue > uint64(math.MaxInt64) { // TODO: Refine this error. @@ -3363,6 +3407,20 @@ func (d *ddl) AlterTable(ctx context.Context, sctx sessionctx.Context, stmt *ast Name: model.NewCIStr(opt.StrValue), } case ast.TableOptionEngine: + case ast.TableOptionTTL, ast.TableOptionTTLEnable: + var ttlInfo *model.TTLInfo + var ttlEnable *bool + + if handledTTLOrTTLEnable { + continue + } + ttlInfo, ttlEnable, err = getTTLInfoInOptions(spec.Options) + if err != nil { + return err + } + err = d.AlterTableTTLInfoOrEnable(sctx, ident, ttlInfo, ttlEnable) + + handledTTLOrTTLEnable = true default: err = dbterror.ErrUnsupportedAlterTableOption } @@ -3406,6 +3464,9 @@ func (d *ddl) AlterTable(ctx context.Context, sctx sessionctx.Context, stmt *ast case ast.AlterTableDisableKeys, ast.AlterTableEnableKeys: // Nothing to do now, see https://github.com/pingcap/tidb/issues/1051 // MyISAM specific + case ast.AlterTableRemoveTTL: + // the parser makes sure we have only one `ast.AlterTableRemoveTTL` in an alter statement + err = d.AlterTableRemoveTTL(sctx, ident) default: err = errors.Trace(dbterror.ErrUnsupportedAlterTableSpec) } @@ -3446,6 +3507,10 @@ func (d *ddl) RebaseAutoID(ctx sessionctx.Context, ident ast.Ident, newBase int6 actionType = model.ActionRebaseAutoRandomBase case autoid.RowIDAllocType: actionType = model.ActionRebaseAutoID + case autoid.AutoIncrementType: + actionType = model.ActionRebaseAutoID + default: + panic(fmt.Sprintf("unimplemented rebase autoid type %s", tp)) } if !force { @@ -4238,6 +4303,11 @@ func checkIsDroppableColumn(ctx sessionctx.Context, is infoschema.InfoSchema, sc if err != nil { return false, errors.Trace(err) } + // Check the column with TTL config + err = checkDropColumnWithTTLConfig(tblInfo, colName.L) + if err != nil { + return false, errors.Trace(err) + } // We don't support dropping column with PK handle covered now. if col.IsPKHandleColumn(tblInfo) { return false, dbterror.ErrUnsupportedPKHandle @@ -4724,6 +4794,13 @@ func GetModifiableColumnJob( return nil, errors.Trace(err) } + if t.Meta().TTLInfo != nil { + // the column referenced by TTL should be a time type + if t.Meta().TTLInfo.ColumnName.L == originalColName.L && !types.IsTypeTime(newCol.ColumnInfo.FieldType.GetType()) { + return nil, errors.Trace(dbterror.ErrUnsupportedColumnInTTLConfig.GenWithStackByArgs(newCol.ColumnInfo.Name.O)) + } + } + var newAutoRandBits uint64 if newAutoRandBits, err = checkAutoRandom(t.Meta(), col, specNewColumn); err != nil { return nil, errors.Trace(err) @@ -5145,6 +5222,11 @@ func (d *ddl) AlterTableAutoIDCache(ctx sessionctx.Context, ident ast.Ident, new if err != nil { return errors.Trace(err) } + tbInfo := tb.Meta() + if (newCache == 1 && tbInfo.AutoIdCache != 1) || + (newCache != 1 && tbInfo.AutoIdCache == 1) { + return fmt.Errorf("Can't Alter AUTO_ID_CACHE between 1 and non-1, the underlying implementation is different") + } job := &model.Job{ SchemaID: schema.ID, @@ -5262,6 +5344,98 @@ func (d *ddl) AlterTableSetTiFlashReplica(ctx sessionctx.Context, ident ast.Iden return errors.Trace(err) } +// AlterTableTTLInfoOrEnable submit ddl job to change table info according to the ttlInfo, or ttlEnable +// at least one of the `ttlInfo` or `ttlEnable` should be not nil. +// When `ttlInfo` is nil, and `ttlEnable` is not, it will use the original `.TTLInfo` in the table info and modify the +// `.Enable`. If the `.TTLInfo` in the table info is empty, this function will return an error. +// When `ttlInfo` is not nil, it simply submits the job with the `ttlInfo` and ignore the `ttlEnable`. +func (d *ddl) AlterTableTTLInfoOrEnable(ctx sessionctx.Context, ident ast.Ident, ttlInfo *model.TTLInfo, ttlEnable *bool) error { + is := d.infoCache.GetLatest() + schema, ok := is.SchemaByName(ident.Schema) + if !ok { + return infoschema.ErrDatabaseNotExists.GenWithStackByArgs(ident.Schema) + } + + tb, err := is.TableByName(ident.Schema, ident.Name) + if err != nil { + return errors.Trace(infoschema.ErrTableNotExists.GenWithStackByArgs(ident.Schema, ident.Name)) + } + + tblInfo := tb.Meta().Clone() + tableID := tblInfo.ID + tableName := tblInfo.Name.L + + var job *model.Job + if ttlInfo != nil { + tblInfo.TTLInfo = ttlInfo + err = checkTTLInfoValid(ctx, ident.Schema, tblInfo) + if err != nil { + return err + } + job = &model.Job{ + SchemaID: schema.ID, + TableID: tableID, + SchemaName: schema.Name.L, + TableName: tableName, + Type: model.ActionAlterTTLInfo, + BinlogInfo: &model.HistoryInfo{}, + Args: []interface{}{ttlInfo, ttlEnable}, + } + } else { + if tblInfo.TTLInfo == nil { + return errors.Trace(dbterror.ErrSetTTLEnableForNonTTLTable) + } + + job = &model.Job{ + SchemaID: schema.ID, + TableID: tableID, + SchemaName: schema.Name.L, + TableName: tableName, + Type: model.ActionAlterTTLInfo, + BinlogInfo: &model.HistoryInfo{}, + Args: []interface{}{ttlInfo, ttlEnable}, + } + } + + err = d.DoDDLJob(ctx, job) + err = d.callHookOnChanged(job, err) + return errors.Trace(err) +} + +func (d *ddl) AlterTableRemoveTTL(ctx sessionctx.Context, ident ast.Ident) error { + is := d.infoCache.GetLatest() + + schema, ok := is.SchemaByName(ident.Schema) + if !ok { + return infoschema.ErrDatabaseNotExists.GenWithStackByArgs(ident.Schema) + } + + tb, err := is.TableByName(ident.Schema, ident.Name) + if err != nil { + return errors.Trace(infoschema.ErrTableNotExists.GenWithStackByArgs(ident.Schema, ident.Name)) + } + + tblInfo := tb.Meta().Clone() + tableID := tblInfo.ID + tableName := tblInfo.Name.L + + if tblInfo.TTLInfo != nil { + job := &model.Job{ + SchemaID: schema.ID, + TableID: tableID, + SchemaName: schema.Name.L, + TableName: tableName, + Type: model.ActionAlterTTLRemove, + BinlogInfo: &model.HistoryInfo{}, + } + err = d.DoDDLJob(ctx, job) + err = d.callHookOnChanged(job, err) + return errors.Trace(err) + } + + return nil +} + func isTableTiFlashSupported(schema *model.DBInfo, tb table.Table) error { // Memory tables and system tables are not supported by TiFlash if util.IsMemOrSysDB(schema.Name.L) { diff --git a/ddl/ddl_worker.go b/ddl/ddl_worker.go index 956f4c805347f..9f90ad1039525 100644 --- a/ddl/ddl_worker.go +++ b/ddl/ddl_worker.go @@ -512,7 +512,7 @@ func (w *worker) registerMDLInfo(job *model.Job, ver int64) error { } // cleanMDLInfo cleans metadata lock info. -func cleanMDLInfo(pool *sessionPool, jobID int64) { +func cleanMDLInfo(pool *sessionPool, jobID int64, ec *clientv3.Client) { if !variable.EnableMDL.Load() { return } @@ -525,6 +525,13 @@ func cleanMDLInfo(pool *sessionPool, jobID int64) { if err != nil { logutil.BgLogger().Warn("unexpected error when clean mdl info", zap.Error(err)) } + if ec != nil { + path := fmt.Sprintf("%s/%d/", util.DDLAllSchemaVersionsByJob, jobID) + _, err = ec.Delete(context.Background(), path, clientv3.WithPrefix()) + if err != nil { + logutil.BgLogger().Warn("[ddl] delete versions failed", zap.Any("job id", jobID), zap.Error(err)) + } + } } // checkMDLInfo checks if metadata lock info exists. It means the schema is locked by some TiDBs if exists. @@ -1232,7 +1239,7 @@ func (w *worker) runDDLJob(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, case model.ActionTruncateTable: ver, err = onTruncateTable(d, t, job) case model.ActionRebaseAutoID: - ver, err = onRebaseRowIDType(d, t, job) + ver, err = onRebaseAutoIncrementIDType(d, t, job) case model.ActionRebaseAutoRandomBase: ver, err = onRebaseAutoRandomType(d, t, job) case model.ActionRenameTable: @@ -1287,6 +1294,10 @@ func (w *worker) runDDLJob(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, ver, err = w.onFlashbackCluster(d, t, job) case model.ActionMultiSchemaChange: ver, err = onMultiSchemaChange(w, d, t, job) + case model.ActionAlterTTLInfo: + ver, err = onTTLInfoChange(d, t, job) + case model.ActionAlterTTLRemove: + ver, err = onTTLInfoRemove(d, t, job) default: // Invalid job, cancel it. job.State = model.JobStateCancelled diff --git a/ddl/export_test.go b/ddl/export_test.go index 708b3474515c5..486390f9a6810 100644 --- a/ddl/export_test.go +++ b/ddl/export_test.go @@ -14,6 +14,42 @@ package ddl +import ( + "context" + + "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/types" +) + func SetBatchInsertDeleteRangeSize(i int) { batchInsertDeleteRangeSize = i } + +var NewCopContext4Test = newCopContext + +func FetchRowsFromCop4Test(copCtx *copContext, startKey, endKey kv.Key, startTS uint64, + batchSize int) ([]*indexRecord, bool, error) { + variable.SetDDLReorgBatchSize(int32(batchSize)) + task := &reorgBackfillTask{ + id: 1, + startKey: startKey, + endKey: endKey, + } + pool := newCopReqSenderPool(context.Background(), copCtx, startTS) + pool.adjustSize(1) + pool.tasksCh <- task + idxRec, _, _, done, err := pool.fetchRowColValsFromCop(*task) + pool.close() + return idxRec, done, err +} + +type IndexRecord4Test = *indexRecord + +func (i IndexRecord4Test) GetHandle() kv.Handle { + return i.handle +} + +func (i IndexRecord4Test) GetIndexValues() []types.Datum { + return i.vals +} diff --git a/ddl/failtest/fail_db_test.go b/ddl/failtest/fail_db_test.go index bde5e9b1b9569..d12c2182f9730 100644 --- a/ddl/failtest/fail_db_test.go +++ b/ddl/failtest/fail_db_test.go @@ -18,6 +18,7 @@ import ( "context" "fmt" "math/rand" + "strings" "sync/atomic" "testing" "time" @@ -532,6 +533,34 @@ func TestModifyColumn(t *testing.T) { tk.MustExec("drop table t, t2, t3, t4, t5") } +func TestIssue38699(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + //Test multi records + tk.MustExec("USE test") + tk.MustExec("set sql_mode=''") + tk.MustExec("DROP TABLE IF EXISTS t;") + tk.MustExec("CREATE TABLE t (a int)") + tk.MustExec("insert into t values (1000000000), (2000000)") + tk.MustExec("alter table t modify a tinyint") + result := tk.MustQuery("show warnings") + require.Len(t, result.Rows(), 1) + result.CheckWithFunc(testkit.Rows("Warning 1690 2 warnings with this error code"), func(actual []string, expected []interface{}) bool { + //Check if it starts with x warning(s) + return strings.EqualFold(actual[0], expected[0].(string)) && strings.EqualFold(actual[1], expected[1].(string)) && strings.HasPrefix(actual[2], expected[2].(string)) + }) + + //Test single record + tk.MustExec("DROP TABLE IF EXISTS t;") + tk.MustExec("CREATE TABLE t (a int)") + tk.MustExec("insert into t values (1000000000)") + tk.MustExec("alter table t modify a tinyint") + result = tk.MustQuery("show warnings") + require.Len(t, result.Rows(), 1) + result.Check(testkit.Rows("Warning 1690 constant 1000000000 overflows tinyint")) +} + func TestPartitionAddPanic(t *testing.T) { s := createFailDBSuite(t) tk := testkit.NewTestKit(t, s.store) diff --git a/ddl/fktest/BUILD.bazel b/ddl/fktest/BUILD.bazel new file mode 100644 index 0000000000000..a2452785fcaa8 --- /dev/null +++ b/ddl/fktest/BUILD.bazel @@ -0,0 +1,29 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "fktest_test", + srcs = [ + "foreign_key_test.go", + "main_test.go", + ], + flaky = True, + shard_count = 4, + deps = [ + "//config", + "//ddl", + "//domain", + "//infoschema", + "//meta", + "//meta/autoid", + "//parser/auth", + "//parser/model", + "//planner/core", + "//sessiontxn", + "//testkit", + "//testkit/testsetup", + "//util/dbterror", + "@com_github_stretchr_testify//require", + "@com_github_tikv_client_go_v2//tikv", + "@org_uber_go_goleak//:goleak", + ], +) diff --git a/ddl/fktest/foreign_key_test.go b/ddl/fktest/foreign_key_test.go new file mode 100644 index 0000000000000..911f86f49ec85 --- /dev/null +++ b/ddl/fktest/foreign_key_test.go @@ -0,0 +1,1546 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ddl_test + +import ( + "bytes" + "context" + "fmt" + "testing" + + "github.com/pingcap/tidb/domain" + "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/meta" + "github.com/pingcap/tidb/parser/auth" + "github.com/pingcap/tidb/parser/model" + plannercore "github.com/pingcap/tidb/planner/core" + "github.com/pingcap/tidb/sessiontxn" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/util/dbterror" + "github.com/stretchr/testify/require" +) + +func TestCreateTableWithForeignKeyMetaInfo(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int,b int as (a) virtual);") + tk.MustExec("create database test2") + tk.MustExec("use test2") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id) ON UPDATE RESTRICT ON DELETE CASCADE)") + tb1Info := getTableInfo(t, dom, "test", "t1") + tb2Info := getTableInfo(t, dom, "test2", "t2") + require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test", "t1"))) + require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) + require.Equal(t, 0, len(tb1Info.ForeignKeys)) + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("t2"), + ChildFKName: model.NewCIStr("fk_b"), + }, *tb1ReferredFKs[0]) + tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 1, len(tb2Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_b"), + RefSchema: model.NewCIStr("test"), + RefTable: model.NewCIStr("t1"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("b")}, + OnDelete: 2, + OnUpdate: 1, + State: model.StatePublic, + Version: 1, + }, *tb2Info.ForeignKeys[0]) + // Auto create index for foreign key usage. + require.Equal(t, 1, len(tb2Info.Indices)) + require.Equal(t, "fk_b", tb2Info.Indices[0].Name.L) + require.Equal(t, "`test2`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test`.`t1` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT", tb2Info.ForeignKeys[0].String("test2", "t2")) + + tk.MustExec("create table t3 (id int, b int, index idx_b(b), foreign key fk_b(b) references t2(id) ON UPDATE SET NULL ON DELETE NO ACTION)") + tb2Info = getTableInfo(t, dom, "test2", "t2") + tb3Info := getTableInfo(t, dom, "test2", "t3") + require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) + require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t3"))) + require.Equal(t, 1, len(tb2Info.ForeignKeys)) + tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test2", "t2") + require.Equal(t, 1, len(tb2ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("t3"), + ChildFKName: model.NewCIStr("fk_b"), + }, *tb2ReferredFKs[0]) + tb3ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t3") + require.Equal(t, 0, len(tb3ReferredFKs)) + require.Equal(t, 1, len(tb3Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_b"), + RefSchema: model.NewCIStr("test2"), + RefTable: model.NewCIStr("t2"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("b")}, + OnDelete: 4, + OnUpdate: 3, + State: model.StatePublic, + Version: 1, + }, *tb3Info.ForeignKeys[0]) + require.Equal(t, 1, len(tb3Info.Indices)) + require.Equal(t, "idx_b", tb3Info.Indices[0].Name.L) + require.Equal(t, "`test2`.`t3`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `t2` (`id`) ON DELETE NO ACTION ON UPDATE SET NULL", tb3Info.ForeignKeys[0].String("test2", "t3")) + + tk.MustExec("create table t5 (id int key, a int, b int, foreign key (a) references t5(id));") + tb5Info := getTableInfo(t, dom, "test2", "t5") + require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t5"))) + require.Equal(t, 1, len(tb5Info.ForeignKeys)) + tb5ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t5") + require.Equal(t, 1, len(tb5ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("t5"), + ChildFKName: model.NewCIStr("fk_1"), + }, *tb5ReferredFKs[0]) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_1"), + RefSchema: model.NewCIStr("test2"), + RefTable: model.NewCIStr("t5"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("a")}, + State: model.StatePublic, + Version: 1, + }, *tb5Info.ForeignKeys[0]) + require.Equal(t, 1, len(tb5Info.Indices)) + require.Equal(t, "fk_1", tb5Info.Indices[0].Name.L) + require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test", "t1"))) + require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) + require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t3"))) + require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t5"))) + + tk.MustExec("set @@global.tidb_enable_foreign_key=0") + tk.MustExec("drop database test2") + require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) + require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t3"))) + require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t5"))) +} + +func TestCreateTableWithForeignKeyMetaInfo2(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("create database test2") + tk.MustExec("set @@foreign_key_checks=0") + tk.MustExec("use test2") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id) ON UPDATE RESTRICT ON DELETE CASCADE)") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int, b int as (a) virtual);") + tb1Info := getTableInfo(t, dom, "test", "t1") + tb2Info := getTableInfo(t, dom, "test2", "t2") + require.Equal(t, 0, len(tb1Info.ForeignKeys)) + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("t2"), + ChildFKName: model.NewCIStr("fk_b"), + }, *tb1ReferredFKs[0]) + tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 1, len(tb2Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_b"), + RefSchema: model.NewCIStr("test"), + RefTable: model.NewCIStr("t1"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("b")}, + OnDelete: 2, + OnUpdate: 1, + State: model.StatePublic, + Version: 1, + }, *tb2Info.ForeignKeys[0]) + // Auto create index for foreign key usage. + require.Equal(t, 1, len(tb2Info.Indices)) + require.Equal(t, "fk_b", tb2Info.Indices[0].Name.L) + require.Equal(t, "`test2`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test`.`t1` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT", tb2Info.ForeignKeys[0].String("test2", "t2")) + + tk.MustExec("create table t3 (id int key, a int, foreign key fk_a(a) references test.t1(id) ON DELETE CASCADE ON UPDATE RESTRICT, foreign key fk_a2(a) references test2.t2(id))") + tb1Info = getTableInfo(t, dom, "test", "t1") + tb3Info := getTableInfo(t, dom, "test", "t3") + require.Equal(t, 0, len(tb1Info.ForeignKeys)) + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 2, len(tb1ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test"), + ChildTable: model.NewCIStr("t3"), + ChildFKName: model.NewCIStr("fk_a"), + }, *tb1ReferredFKs[0]) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("t2"), + ChildFKName: model.NewCIStr("fk_b"), + }, *tb1ReferredFKs[1]) + tb3ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t3") + require.Equal(t, 0, len(tb3ReferredFKs)) + require.Equal(t, 2, len(tb3Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_a"), + RefSchema: model.NewCIStr("test"), + RefTable: model.NewCIStr("t1"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("a")}, + OnDelete: 2, + OnUpdate: 1, + State: model.StatePublic, + Version: 1, + }, *tb3Info.ForeignKeys[0]) + require.Equal(t, model.FKInfo{ + ID: 2, + Name: model.NewCIStr("fk_a2"), + RefSchema: model.NewCIStr("test2"), + RefTable: model.NewCIStr("t2"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("a")}, + State: model.StatePublic, + Version: 1, + }, *tb3Info.ForeignKeys[1]) + // Auto create index for foreign key usage. + require.Equal(t, 1, len(tb3Info.Indices)) + require.Equal(t, "fk_a", tb3Info.Indices[0].Name.L) + require.Equal(t, "`test`.`t3`, CONSTRAINT `fk_a` FOREIGN KEY (`a`) REFERENCES `t1` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT", tb3Info.ForeignKeys[0].String("test", "t3")) + require.Equal(t, "`test`.`t3`, CONSTRAINT `fk_a2` FOREIGN KEY (`a`) REFERENCES `test2`.`t2` (`id`)", tb3Info.ForeignKeys[1].String("test", "t3")) + + tk.MustExec("set @@foreign_key_checks=0") + tk.MustExec("drop table test2.t2") + tb1Info = getTableInfo(t, dom, "test", "t1") + tb3Info = getTableInfo(t, dom, "test", "t3") + require.Equal(t, 0, len(tb1Info.ForeignKeys)) + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test"), + ChildTable: model.NewCIStr("t3"), + ChildFKName: model.NewCIStr("fk_a"), + }, *tb1ReferredFKs[0]) + tb3ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t3") + require.Equal(t, 0, len(tb3ReferredFKs)) + require.Equal(t, 2, len(tb3Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_a"), + RefSchema: model.NewCIStr("test"), + RefTable: model.NewCIStr("t1"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("a")}, + OnDelete: 2, + OnUpdate: 1, + State: model.StatePublic, + Version: 1, + }, *tb3Info.ForeignKeys[0]) + require.Equal(t, model.FKInfo{ + ID: 2, + Name: model.NewCIStr("fk_a2"), + RefSchema: model.NewCIStr("test2"), + RefTable: model.NewCIStr("t2"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("a")}, + State: model.StatePublic, + Version: 1, + }, *tb3Info.ForeignKeys[1]) +} + +func TestCreateTableWithForeignKeyMetaInfo3(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int, b int as (a) virtual);") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id))") + tk.MustExec("create table t3 (id int key, b int, foreign key fk_b(b) references test.t1(id))") + tk.MustExec("create table t4 (id int key, b int, foreign key fk_b(b) references test.t1(id))") + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + tk.MustExec("drop table t3") + tk.MustExec("create table t5 (id int key, b int, foreign key fk_b(b) references test.t1(id))") + require.Equal(t, 3, len(tb1ReferredFKs)) + require.Equal(t, "t2", tb1ReferredFKs[0].ChildTable.L) + require.Equal(t, "t3", tb1ReferredFKs[1].ChildTable.L) + require.Equal(t, "t4", tb1ReferredFKs[2].ChildTable.L) +} + +func TestCreateTableWithForeignKeyPrivilegeCheck(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + tk.MustExec("create user 'u1'@'%' identified by '';") + tk.MustExec("grant create on *.* to 'u1'@'%';") + tk.MustExec("create table t1 (id int key);") + + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk2.Session().Auth(&auth.UserIdentity{Username: "u1", Hostname: "localhost", CurrentUser: true, AuthUsername: "u1", AuthHostname: "%"}, nil, []byte("012345678901234567890")) + err := tk2.ExecToErr("create table t2 (a int, foreign key fk(a) references t1(id));") + require.Error(t, err) + require.Equal(t, "[planner:1142]REFERENCES command denied to user 'u1'@'%' for table 't1'", err.Error()) + + tk.MustExec("grant references on test.t1 to 'u1'@'%';") + tk2.MustExec("create table t2 (a int, foreign key fk(a) references t1(id));") + tk2.MustExec("create table t3 (id int key)") + err = tk2.ExecToErr("create table t4 (a int, foreign key fk(a) references t1(id), foreign key (a) references t3(id));") + require.Error(t, err) + require.Equal(t, "[planner:1142]REFERENCES command denied to user 'u1'@'%' for table 't3'", err.Error()) + + tk.MustExec("grant references on test.t3 to 'u1'@'%';") + tk2.MustExec("create table t4 (a int, foreign key fk(a) references t1(id), foreign key (a) references t3(id));") +} + +func TestRenameTableWithForeignKeyMetaInfo(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("create database test2") + tk.MustExec("create database test3") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))") + tk.MustExec("rename table test.t1 to test2.t2") + // check the schema diff + diff := getLatestSchemaDiff(t, tk) + require.Equal(t, model.ActionRenameTable, diff.Type) + require.Equal(t, 0, len(diff.AffectedOpts)) + tk.MustQuery("show create table test2.t2").Check(testkit.Rows("t2 CREATE TABLE `t2` (\n" + + " `id` int(11) NOT NULL,\n" + + " `a` int(11) DEFAULT NULL,\n" + + " `b` int(11) DEFAULT NULL,\n" + + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + + " KEY `fk` (`a`),\n" + + " CONSTRAINT `fk` FOREIGN KEY (`a`) REFERENCES `test2`.`t2` (`id`)\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) + tblInfo := getTableInfo(t, dom, "test2", "t2") + tbReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t2") + require.Equal(t, 1, len(tblInfo.ForeignKeys)) + require.Equal(t, 1, len(tbReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("t2"), + ChildFKName: model.NewCIStr("fk"), + }, *tbReferredFKs[0]) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk"), + RefSchema: model.NewCIStr("test2"), + RefTable: model.NewCIStr("t2"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("a")}, + State: model.StatePublic, + Version: 1, + }, *tblInfo.ForeignKeys[0]) + + tk.MustExec("drop table test2.t2") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int, b int as (a) virtual);") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id))") + tk.MustExec("use test2") + tk.MustExec("rename table test.t2 to test2.tt2") + // check the schema diff + diff = getLatestSchemaDiff(t, tk) + require.Equal(t, model.ActionRenameTable, diff.Type) + require.Equal(t, 0, len(diff.AffectedOpts)) + tb1Info := getTableInfo(t, dom, "test", "t1") + tb2Info := getTableInfo(t, dom, "test2", "tt2") + require.Equal(t, 0, len(tb1Info.ForeignKeys)) + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("tt2"), + ChildFKName: model.NewCIStr("fk_b"), + }, *tb1ReferredFKs[0]) + tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "tt2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 1, len(tb2Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_b"), + RefSchema: model.NewCIStr("test"), + RefTable: model.NewCIStr("t1"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("b")}, + State: model.StatePublic, + Version: 1, + }, *tb2Info.ForeignKeys[0]) + // Auto create index for foreign key usage. + require.Equal(t, 1, len(tb2Info.Indices)) + require.Equal(t, "fk_b", tb2Info.Indices[0].Name.L) + require.Equal(t, "`test2`.`tt2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test`.`t1` (`id`)", tb2Info.ForeignKeys[0].String("test2", "tt2")) + + tk.MustExec("rename table test.t1 to test3.tt1") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test3", "tt1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) + // check the schema diff + diff = getLatestSchemaDiff(t, tk) + require.Equal(t, model.ActionRenameTable, diff.Type) + require.Equal(t, 1, len(diff.AffectedOpts)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("tt2"), + ChildFKName: model.NewCIStr("fk_b"), + }, *tb1ReferredFKs[0]) + tbl2Info := getTableInfo(t, dom, "test2", "tt2") + tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test2", "tt2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys)) + require.Equal(t, model.FKInfo{ + ID: 1, + Name: model.NewCIStr("fk_b"), + RefSchema: model.NewCIStr("test3"), + RefTable: model.NewCIStr("tt1"), + RefCols: []model.CIStr{model.NewCIStr("id")}, + Cols: []model.CIStr{model.NewCIStr("b")}, + State: model.StatePublic, + Version: 1, + }, *tbl2Info.ForeignKeys[0]) + tk.MustQuery("show create table test2.tt2").Check(testkit.Rows("tt2 CREATE TABLE `tt2` (\n" + + " `id` int(11) NOT NULL,\n" + + " `b` int(11) DEFAULT NULL,\n" + + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + + " KEY `fk_b` (`b`),\n" + + " CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test3`.`tt1` (`id`)\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) +} + +func TestCreateTableWithForeignKeyDML(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int);") + tk.MustExec("begin") + tk.MustExec("insert into t1 values (1, 1)") + tk.MustExec("update t1 set a = 2 where id = 1") + + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk2.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id))") + + tk.MustExec("commit") +} + +func TestCreateTableWithForeignKeyError(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("use test") + + cases := []struct { + prepare []string + refer string + create string + err string + }{ + { + refer: "create table t1 (id int, a int, b int);", + create: "create table t2 (a int, b int, foreign key fk_b(b) references T_unknown(b));", + err: "[schema:1824]Failed to open the referenced table 'T_unknown'", + }, + { + refer: "create table t1 (id int, a int, b int);", + create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(c_unknown));", + err: "[schema:3734]Failed to add the foreign key constraint. Missing column 'c_unknown' for constraint 'fk_b' in the referenced table 't1'", + }, + { + refer: "create table t1 (id int key, a int, b int);", + create: "create table t2 (a int, b int, foreign key fk(c_unknown) references t1(id));", + err: "[ddl:1072]Key column 'c_unknown' doesn't exist in table", + }, + { + refer: "create table t1 (id int, a int, b int);", + create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", + }, + { + refer: "create table t1 (id int, a int, b int not null, index(b));", + create: "create table t2 (a int, b int not null, foreign key fk_b(b) references t1(b) on update set null);", + err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", + }, + { + refer: "create table t1 (id int, a int, b int not null, index(b));", + create: "create table t2 (a int, b int not null, foreign key fk_b(b) references t1(b) on delete set null);", + err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", + }, + { + refer: "create table t1 (id int key, a int, b int as (a) virtual, index(b));", + create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", + err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", + }, + { + refer: "create table t1 (id int key, a int, b int, index(b));", + create: "create table t2 (a int, b int as (a) virtual, foreign key fk_b(b) references t1(b));", + err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", + }, + { + refer: "create table t1 (id int key, a int);", + create: "create table t2 (a int, b varchar(10), foreign key fk(b) references t1(id));", + err: "[ddl:3780]Referencing column 'b' and referenced column 'id' in foreign key constraint 'fk' are incompatible.", + }, + { + refer: "create table t1 (id int key, a int not null, index(a));", + create: "create table t2 (a int, b int unsigned, foreign key fk_b(b) references t1(a));", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + refer: "create table t1 (id int key, a bigint, index(a));", + create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(a));", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + refer: "create table t1 (id int key, a varchar(10) charset utf8, index(a));", + create: "create table t2 (a int, b varchar(10) charset utf8mb4, foreign key fk_b(b) references t1(a));", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + refer: "create table t1 (id int key, a varchar(10) collate utf8_bin, index(a));", + create: "create table t2 (a int, b varchar(10) collate utf8mb4_bin, foreign key fk_b(b) references t1(a));", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + refer: "create table t1 (id int key, a varchar(10));", + create: "create table t2 (a int, b varchar(10), foreign key fk_b(b) references t1(a));", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", + }, + { + refer: "create table t1 (id int key, a varchar(10), index (a(5)));", + create: "create table t2 (a int, b varchar(10), foreign key fk_b(b) references t1(a));", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", + }, + { + refer: "create table t1 (id int key, a int, index(a));", + create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(id, a));", + err: "[schema:1239]Incorrect foreign key definition for 'fk_b': Key reference and table reference don't match", + }, + { + create: "create table t2 (a int key, foreign key (a) references t2(a));", + err: "[schema:1215]Cannot add foreign key constraint", + }, + { + create: "create table t2 (a int, b int, index(a,b), index(b,a), foreign key (a,b) references t2(a,b));", + err: "[schema:1215]Cannot add foreign key constraint", + }, + { + create: "create table t2 (a int, b int, index(a,b), foreign key (a,b) references t2(b,a));", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_1' in the referenced table 't2'", + }, + { + prepare: []string{ + "set @@foreign_key_checks=0;", + "create table t2 (a int, b int, index(a), foreign key (a) references t1(id));", + }, + create: "create table t1 (id int, a int);", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_1' in the referenced table 't1'", + }, + { + prepare: []string{ + "set @@foreign_key_checks=0;", + "create table t2 (a int, b int, index(a), foreign key (a) references t1(id));", + }, + create: "create table t1 (id bigint key, a int);", + err: "[ddl:3780]Referencing column 'a' and referenced column 'id' in foreign key constraint 'fk_1' are incompatible.", + }, + { + // foreign key is not support in temporary table. + refer: "create temporary table t1 (id int key, b int, index(b))", + create: "create table t2 (a int, b int, foreign key fk(b) references t1(b))", + err: "[schema:1824]Failed to open the referenced table 't1'", + }, + { + // foreign key is not support in temporary table. + refer: "create global temporary table t1 (id int key, b int, index(b)) on commit delete rows", + create: "create table t2 (a int, b int, foreign key fk(b) references t1(b))", + err: "[schema:1215]Cannot add foreign key constraint", + }, + { + // foreign key is not support in temporary table. + refer: "create table t1 (id int key, b int, index(b))", + create: "create temporary table t2 (a int, b int, foreign key fk(b) references t1(b))", + err: "[schema:1215]Cannot add foreign key constraint", + }, + { + // foreign key is not support in temporary table. + refer: "create table t1 (id int key, b int, index(b))", + create: "create global temporary table t2 (a int, b int, foreign key fk(b) references t1(b)) on commit delete rows", + err: "[schema:1215]Cannot add foreign key constraint", + }, + { + create: "create table t1 (a int, foreign key ``(a) references t1(a));", + err: "[ddl:1280]Incorrect index name ''", + }, + { + create: "create table t1 (a int, constraint `` foreign key (a) references t1(a));", + err: "[ddl:1280]Incorrect index name ''", + }, + { + create: "create table t1 (a int, constraint `fk` foreign key (a,a) references t1(a, b));", + err: "[schema:1060]Duplicate column name 'a'", + }, + { + refer: "create table t1(a int, b int, index(a,b));", + create: "create table t2 (a int, b int, foreign key (a,b) references t1(a,a));", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_1' in the referenced table 't1'", + }, + { + refer: "create table t1 (id int key, b int, index(b))", + create: "create table t2 (a int, b int, index fk_1(a), foreign key (b) references t1(b));", + err: "[ddl:1061]duplicate key name fk_1", + }, + { + refer: "create table t1 (id int key);", + create: "create table t2 (id int key, foreign key name5678901234567890123456789012345678901234567890123456789012345(id) references t1(id));", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + { + refer: "create table t1 (id int key);", + create: "create table t2 (id int key, constraint name5678901234567890123456789012345678901234567890123456789012345 foreign key (id) references t1(id));", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + { + create: "create table t2 (id int key, constraint fk foreign key (id) references name5678901234567890123456789012345678901234567890123456789012345.t1(id));", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + { + prepare: []string{ + "set @@foreign_key_checks=0;", + }, + create: "create table t2 (id int key, constraint fk foreign key (id) references name5678901234567890123456789012345678901234567890123456789012345(id));", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + { + prepare: []string{ + "set @@foreign_key_checks=0;", + }, + create: "create table t2 (id int key, constraint fk foreign key (id) references t1(name5678901234567890123456789012345678901234567890123456789012345));", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + } + for _, ca := range cases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + tk.MustExec("set @@foreign_key_checks=1") + for _, sql := range ca.prepare { + tk.MustExec(sql) + } + if ca.refer != "" { + tk.MustExec(ca.refer) + } + err := tk.ExecToErr(ca.create) + require.Error(t, err, ca.create) + require.Equal(t, ca.err, err.Error(), ca.create) + } + + passCases := [][]string{ + { + "create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))", + }, + { + "create table t1 (id int key, b int not null, index(b))", + "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", + }, + { + "create table t1 (id int key, a varchar(10), index(a));", + "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", + }, + { + "create table t1 (id int key, a decimal(10,5), index(a));", + "create table t2 (a int, b decimal(20, 10), foreign key fk_b(b) references t1(a));", + }, + { + "create table t1 (id int key, a varchar(10), index (a(10)));", + "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", + }, + { + "set @@foreign_key_checks=0;", + "create table t2 (a int, b int, foreign key fk_b(b) references t_unknown(b));", + "set @@foreign_key_checks=1;", + }, + { + "create table t2 (a int, b int, index(a,b), index(b,a), foreign key (a,b) references t2(b,a));", + }, + { + "create table t1 (a int key, b int, index(b))", + "create table t2 (a int, b int, foreign key (a) references t1(a), foreign key (b) references t1(b));", + }, + { + "create table t1 (id int key);", + "create table t2 (id int key, foreign key name567890123456789012345678901234567890123456789012345678901234(id) references t1(id));", + }, + } + for _, ca := range passCases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + for _, sql := range ca { + tk.MustExec(sql) + } + } +} + +func TestModifyColumnWithForeignKey(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + + tk.MustExec("create table t1 (id int key, b varchar(10), index(b));") + tk.MustExec("create table t2 (a varchar(10), constraint fk foreign key (a) references t1(b));") + tk.MustExec("insert into t1 values (1, '123456789');") + tk.MustExec("insert into t2 values ('123456789');") + tk.MustGetErrMsg("alter table t1 modify column b varchar(5);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") + tk.MustGetErrMsg("alter table t1 modify column b bigint;", "[ddl:3780]Referencing column 'a' and referenced column 'b' in foreign key constraint 'fk' are incompatible.") + tk.MustExec("alter table t1 modify column b varchar(20);") + tk.MustGetErrMsg("alter table t1 modify column b varchar(10);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") + tk.MustExec("alter table t2 modify column a varchar(20);") + tk.MustExec("alter table t2 modify column a varchar(21);") + tk.MustGetErrMsg("alter table t2 modify column a varchar(5);", "[ddl:1832]Cannot change column 'a': used in a foreign key constraint 'fk'") + tk.MustGetErrMsg("alter table t2 modify column a bigint;", "[ddl:3780]Referencing column 'a' and referenced column 'b' in foreign key constraint 'fk' are incompatible.") + + tk.MustExec("drop table t2") + tk.MustExec("drop table t1") + tk.MustExec("create table t1 (id int key, b decimal(10, 5), index(b));") + tk.MustExec("create table t2 (a decimal(10, 5), constraint fk foreign key (a) references t1(b));") + tk.MustExec("insert into t1 values (1, 12345.67891);") + tk.MustExec("insert into t2 values (12345.67891);") + tk.MustGetErrMsg("alter table t1 modify column b decimal(10, 6);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") + tk.MustGetErrMsg("alter table t1 modify column b decimal(10, 3);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") + tk.MustGetErrMsg("alter table t1 modify column b decimal(5, 2);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") + tk.MustGetErrMsg("alter table t1 modify column b decimal(20, 10);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") + tk.MustGetErrMsg("alter table t2 modify column a decimal(30, 15);", "[ddl:1832]Cannot change column 'a': used in a foreign key constraint 'fk'") + tk.MustGetErrMsg("alter table t2 modify column a decimal(5, 2);", "[ddl:1832]Cannot change column 'a': used in a foreign key constraint 'fk'") +} + +func TestDropChildTableForeignKeyMetaInfo(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int, b int, CONSTRAINT fk foreign key (a) references t1(id))") + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + tk.MustExec("drop table t1") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 0, len(tb1ReferredFKs)) + + tk.MustExec("create table t1 (id int key, b int, index(b))") + tk.MustExec("create table t2 (a int, b int, foreign key fk (a) references t1(b));") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + tk.MustExec("drop table t2") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 0, len(tb1ReferredFKs)) +} + +func TestDropForeignKeyMetaInfo(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, a int, b int, CONSTRAINT fk foreign key (a) references t1(id))") + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + tk.MustExec("alter table t1 drop foreign key fk") + tbl1Info := getTableInfo(t, dom, "test", "t1") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 0, len(tbl1Info.ForeignKeys)) + require.Equal(t, 0, len(tb1ReferredFKs)) + + tk.MustExec("drop table t1") + tk.MustExec("create table t1 (id int key, b int, index(b))") + tk.MustExec("create table t2 (a int, b int, foreign key fk (a) references t1(b));") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + tk.MustExec("alter table t2 drop foreign key fk") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 0, len(tb1ReferredFKs)) + tbl2Info := getTableInfo(t, dom, "test", "t2") + require.Equal(t, 0, len(tbl2Info.ForeignKeys)) +} + +func TestTruncateOrDropTableWithForeignKeyReferred(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("use test") + + cases := []struct { + prepares []string + tbl string + truncateErr string + dropErr string + }{ + { + prepares: []string{ + "create table t1 (id int key, b int not null, index(b))", + "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", + }, + tbl: "t1", + truncateErr: "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk_b`)", + dropErr: "[ddl:3730]Cannot drop table 't1' referenced by a foreign key constraint 'fk_b' on table 't2'.", + }, + { + prepares: []string{ + "create table t1 (id int key, a varchar(10), index(a));", + "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", + }, + tbl: "t1", + truncateErr: "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk_b`)", + dropErr: "[ddl:3730]Cannot drop table 't1' referenced by a foreign key constraint 'fk_b' on table 't2'.", + }, + { + prepares: []string{ + "create table t1 (id int key, a varchar(10), index (a(10)));", + "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", + }, + tbl: "t1", + truncateErr: "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk_b`)", + dropErr: "[ddl:3730]Cannot drop table 't1' referenced by a foreign key constraint 'fk_b' on table 't2'.", + }, + } + + for _, ca := range cases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + for _, sql := range ca.prepares { + tk.MustExec(sql) + } + truncateSQL := fmt.Sprintf("truncate table %v", ca.tbl) + tk.MustExec("set @@foreign_key_checks=1;") + err := tk.ExecToErr(truncateSQL) + require.Error(t, err) + require.Equal(t, ca.truncateErr, err.Error()) + dropSQL := fmt.Sprintf("drop table %v", ca.tbl) + err = tk.ExecToErr(dropSQL) + require.Error(t, err) + require.Equal(t, ca.dropErr, err.Error()) + + tk.MustExec("set @@foreign_key_checks=0;") + tk.MustExec(truncateSQL) + } + passCases := [][]string{ + { + "create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))", + "truncate table t1", + "drop table t1", + }, + { + "create table t1 (id int key, a varchar(10), index (a(10)));", + "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", + "drop table t1, t2", + }, + { + "set @@foreign_key_checks=0;", + "create table t1 (id int key, a varchar(10), index (a(10)));", + "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", + "truncate table t1", + "drop table t1", + }, + } + for _, ca := range passCases { + tk.MustExec("drop table if exists t1, t2") + tk.MustExec("set @@foreign_key_checks=1;") + for _, sql := range ca { + tk.MustExec(sql) + } + } +} + +func TestDropTableWithForeignKeyReferred(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + + tk.MustExec("create table t1 (id int key, b int, index(b));") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references t1(id));") + tk.MustExec("create table t3 (id int key, b int, foreign key fk_b(b) references t2(id));") + err := tk.ExecToErr("drop table if exists t1,t2;") + require.Error(t, err) + require.Equal(t, "[ddl:3730]Cannot drop table 't2' referenced by a foreign key constraint 'fk_b' on table 't3'.", err.Error()) + tk.MustQuery("show tables").Check(testkit.Rows("t1", "t2", "t3")) +} + +func TestDropIndexNeededInForeignKey(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("use test") + + cases := []struct { + prepares []string + drops []string + err string + }{ + { + prepares: []string{ + "create table t1 (id int key, b int, index idx (b))", + "create table t2 (a int, b int, index idx (b), foreign key fk_b(b) references t1(b));", + }, + drops: []string{ + "alter table t1 drop index idx", + "alter table t2 drop index idx", + }, + err: "[ddl:1553]Cannot drop index 'idx': needed in a foreign key constraint", + }, + { + prepares: []string{ + "create table t1 (id int, b int, index idx (id, b))", + "create table t2 (a int, b int, index idx (b, a), foreign key fk_b(b) references t1(id));", + }, + drops: []string{ + "alter table t1 drop index idx", + "alter table t2 drop index idx", + }, + err: "[ddl:1553]Cannot drop index 'idx': needed in a foreign key constraint", + }, + } + + for _, ca := range cases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + for _, sql := range ca.prepares { + tk.MustExec(sql) + } + for _, drop := range ca.drops { + // even disable foreign key check, still can't drop the index used by foreign key. + tk.MustExec("set @@foreign_key_checks=0;") + err := tk.ExecToErr(drop) + require.Error(t, err) + require.Equal(t, ca.err, err.Error()) + tk.MustExec("set @@foreign_key_checks=1;") + err = tk.ExecToErr(drop) + require.Error(t, err) + require.Equal(t, ca.err, err.Error()) + } + } + passCases := [][]string{ + { + "create table t1 (id int key, b int, index idxb (b))", + "create table t2 (a int, b int key, index idxa (a),index idxb (b), foreign key fk_b(b) references t1(id));", + "alter table t1 drop index idxb", + "alter table t2 drop index idxa", + "alter table t2 drop index idxb", + }, + { + "create table t1 (id int key, b int, index idxb (b), unique index idx(b, id))", + "create table t2 (a int, b int key, index idx (b, a),index idxb (b), index idxab(a, b), foreign key fk_b(b) references t1(b));", + "alter table t1 drop index idxb", + "alter table t1 add index idxb (b)", + "alter table t1 drop index idx", + "alter table t2 drop index idx", + "alter table t2 add index idx (b, a)", + "alter table t2 drop index idxb", + "alter table t2 drop index idxab", + }, + } + tk.MustExec("set @@foreign_key_checks=1;") + for _, ca := range passCases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + for _, sql := range ca { + tk.MustExec(sql) + } + } +} + +func getTableInfo(t *testing.T, dom *domain.Domain, db, tb string) *model.TableInfo { + err := dom.Reload() + require.NoError(t, err) + is := dom.InfoSchema() + tbl, err := is.TableByName(model.NewCIStr(db), model.NewCIStr(tb)) + require.NoError(t, err) + _, exist := is.TableByID(tbl.Meta().ID) + require.True(t, exist) + return tbl.Meta() +} + +func getTableInfoReferredForeignKeys(t *testing.T, dom *domain.Domain, db, tb string) []*model.ReferredFKInfo { + err := dom.Reload() + require.NoError(t, err) + return dom.InfoSchema().GetTableReferredForeignKeys(db, tb) +} + +func TestDropColumnWithForeignKey(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + + tk.MustExec("create table t1 (id int key, a int, b int, index(b), CONSTRAINT fk foreign key (a) references t1(b))") + tk.MustGetErrMsg("alter table t1 drop column a;", "[ddl:1828]Cannot drop column 'a': needed in a foreign key constraint 'fk'") + tk.MustGetErrMsg("alter table t1 drop column b;", "[ddl:1829]Cannot drop column 'b': needed in a foreign key constraint 'fk' of table 't1'") + + tk.MustExec("drop table t1") + tk.MustExec("create table t1 (id int key, b int, index(b));") + tk.MustExec("create table t2 (a int, b int, constraint fk foreign key (a) references t1(b));") + tk.MustGetErrMsg("alter table t1 drop column b;", "[ddl:1829]Cannot drop column 'b': needed in a foreign key constraint 'fk' of table 't2'") + tk.MustGetErrMsg("alter table t2 drop column a;", "[ddl:1828]Cannot drop column 'a': needed in a foreign key constraint 'fk'") +} + +func TestRenameColumnWithForeignKeyMetaInfo(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + + tk.MustExec("create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))") + tk.MustExec("alter table t1 change id kid int") + tk.MustExec("alter table t1 rename column a to aa") + tbl1Info := getTableInfo(t, dom, "test", "t1") + tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tbl1Info.ForeignKeys)) + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, "kid", tb1ReferredFKs[0].Cols[0].L) + require.Equal(t, "kid", tbl1Info.ForeignKeys[0].RefCols[0].L) + require.Equal(t, "aa", tbl1Info.ForeignKeys[0].Cols[0].L) + + tk.MustExec("drop table t1") + tk.MustExec("create table t1 (id int key, b int, index(b))") + tk.MustExec("create table t2 (a int, b int, foreign key fk(a) references t1(b));") + tk.MustExec("alter table t2 change a aa int") + tbl1Info = getTableInfo(t, dom, "test", "t1") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) + require.Equal(t, "b", tb1ReferredFKs[0].Cols[0].L) + tbl2Info := getTableInfo(t, dom, "test", "t2") + tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].Cols)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].RefCols)) + require.Equal(t, "aa", tbl2Info.ForeignKeys[0].Cols[0].L) + require.Equal(t, "b", tbl2Info.ForeignKeys[0].RefCols[0].L) + + tk.MustExec("alter table t1 change id kid int") + tk.MustExec("alter table t1 change b bb int") + tbl1Info = getTableInfo(t, dom, "test", "t1") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 1, len(tb1ReferredFKs)) + require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) + require.Equal(t, "bb", tb1ReferredFKs[0].Cols[0].L) + tbl2Info = getTableInfo(t, dom, "test", "t2") + tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].Cols)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].RefCols)) + require.Equal(t, "aa", tbl2Info.ForeignKeys[0].Cols[0].L) + require.Equal(t, "bb", tbl2Info.ForeignKeys[0].RefCols[0].L) + + tk.MustExec("drop table t1, t2") + tk.MustExec("create table t1 (id int key, b int, index(b))") + tk.MustExec("create table t2 (a int, b int, foreign key (a) references t1(b), foreign key (b) references t1(b));") + tk.MustExec("alter table t1 change b bb int") + tbl1Info = getTableInfo(t, dom, "test", "t1") + tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") + require.Equal(t, 2, len(tb1ReferredFKs)) + require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) + require.Equal(t, 1, len(tb1ReferredFKs[1].Cols)) + require.Equal(t, "bb", tb1ReferredFKs[0].Cols[0].L) + require.Equal(t, "bb", tb1ReferredFKs[1].Cols[0].L) + tbl2Info = getTableInfo(t, dom, "test", "t2") + tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t2") + require.Equal(t, 0, len(tb2ReferredFKs)) + require.Equal(t, 2, len(tbl2Info.ForeignKeys)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].Cols)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].RefCols)) + require.Equal(t, "a", tbl2Info.ForeignKeys[0].Cols[0].L) + require.Equal(t, "bb", tbl2Info.ForeignKeys[0].RefCols[0].L) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[1].Cols)) + require.Equal(t, 1, len(tbl2Info.ForeignKeys[1].RefCols)) + require.Equal(t, "b", tbl2Info.ForeignKeys[1].Cols[0].L) + require.Equal(t, "bb", tbl2Info.ForeignKeys[1].RefCols[0].L) + tk.MustExec("alter table t2 rename column a to aa") + tk.MustExec("alter table t2 change b bb int") + tk.MustQuery("show create table t2"). + Check(testkit.Rows("t2 CREATE TABLE `t2` (\n" + + " `aa` int(11) DEFAULT NULL,\n" + + " `bb` int(11) DEFAULT NULL,\n" + + " KEY `fk_1` (`aa`),\n KEY `fk_2` (`bb`),\n" + + " CONSTRAINT `fk_1` FOREIGN KEY (`aa`) REFERENCES `test`.`t1` (`bb`),\n" + + " CONSTRAINT `fk_2` FOREIGN KEY (`bb`) REFERENCES `test`.`t1` (`bb`)\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) +} + +func TestDropDatabaseWithForeignKeyReferred(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + + tk.MustExec("create table t1 (id int key, b int, index(b));") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references t1(id));") + tk.MustExec("create database test2") + tk.MustExec("create table test2.t3 (id int key, b int, foreign key fk_b(b) references test.t2(id));") + err := tk.ExecToErr("drop database test;") + require.Error(t, err) + require.Equal(t, "[ddl:3730]Cannot drop table 't2' referenced by a foreign key constraint 'fk_b' on table 't3'.", err.Error()) + tk.MustExec("set @@foreign_key_checks=0;") + tk.MustExec("drop database test") + + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("create database test") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, b int, index(b));") + tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references t1(id));") + err = tk.ExecToErr("drop database test;") + require.Error(t, err) + require.Equal(t, "[ddl:3730]Cannot drop table 't2' referenced by a foreign key constraint 'fk_b' on table 't3'.", err.Error()) + tk.MustExec("drop table test2.t3") + tk.MustExec("drop database test") +} + +func TestAddForeignKey(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key, b int);") + tk.MustExec("create table t2 (id int key, b int);") + tk.MustExec("alter table t2 add index(b)") + tk.MustExec("alter table t2 add foreign key (b) references t1(id);") + tbl2Info := getTableInfo(t, dom, "test", "t2") + require.Equal(t, int64(1), tbl2Info.MaxForeignKeyID) + tk.MustGetDBError("alter table t2 add foreign key (b) references t1(b);", infoschema.ErrForeignKeyNoIndexInParent) + tk.MustExec("alter table t1 add index(b)") + tk.MustExec("alter table t2 add foreign key (b) references t1(b);") + tk.MustGetDBError("alter table t2 add foreign key (b) references t2(b);", infoschema.ErrCannotAddForeign) + // Test auto-create index when create foreign key constraint. + tk.MustExec("drop table if exists t1,t2") + tk.MustExec("create table t1 (id int key, b int, index(b));") + tk.MustExec("create table t2 (id int key, b int);") + tk.MustExec("alter table t2 add constraint fk foreign key (b) references t1(b);") + tbl2Info = getTableInfo(t, dom, "test", "t2") + require.Equal(t, 1, len(tbl2Info.Indices)) + require.Equal(t, "fk", tbl2Info.Indices[0].Name.L) + require.Equal(t, model.StatePublic, tbl2Info.Indices[0].State) + tk.MustQuery("select b from t2 use index(fk)").Check(testkit.Rows()) + res := tk.MustQuery("explain select b from t2 use index(fk)") + plan := bytes.NewBuffer(nil) + rows := res.Rows() + for _, row := range rows { + for _, c := range row { + plan.WriteString(c.(string)) + plan.WriteString(" ") + } + } + require.Regexp(t, ".*IndexReader.*index:fk.*", plan.String()) + + // Test add multiple foreign key constraint in one statement. + tk.MustExec("alter table t2 add column c int, add column d int, add column e int;") + tk.MustExec("alter table t2 add index idx_c(c, d, e)") + tk.MustExec("alter table t2 add constraint fk_c foreign key (c) references t1(b), " + + "add constraint fk_d foreign key (d) references t1(b)," + + "add constraint fk_e foreign key (e) references t1(b)") + tbl2Info = getTableInfo(t, dom, "test", "t2") + require.Equal(t, 4, len(tbl2Info.Indices)) + names := []string{"fk", "idx_c", "fk_d", "fk_e"} + for i, idx := range tbl2Info.Indices { + require.Equal(t, names[i], idx.Name.L) + require.Equal(t, model.StatePublic, idx.State) + } + names = []string{"fk", "fk_c", "fk_d", "fk_e"} + for i, fkInfo := range tbl2Info.ForeignKeys { + require.Equal(t, names[i], fkInfo.Name.L) + require.Equal(t, model.StatePublic, fkInfo.State) + } + tk.MustGetDBError("insert into t2 (id, b) values (1,1)", plannercore.ErrNoReferencedRow2) + tk.MustGetDBError("insert into t2 (id, c) values (1,1)", plannercore.ErrNoReferencedRow2) + tk.MustGetDBError("insert into t2 (id, d) values (1,1)", plannercore.ErrNoReferencedRow2) + tk.MustGetDBError("insert into t2 (id, e) values (1,1)", plannercore.ErrNoReferencedRow2) + + // Test add multiple foreign key constraint in one statement but failed. + tk.MustExec("alter table t2 drop foreign key fk") + tk.MustExec("alter table t2 drop foreign key fk_c") + tk.MustExec("alter table t2 drop foreign key fk_d") + tk.MustExec("alter table t2 drop foreign key fk_e") + tk.MustGetDBError("alter table t2 add constraint fk_c foreign key (c) references t1(b), "+ + "add constraint fk_d foreign key (d) references t1(b),"+ + "add constraint fk_e foreign key (e) references t1(unknown_col)", infoschema.ErrForeignKeyNoColumnInParent) + tbl2Info = getTableInfo(t, dom, "test", "t2") + require.Equal(t, 0, len(tbl2Info.ForeignKeys)) + tk.MustGetDBError("alter table t2 drop index idx_c, add constraint fk_c foreign key (c) references t1(b)", dbterror.ErrDropIndexNeededInForeignKey) + + // Test circular dependency add foreign key failed. + tk.MustExec("drop table if exists t1,t2") + tk.MustExec("create table t1 (id int key,a int, index(a));") + tk.MustExec("create table t2 (id int key,a int, foreign key fk(a) references t1(id) ON DELETE CASCADE);") + tk.MustExec("insert into t1 values (1,1);") + err := tk.ExecToErr("ALTER TABLE t1 ADD foreign key fk(a) references t2(id) ON DELETE CASCADE;") + require.Error(t, err) + require.Equal(t, "[ddl:1452]Cannot add or update a child row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `fk` FOREIGN KEY (`a`) REFERENCES `t2` (`id`) ON DELETE CASCADE)", err.Error()) + tbl1Info := getTableInfo(t, dom, "test", "t1") + require.Equal(t, 0, len(tbl1Info.ForeignKeys)) + referredFKs := dom.InfoSchema().GetTableReferredForeignKeys("test", "t2") + require.Equal(t, 0, len(referredFKs)) + tk.MustQuery("show create table t1").Check(testkit.Rows("t1 CREATE TABLE `t1` (\n" + + " `id` int(11) NOT NULL,\n" + + " `a` int(11) DEFAULT NULL,\n" + + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + + " KEY `a` (`a`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) + + // Test add foreign key with auto-create index failed. + tk.MustExec("drop table if exists t1,t2") + tk.MustExec("create table t1 (id int key,a int);") + tk.MustExec("create table t2 (id int key);") + tk.MustExec("insert into t1 values (1,1);") + err = tk.ExecToErr("ALTER TABLE t1 ADD foreign key fk(a) references t2(id) ON DELETE CASCADE;") + require.Error(t, err) + require.Equal(t, "[ddl:1452]Cannot add or update a child row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `fk` FOREIGN KEY (`a`) REFERENCES `t2` (`id`) ON DELETE CASCADE)", err.Error()) + tbl1Info = getTableInfo(t, dom, "test", "t1") + require.Equal(t, 0, len(tbl1Info.ForeignKeys)) + referredFKs = dom.InfoSchema().GetTableReferredForeignKeys("test", "t2") + require.Equal(t, 0, len(referredFKs)) + tk.MustQuery("show create table t1").Check(testkit.Rows("t1 CREATE TABLE `t1` (\n" + + " `id` int(11) NOT NULL,\n" + + " `a` int(11) DEFAULT NULL,\n" + + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) +} + +func TestAlterTableAddForeignKeyError(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1;") + tk.MustExec("use test") + cases := []struct { + prepares []string + alter string + err string + }{ + { + prepares: []string{ + "create table t1 (id int, a int, b int);", + "create table t2 (a int, b int);", + }, + alter: "alter table t2 add foreign key fk(b) references t_unknown(id)", + err: "[schema:1824]Failed to open the referenced table 't_unknown'", + }, + { + prepares: []string{ + "create table t1 (id int, a int, b int);", + "create table t2 (a int, b int);", + }, + alter: "alter table t2 add foreign key fk(b) references t1(c_unknown)", + err: "[schema:3734]Failed to add the foreign key constraint. Missing column 'c_unknown' for constraint 'fk' in the referenced table 't1'", + }, + { + prepares: []string{ + "create table t1 (id int, a int, b int);", + "create table t2 (a int, b int);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(b)", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", + }, + { + prepares: []string{ + "create table t1 (id int, a int, b int not null, index(b));", + "create table t2 (a int, b int not null);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(b) on update set null", + err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", + }, + { + prepares: []string{ + "create table t1 (id int, a int, b int not null, index(b));", + "create table t2 (a int, b int not null);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(b) on delete set null", + err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", + }, + { + prepares: []string{ + "create table t1 (id int key, a int, b int as (a) virtual, index(b));", + "create table t2 (a int, b int);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(b)", + err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", + }, + { + prepares: []string{ + "create table t1 (id int key, a int, b int, index(b));", + "create table t2 (a int, b int as (a) virtual);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(b)", + err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", + }, + { + prepares: []string{ + "create table t1 (id int key, a int);", + "create table t2 (a int, b varchar(10));", + }, + alter: "alter table t2 add foreign key fk(b) references t1(id)", + err: "[ddl:3780]Referencing column 'b' and referenced column 'id' in foreign key constraint 'fk' are incompatible.", + }, + { + prepares: []string{ + "create table t1 (id int key, a int not null, index(a));", + "create table t2 (a int, b int unsigned);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(a)", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + prepares: []string{ + "create table t1 (id int key, a bigint, index(a));", + "create table t2 (a int, b int);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(a)", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + prepares: []string{ + "create table t1 (id int key, a varchar(10) charset utf8, index(a));", + "create table t2 (a int, b varchar(10) charset utf8mb4);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(a)", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + prepares: []string{ + "create table t1 (id int key, a varchar(10) collate utf8_bin, index(a));", + "create table t2 (a int, b varchar(10) collate utf8mb4_bin);", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(a)", + err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", + }, + { + prepares: []string{ + "create table t1 (id int key, a varchar(10));", + "create table t2 (a int, b varchar(10));", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(a)", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", + }, + { + prepares: []string{ + "create table t1 (id int key, a varchar(10), index (a(5)));", + "create table t2 (a int, b varchar(10));", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(a)", + err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", + }, + { + prepares: []string{ + "create table t1 (id int key, a int)", + "create table t2 (id int, b int, index(b))", + "insert into t2 values (1,1)", + }, + alter: "alter table t2 add foreign key fk_b(b) references t1(id)", + err: "[ddl:1452]Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `t1` (`id`))", + }, + { + prepares: []string{ + "create table t1 (id int, a int, b int, index(a,b))", + "create table t2 (id int, a int, b int, index(a,b))", + "insert into t2 values (1, 1, null), (2, null, 1), (3, null, null), (4, 1, 1)", + }, + alter: "alter table t2 add foreign key fk_b(a, b) references t1(a, b)", + err: "[ddl:1452]Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`a`, `b`) REFERENCES `t1` (`a`, `b`))", + }, + { + prepares: []string{ + "create table t1 (id int key);", + "create table t2 (a int, b int unique);", + }, + alter: "alter table t2 add foreign key name5678901234567890123456789012345678901234567890123456789012345(b) references t1(id)", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + { + prepares: []string{ + "create table t1 (id int key);", + "create table t2 (a int, b int unique);", + }, + alter: "alter table t2 add constraint name5678901234567890123456789012345678901234567890123456789012345 foreign key (b) references t1(id)", + err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", + }, + } + for i, ca := range cases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + for _, sql := range ca.prepares { + tk.MustExec(sql) + } + err := tk.ExecToErr(ca.alter) + require.Error(t, err, fmt.Sprintf("%v, %v", i, ca.err)) + require.Equal(t, ca.err, err.Error()) + } + + passCases := [][]string{ + { + "create table t1 (id int key, a int, b int, index(a))", + "alter table t1 add foreign key fk(a) references t1(id)", + }, + { + "create table t1 (id int key, b int not null, index(b))", + "create table t2 (a int, b int, index(b));", + "alter table t2 add foreign key fk_b(b) references t1(b)", + }, + { + "create table t1 (id int key, a varchar(10), index(a));", + "create table t2 (a int, b varchar(20), index(b));", + "alter table t2 add foreign key fk_b(b) references t1(a)", + }, + { + "create table t1 (id int key, a decimal(10,5), index(a));", + "create table t2 (a int, b decimal(20, 10), index(b));", + "alter table t2 add foreign key fk_b(b) references t1(a)", + }, + { + "create table t1 (id int key, a varchar(10), index (a(10)));", + "create table t2 (a int, b varchar(20), index(b));", + "alter table t2 add foreign key fk_b(b) references t1(a)", + }, + { + "create table t1 (id int key, a int)", + "create table t2 (id int, b int, index(b))", + "insert into t2 values (1, null)", + "alter table t2 add foreign key fk_b(b) references t1(id)", + }, + { + "create table t1 (id int, a int, b int, index(a,b))", + "create table t2 (id int, a int, b int, index(a,b))", + "insert into t2 values (1, 1, null), (2, null, 1), (3, null, null)", + "alter table t2 add foreign key fk_b(a, b) references t1(a, b)", + }, + { + "set @@foreign_key_checks=0;", + "create table t1 (id int, a int, b int, index(a,b))", + "create table t2 (id int, a int, b int, index(a,b))", + "insert into t2 values (1, 1, 1)", + "alter table t2 add foreign key fk_b(a, b) references t1(a, b)", + "set @@foreign_key_checks=1;", + }, + { + "set @@foreign_key_checks=0;", + "create table t2 (a int, b int, index(b));", + "alter table t2 add foreign key fk_b(b) references t_unknown(a)", + "set @@foreign_key_checks=1;", + }, + { + "create table t1 (id int key);", + "create table t2 (a int, b int unique);", + "alter table t2 add foreign key name567890123456789012345678901234567890123456789012345678901234(b) references t1(id)", + }, + } + for _, ca := range passCases { + tk.MustExec("drop table if exists t2") + tk.MustExec("drop table if exists t1") + for _, sql := range ca { + tk.MustExec(sql) + } + } +} + +func TestRenameTablesWithForeignKey(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=0;") + tk.MustExec("create database test1") + tk.MustExec("create database test2") + tk.MustExec("use test") + tk.MustExec("create table t0 (id int key, b int);") + tk.MustExec("create table t1 (id int key, b int, index(b), foreign key fk(b) references t2(id));") + tk.MustExec("create table t2 (id int key, b int, index(b), foreign key fk(b) references t1(id));") + tk.MustExec("rename table test.t1 to test1.tt1, test.t2 to test2.tt2, test.t0 to test.tt0") + + // check the schema diff + diff := getLatestSchemaDiff(t, tk) + require.Equal(t, model.ActionRenameTables, diff.Type) + require.Equal(t, 3, len(diff.AffectedOpts)) + + // check referred foreign key information. + t1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") + t2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t2") + require.Equal(t, 0, len(t1ReferredFKs)) + require.Equal(t, 0, len(t2ReferredFKs)) + tt1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test1", "tt1") + tt2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "tt2") + require.Equal(t, 1, len(tt1ReferredFKs)) + require.Equal(t, 1, len(tt2ReferredFKs)) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test2"), + ChildTable: model.NewCIStr("tt2"), + ChildFKName: model.NewCIStr("fk"), + }, *tt1ReferredFKs[0]) + require.Equal(t, model.ReferredFKInfo{ + Cols: []model.CIStr{model.NewCIStr("id")}, + ChildSchema: model.NewCIStr("test1"), + ChildTable: model.NewCIStr("tt1"), + ChildFKName: model.NewCIStr("fk"), + }, *tt2ReferredFKs[0]) + + // check show create table information + tk.MustQuery("show create table test1.tt1").Check(testkit.Rows("tt1 CREATE TABLE `tt1` (\n" + + " `id` int(11) NOT NULL,\n" + + " `b` int(11) DEFAULT NULL,\n" + + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + + " KEY `b` (`b`),\n" + + " CONSTRAINT `fk` FOREIGN KEY (`b`) REFERENCES `test2`.`tt2` (`id`)\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) + tk.MustQuery("show create table test2.tt2").Check(testkit.Rows("tt2 CREATE TABLE `tt2` (\n" + + " `id` int(11) NOT NULL,\n" + + " `b` int(11) DEFAULT NULL,\n" + + " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + + " KEY `b` (`b`),\n" + + " CONSTRAINT `fk` FOREIGN KEY (`b`) REFERENCES `test1`.`tt1` (`id`)\n" + + ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) +} + +func getLatestSchemaDiff(t *testing.T, tk *testkit.TestKit) *model.SchemaDiff { + ctx := tk.Session() + err := sessiontxn.NewTxn(context.Background(), ctx) + require.NoError(t, err) + txn, err := ctx.Txn(true) + require.NoError(t, err) + m := meta.NewMeta(txn) + ver, err := m.GetSchemaVersion() + require.NoError(t, err) + diff, err := m.GetSchemaDiff(ver) + require.NoError(t, err) + return diff +} diff --git a/ddl/fktest/main_test.go b/ddl/fktest/main_test.go new file mode 100644 index 0000000000000..36f34049a9d03 --- /dev/null +++ b/ddl/fktest/main_test.go @@ -0,0 +1,56 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ddl_test + +import ( + "testing" + "time" + + "github.com/pingcap/tidb/config" + "github.com/pingcap/tidb/ddl" + "github.com/pingcap/tidb/domain" + "github.com/pingcap/tidb/meta/autoid" + "github.com/pingcap/tidb/testkit/testsetup" + "github.com/tikv/client-go/v2/tikv" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + testsetup.SetupForCommonTest() + tikv.EnableFailpoints() + + domain.SchemaOutOfDateRetryInterval.Store(50 * time.Millisecond) + domain.SchemaOutOfDateRetryTimes.Store(50) + + autoid.SetStep(5000) + ddl.RunInGoTest = true + + config.UpdateGlobal(func(conf *config.Config) { + conf.Instance.SlowThreshold = 10000 + conf.TiKVClient.AsyncCommit.SafeWindow = 0 + conf.TiKVClient.AsyncCommit.AllowedClockDrift = 0 + conf.Experimental.AllowsExpressionIndex = true + }) + + opts := []goleak.Option{ + goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), + goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), + goleak.IgnoreTopFunction("go.etcd.io/etcd/client/pkg/v3/logutil.(*MergeLogger).outputLoop"), + goleak.IgnoreTopFunction("github.com/tikv/client-go/v2/txnkv/transaction.keepAlive"), + goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), + } + + goleak.VerifyTestMain(m, opts...) +} diff --git a/ddl/foreign_key.go b/ddl/foreign_key.go index 6f1d02d464ac8..af9570fbee837 100644 --- a/ddl/foreign_key.go +++ b/ddl/foreign_key.go @@ -44,6 +44,9 @@ func (w *worker) onCreateForeignKey(d *ddlCtx, t *meta.Meta, job *model.Job) (ve job.State = model.JobStateCancelled return ver, errors.Trace(err) } + if job.IsRollingback() { + return dropForeignKey(d, t, job, tblInfo, fkInfo.Name) + } switch job.SchemaState { case model.StateNone: err = checkAddForeignKeyValidInOwner(d, t, job.SchemaName, tblInfo, &fkInfo, fkCheck) @@ -63,7 +66,7 @@ func (w *worker) onCreateForeignKey(d *ddlCtx, t *meta.Meta, job *model.Job) (ve case model.StateWriteOnly: err = checkForeignKeyConstrain(w, job.SchemaName, tblInfo.Name.L, &fkInfo, fkCheck) if err != nil { - job.State = model.JobStateCancelled + job.State = model.JobStateRollingback return ver, err } tblInfo.ForeignKeys[len(tblInfo.ForeignKeys)-1].State = model.StateWriteReorganization @@ -94,29 +97,27 @@ func onDropForeignKey(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, _ err return ver, errors.Trace(err) } - var ( - fkName model.CIStr - found bool - fkInfo model.FKInfo - ) + var fkName model.CIStr err = job.DecodeArgs(&fkName) if err != nil { job.State = model.JobStateCancelled return ver, errors.Trace(err) } + return dropForeignKey(d, t, job, tblInfo, fkName) +} +func dropForeignKey(d *ddlCtx, t *meta.Meta, job *model.Job, tblInfo *model.TableInfo, fkName model.CIStr) (ver int64, err error) { + var fkInfo *model.FKInfo for _, fk := range tblInfo.ForeignKeys { if fk.Name.L == fkName.L { - found = true - fkInfo = *fk + fkInfo = fk + break } } - - if !found { + if fkInfo == nil { job.State = model.JobStateCancelled return ver, infoschema.ErrForeignKeyNotExists.GenWithStackByArgs(fkName) } - nfks := tblInfo.ForeignKeys[:0] for _, fk := range tblInfo.ForeignKeys { if fk.Name.L != fkName.L { @@ -124,24 +125,18 @@ func onDropForeignKey(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, _ err } } tblInfo.ForeignKeys = nfks - - originalState := fkInfo.State - switch fkInfo.State { - case model.StatePublic: - // We just support record the foreign key, so we just make it none. - // public -> none - fkInfo.State = model.StateNone - ver, err = updateVersionAndTableInfo(d, t, job, tblInfo, originalState != fkInfo.State) - if err != nil { - return ver, errors.Trace(err) - } - // Finish this job. + ver, err = updateVersionAndTableInfo(d, t, job, tblInfo, true) + if err != nil { + return ver, errors.Trace(err) + } + // Finish this job. + if job.IsRollingback() { + job.FinishTableJob(model.JobStateRollbackDone, model.StateNone, ver, tblInfo) + } else { job.FinishTableJob(model.JobStateDone, model.StateNone, ver, tblInfo) - job.SchemaState = fkInfo.State - return ver, nil - default: - return ver, dbterror.ErrInvalidDDLState.GenWithStackByArgs("foreign key", fkInfo.State) } + job.SchemaState = model.StateNone + return ver, err } func allocateFKIndexID(tblInfo *model.TableInfo) int64 { @@ -268,6 +263,9 @@ func checkTableForeignKey(referTblInfo, tblInfo *model.TableInfo, fkInfo *model. if referTblInfo.TempTableType != model.TempTableNone || tblInfo.TempTableType != model.TempTableNone { return infoschema.ErrCannotAddForeign } + if referTblInfo.TTLInfo != nil { + return dbterror.ErrUnsupportedTTLReferencedByFK + } // check refer columns in parent table. for i := range fkInfo.RefCols { diff --git a/ddl/foreign_key_test.go b/ddl/foreign_key_test.go index a50fd80e03681..91016c61f766d 100644 --- a/ddl/foreign_key_test.go +++ b/ddl/foreign_key_test.go @@ -15,9 +15,7 @@ package ddl_test import ( - "bytes" "context" - "fmt" "strings" "sync" "testing" @@ -25,17 +23,11 @@ import ( "github.com/pingcap/errors" "github.com/pingcap/tidb/ddl" - "github.com/pingcap/tidb/domain" - "github.com/pingcap/tidb/infoschema" - "github.com/pingcap/tidb/meta" - "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/model" - plannercore "github.com/pingcap/tidb/planner/core" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessiontxn" "github.com/pingcap/tidb/table" "github.com/pingcap/tidb/testkit" - "github.com/pingcap/tidb/util/dbterror" "github.com/stretchr/testify/require" ) @@ -204,853 +196,6 @@ func TestForeignKey(t *testing.T) { require.NoError(t, err) } -func TestCreateTableWithForeignKeyMetaInfo(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int,b int as (a) virtual);") - tk.MustExec("create database test2") - tk.MustExec("use test2") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id) ON UPDATE RESTRICT ON DELETE CASCADE)") - tb1Info := getTableInfo(t, dom, "test", "t1") - tb2Info := getTableInfo(t, dom, "test2", "t2") - require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test", "t1"))) - require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) - require.Equal(t, 0, len(tb1Info.ForeignKeys)) - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("t2"), - ChildFKName: model.NewCIStr("fk_b"), - }, *tb1ReferredFKs[0]) - tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 1, len(tb2Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_b"), - RefSchema: model.NewCIStr("test"), - RefTable: model.NewCIStr("t1"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("b")}, - OnDelete: 2, - OnUpdate: 1, - State: model.StatePublic, - Version: 1, - }, *tb2Info.ForeignKeys[0]) - // Auto create index for foreign key usage. - require.Equal(t, 1, len(tb2Info.Indices)) - require.Equal(t, "fk_b", tb2Info.Indices[0].Name.L) - require.Equal(t, "`test2`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test`.`t1` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT", tb2Info.ForeignKeys[0].String("test2", "t2")) - - tk.MustExec("create table t3 (id int, b int, index idx_b(b), foreign key fk_b(b) references t2(id) ON UPDATE SET NULL ON DELETE NO ACTION)") - tb2Info = getTableInfo(t, dom, "test2", "t2") - tb3Info := getTableInfo(t, dom, "test2", "t3") - require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) - require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t3"))) - require.Equal(t, 1, len(tb2Info.ForeignKeys)) - tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test2", "t2") - require.Equal(t, 1, len(tb2ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("t3"), - ChildFKName: model.NewCIStr("fk_b"), - }, *tb2ReferredFKs[0]) - tb3ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t3") - require.Equal(t, 0, len(tb3ReferredFKs)) - require.Equal(t, 1, len(tb3Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_b"), - RefSchema: model.NewCIStr("test2"), - RefTable: model.NewCIStr("t2"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("b")}, - OnDelete: 4, - OnUpdate: 3, - State: model.StatePublic, - Version: 1, - }, *tb3Info.ForeignKeys[0]) - require.Equal(t, 1, len(tb3Info.Indices)) - require.Equal(t, "idx_b", tb3Info.Indices[0].Name.L) - require.Equal(t, "`test2`.`t3`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `t2` (`id`) ON DELETE NO ACTION ON UPDATE SET NULL", tb3Info.ForeignKeys[0].String("test2", "t3")) - - tk.MustExec("create table t5 (id int key, a int, b int, foreign key (a) references t5(id));") - tb5Info := getTableInfo(t, dom, "test2", "t5") - require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t5"))) - require.Equal(t, 1, len(tb5Info.ForeignKeys)) - tb5ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t5") - require.Equal(t, 1, len(tb5ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("t5"), - ChildFKName: model.NewCIStr("fk_1"), - }, *tb5ReferredFKs[0]) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_1"), - RefSchema: model.NewCIStr("test2"), - RefTable: model.NewCIStr("t5"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("a")}, - State: model.StatePublic, - Version: 1, - }, *tb5Info.ForeignKeys[0]) - require.Equal(t, 1, len(tb5Info.Indices)) - require.Equal(t, "fk_1", tb5Info.Indices[0].Name.L) - require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test", "t1"))) - require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) - require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t3"))) - require.Equal(t, 1, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t5"))) - - tk.MustExec("set @@global.tidb_enable_foreign_key=0") - tk.MustExec("drop database test2") - require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t2"))) - require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t3"))) - require.Equal(t, 0, len(dom.InfoSchema().GetTableReferredForeignKeys("test2", "t5"))) -} - -func TestCreateTableWithForeignKeyMetaInfo2(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("create database test2") - tk.MustExec("set @@foreign_key_checks=0") - tk.MustExec("use test2") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id) ON UPDATE RESTRICT ON DELETE CASCADE)") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int, b int as (a) virtual);") - tb1Info := getTableInfo(t, dom, "test", "t1") - tb2Info := getTableInfo(t, dom, "test2", "t2") - require.Equal(t, 0, len(tb1Info.ForeignKeys)) - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("t2"), - ChildFKName: model.NewCIStr("fk_b"), - }, *tb1ReferredFKs[0]) - tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 1, len(tb2Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_b"), - RefSchema: model.NewCIStr("test"), - RefTable: model.NewCIStr("t1"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("b")}, - OnDelete: 2, - OnUpdate: 1, - State: model.StatePublic, - Version: 1, - }, *tb2Info.ForeignKeys[0]) - // Auto create index for foreign key usage. - require.Equal(t, 1, len(tb2Info.Indices)) - require.Equal(t, "fk_b", tb2Info.Indices[0].Name.L) - require.Equal(t, "`test2`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test`.`t1` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT", tb2Info.ForeignKeys[0].String("test2", "t2")) - - tk.MustExec("create table t3 (id int key, a int, foreign key fk_a(a) references test.t1(id) ON DELETE CASCADE ON UPDATE RESTRICT, foreign key fk_a2(a) references test2.t2(id))") - tb1Info = getTableInfo(t, dom, "test", "t1") - tb3Info := getTableInfo(t, dom, "test", "t3") - require.Equal(t, 0, len(tb1Info.ForeignKeys)) - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 2, len(tb1ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test"), - ChildTable: model.NewCIStr("t3"), - ChildFKName: model.NewCIStr("fk_a"), - }, *tb1ReferredFKs[0]) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("t2"), - ChildFKName: model.NewCIStr("fk_b"), - }, *tb1ReferredFKs[1]) - tb3ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t3") - require.Equal(t, 0, len(tb3ReferredFKs)) - require.Equal(t, 2, len(tb3Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_a"), - RefSchema: model.NewCIStr("test"), - RefTable: model.NewCIStr("t1"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("a")}, - OnDelete: 2, - OnUpdate: 1, - State: model.StatePublic, - Version: 1, - }, *tb3Info.ForeignKeys[0]) - require.Equal(t, model.FKInfo{ - ID: 2, - Name: model.NewCIStr("fk_a2"), - RefSchema: model.NewCIStr("test2"), - RefTable: model.NewCIStr("t2"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("a")}, - State: model.StatePublic, - Version: 1, - }, *tb3Info.ForeignKeys[1]) - // Auto create index for foreign key usage. - require.Equal(t, 1, len(tb3Info.Indices)) - require.Equal(t, "fk_a", tb3Info.Indices[0].Name.L) - require.Equal(t, "`test`.`t3`, CONSTRAINT `fk_a` FOREIGN KEY (`a`) REFERENCES `t1` (`id`) ON DELETE CASCADE ON UPDATE RESTRICT", tb3Info.ForeignKeys[0].String("test", "t3")) - require.Equal(t, "`test`.`t3`, CONSTRAINT `fk_a2` FOREIGN KEY (`a`) REFERENCES `test2`.`t2` (`id`)", tb3Info.ForeignKeys[1].String("test", "t3")) - - tk.MustExec("set @@foreign_key_checks=0") - tk.MustExec("drop table test2.t2") - tb1Info = getTableInfo(t, dom, "test", "t1") - tb3Info = getTableInfo(t, dom, "test", "t3") - require.Equal(t, 0, len(tb1Info.ForeignKeys)) - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test"), - ChildTable: model.NewCIStr("t3"), - ChildFKName: model.NewCIStr("fk_a"), - }, *tb1ReferredFKs[0]) - tb3ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t3") - require.Equal(t, 0, len(tb3ReferredFKs)) - require.Equal(t, 2, len(tb3Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_a"), - RefSchema: model.NewCIStr("test"), - RefTable: model.NewCIStr("t1"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("a")}, - OnDelete: 2, - OnUpdate: 1, - State: model.StatePublic, - Version: 1, - }, *tb3Info.ForeignKeys[0]) - require.Equal(t, model.FKInfo{ - ID: 2, - Name: model.NewCIStr("fk_a2"), - RefSchema: model.NewCIStr("test2"), - RefTable: model.NewCIStr("t2"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("a")}, - State: model.StatePublic, - Version: 1, - }, *tb3Info.ForeignKeys[1]) -} - -func TestCreateTableWithForeignKeyMetaInfo3(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int, b int as (a) virtual);") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id))") - tk.MustExec("create table t3 (id int key, b int, foreign key fk_b(b) references test.t1(id))") - tk.MustExec("create table t4 (id int key, b int, foreign key fk_b(b) references test.t1(id))") - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - tk.MustExec("drop table t3") - tk.MustExec("create table t5 (id int key, b int, foreign key fk_b(b) references test.t1(id))") - require.Equal(t, 3, len(tb1ReferredFKs)) - require.Equal(t, "t2", tb1ReferredFKs[0].ChildTable.L) - require.Equal(t, "t3", tb1ReferredFKs[1].ChildTable.L) - require.Equal(t, "t4", tb1ReferredFKs[2].ChildTable.L) -} - -func TestCreateTableWithForeignKeyPrivilegeCheck(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("use test") - - tk.MustExec("create user 'u1'@'%' identified by '';") - tk.MustExec("grant create on *.* to 'u1'@'%';") - tk.MustExec("create table t1 (id int key);") - - tk2 := testkit.NewTestKit(t, store) - tk2.MustExec("use test") - tk2.Session().Auth(&auth.UserIdentity{Username: "u1", Hostname: "localhost", CurrentUser: true, AuthUsername: "u1", AuthHostname: "%"}, nil, []byte("012345678901234567890")) - err := tk2.ExecToErr("create table t2 (a int, foreign key fk(a) references t1(id));") - require.Error(t, err) - require.Equal(t, "[planner:1142]REFERENCES command denied to user 'u1'@'%' for table 't1'", err.Error()) - - tk.MustExec("grant references on test.t1 to 'u1'@'%';") - tk2.MustExec("create table t2 (a int, foreign key fk(a) references t1(id));") - tk2.MustExec("create table t3 (id int key)") - err = tk2.ExecToErr("create table t4 (a int, foreign key fk(a) references t1(id), foreign key (a) references t3(id));") - require.Error(t, err) - require.Equal(t, "[planner:1142]REFERENCES command denied to user 'u1'@'%' for table 't3'", err.Error()) - - tk.MustExec("grant references on test.t3 to 'u1'@'%';") - tk2.MustExec("create table t4 (a int, foreign key fk(a) references t1(id), foreign key (a) references t3(id));") -} - -func TestRenameTableWithForeignKeyMetaInfo(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("create database test2") - tk.MustExec("create database test3") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))") - tk.MustExec("rename table test.t1 to test2.t2") - // check the schema diff - diff := getLatestSchemaDiff(t, tk) - require.Equal(t, model.ActionRenameTable, diff.Type) - require.Equal(t, 0, len(diff.AffectedOpts)) - tk.MustQuery("show create table test2.t2").Check(testkit.Rows("t2 CREATE TABLE `t2` (\n" + - " `id` int(11) NOT NULL,\n" + - " `a` int(11) DEFAULT NULL,\n" + - " `b` int(11) DEFAULT NULL,\n" + - " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + - " KEY `fk` (`a`),\n" + - " CONSTRAINT `fk` FOREIGN KEY (`a`) REFERENCES `test2`.`t2` (`id`)\n" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) - tblInfo := getTableInfo(t, dom, "test2", "t2") - tbReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "t2") - require.Equal(t, 1, len(tblInfo.ForeignKeys)) - require.Equal(t, 1, len(tbReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("t2"), - ChildFKName: model.NewCIStr("fk"), - }, *tbReferredFKs[0]) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk"), - RefSchema: model.NewCIStr("test2"), - RefTable: model.NewCIStr("t2"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("a")}, - State: model.StatePublic, - Version: 1, - }, *tblInfo.ForeignKeys[0]) - - tk.MustExec("drop table test2.t2") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int, b int as (a) virtual);") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id))") - tk.MustExec("use test2") - tk.MustExec("rename table test.t2 to test2.tt2") - // check the schema diff - diff = getLatestSchemaDiff(t, tk) - require.Equal(t, model.ActionRenameTable, diff.Type) - require.Equal(t, 0, len(diff.AffectedOpts)) - tb1Info := getTableInfo(t, dom, "test", "t1") - tb2Info := getTableInfo(t, dom, "test2", "tt2") - require.Equal(t, 0, len(tb1Info.ForeignKeys)) - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("tt2"), - ChildFKName: model.NewCIStr("fk_b"), - }, *tb1ReferredFKs[0]) - tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "tt2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 1, len(tb2Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_b"), - RefSchema: model.NewCIStr("test"), - RefTable: model.NewCIStr("t1"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("b")}, - State: model.StatePublic, - Version: 1, - }, *tb2Info.ForeignKeys[0]) - // Auto create index for foreign key usage. - require.Equal(t, 1, len(tb2Info.Indices)) - require.Equal(t, "fk_b", tb2Info.Indices[0].Name.L) - require.Equal(t, "`test2`.`tt2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test`.`t1` (`id`)", tb2Info.ForeignKeys[0].String("test2", "tt2")) - - tk.MustExec("rename table test.t1 to test3.tt1") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test3", "tt1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) - // check the schema diff - diff = getLatestSchemaDiff(t, tk) - require.Equal(t, model.ActionRenameTable, diff.Type) - require.Equal(t, 1, len(diff.AffectedOpts)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("tt2"), - ChildFKName: model.NewCIStr("fk_b"), - }, *tb1ReferredFKs[0]) - tbl2Info := getTableInfo(t, dom, "test2", "tt2") - tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test2", "tt2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys)) - require.Equal(t, model.FKInfo{ - ID: 1, - Name: model.NewCIStr("fk_b"), - RefSchema: model.NewCIStr("test3"), - RefTable: model.NewCIStr("tt1"), - RefCols: []model.CIStr{model.NewCIStr("id")}, - Cols: []model.CIStr{model.NewCIStr("b")}, - State: model.StatePublic, - Version: 1, - }, *tbl2Info.ForeignKeys[0]) - tk.MustQuery("show create table test2.tt2").Check(testkit.Rows("tt2 CREATE TABLE `tt2` (\n" + - " `id` int(11) NOT NULL,\n" + - " `b` int(11) DEFAULT NULL,\n" + - " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + - " KEY `fk_b` (`b`),\n" + - " CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `test3`.`tt1` (`id`)\n" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) -} - -func TestCreateTableWithForeignKeyDML(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int);") - tk.MustExec("begin") - tk.MustExec("insert into t1 values (1, 1)") - tk.MustExec("update t1 set a = 2 where id = 1") - - tk2 := testkit.NewTestKit(t, store) - tk2.MustExec("use test") - tk2.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references test.t1(id))") - - tk.MustExec("commit") -} - -func TestCreateTableWithForeignKeyError(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("use test") - - cases := []struct { - prepare []string - refer string - create string - err string - }{ - { - refer: "create table t1 (id int, a int, b int);", - create: "create table t2 (a int, b int, foreign key fk_b(b) references T_unknown(b));", - err: "[schema:1824]Failed to open the referenced table 'T_unknown'", - }, - { - refer: "create table t1 (id int, a int, b int);", - create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(c_unknown));", - err: "[schema:3734]Failed to add the foreign key constraint. Missing column 'c_unknown' for constraint 'fk_b' in the referenced table 't1'", - }, - { - refer: "create table t1 (id int key, a int, b int);", - create: "create table t2 (a int, b int, foreign key fk(c_unknown) references t1(id));", - err: "[ddl:1072]Key column 'c_unknown' doesn't exist in table", - }, - { - refer: "create table t1 (id int, a int, b int);", - create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", - }, - { - refer: "create table t1 (id int, a int, b int not null, index(b));", - create: "create table t2 (a int, b int not null, foreign key fk_b(b) references t1(b) on update set null);", - err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", - }, - { - refer: "create table t1 (id int, a int, b int not null, index(b));", - create: "create table t2 (a int, b int not null, foreign key fk_b(b) references t1(b) on delete set null);", - err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", - }, - { - refer: "create table t1 (id int key, a int, b int as (a) virtual, index(b));", - create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", - err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", - }, - { - refer: "create table t1 (id int key, a int, b int, index(b));", - create: "create table t2 (a int, b int as (a) virtual, foreign key fk_b(b) references t1(b));", - err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", - }, - { - refer: "create table t1 (id int key, a int);", - create: "create table t2 (a int, b varchar(10), foreign key fk(b) references t1(id));", - err: "[ddl:3780]Referencing column 'b' and referenced column 'id' in foreign key constraint 'fk' are incompatible.", - }, - { - refer: "create table t1 (id int key, a int not null, index(a));", - create: "create table t2 (a int, b int unsigned, foreign key fk_b(b) references t1(a));", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - refer: "create table t1 (id int key, a bigint, index(a));", - create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(a));", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - refer: "create table t1 (id int key, a varchar(10) charset utf8, index(a));", - create: "create table t2 (a int, b varchar(10) charset utf8mb4, foreign key fk_b(b) references t1(a));", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - refer: "create table t1 (id int key, a varchar(10) collate utf8_bin, index(a));", - create: "create table t2 (a int, b varchar(10) collate utf8mb4_bin, foreign key fk_b(b) references t1(a));", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - refer: "create table t1 (id int key, a varchar(10));", - create: "create table t2 (a int, b varchar(10), foreign key fk_b(b) references t1(a));", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", - }, - { - refer: "create table t1 (id int key, a varchar(10), index (a(5)));", - create: "create table t2 (a int, b varchar(10), foreign key fk_b(b) references t1(a));", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", - }, - { - refer: "create table t1 (id int key, a int, index(a));", - create: "create table t2 (a int, b int, foreign key fk_b(b) references t1(id, a));", - err: "[schema:1239]Incorrect foreign key definition for 'fk_b': Key reference and table reference don't match", - }, - { - create: "create table t2 (a int key, foreign key (a) references t2(a));", - err: "[schema:1215]Cannot add foreign key constraint", - }, - { - create: "create table t2 (a int, b int, index(a,b), index(b,a), foreign key (a,b) references t2(a,b));", - err: "[schema:1215]Cannot add foreign key constraint", - }, - { - create: "create table t2 (a int, b int, index(a,b), foreign key (a,b) references t2(b,a));", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_1' in the referenced table 't2'", - }, - { - prepare: []string{ - "set @@foreign_key_checks=0;", - "create table t2 (a int, b int, index(a), foreign key (a) references t1(id));", - }, - create: "create table t1 (id int, a int);", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_1' in the referenced table 't1'", - }, - { - prepare: []string{ - "set @@foreign_key_checks=0;", - "create table t2 (a int, b int, index(a), foreign key (a) references t1(id));", - }, - create: "create table t1 (id bigint key, a int);", - err: "[ddl:3780]Referencing column 'a' and referenced column 'id' in foreign key constraint 'fk_1' are incompatible.", - }, - { - // foreign key is not support in temporary table. - refer: "create temporary table t1 (id int key, b int, index(b))", - create: "create table t2 (a int, b int, foreign key fk(b) references t1(b))", - err: "[schema:1824]Failed to open the referenced table 't1'", - }, - { - // foreign key is not support in temporary table. - refer: "create global temporary table t1 (id int key, b int, index(b)) on commit delete rows", - create: "create table t2 (a int, b int, foreign key fk(b) references t1(b))", - err: "[schema:1215]Cannot add foreign key constraint", - }, - { - // foreign key is not support in temporary table. - refer: "create table t1 (id int key, b int, index(b))", - create: "create temporary table t2 (a int, b int, foreign key fk(b) references t1(b))", - err: "[schema:1215]Cannot add foreign key constraint", - }, - { - // foreign key is not support in temporary table. - refer: "create table t1 (id int key, b int, index(b))", - create: "create global temporary table t2 (a int, b int, foreign key fk(b) references t1(b)) on commit delete rows", - err: "[schema:1215]Cannot add foreign key constraint", - }, - { - create: "create table t1 (a int, foreign key ``(a) references t1(a));", - err: "[ddl:1280]Incorrect index name ''", - }, - { - create: "create table t1 (a int, constraint `` foreign key (a) references t1(a));", - err: "[ddl:1280]Incorrect index name ''", - }, - { - create: "create table t1 (a int, constraint `fk` foreign key (a,a) references t1(a, b));", - err: "[schema:1060]Duplicate column name 'a'", - }, - { - refer: "create table t1(a int, b int, index(a,b));", - create: "create table t2 (a int, b int, foreign key (a,b) references t1(a,a));", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_1' in the referenced table 't1'", - }, - { - refer: "create table t1 (id int key, b int, index(b))", - create: "create table t2 (a int, b int, index fk_1(a), foreign key (b) references t1(b));", - err: "[ddl:1061]duplicate key name fk_1", - }, - { - refer: "create table t1 (id int key);", - create: "create table t2 (id int key, foreign key name5678901234567890123456789012345678901234567890123456789012345(id) references t1(id));", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - { - refer: "create table t1 (id int key);", - create: "create table t2 (id int key, constraint name5678901234567890123456789012345678901234567890123456789012345 foreign key (id) references t1(id));", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - { - create: "create table t2 (id int key, constraint fk foreign key (id) references name5678901234567890123456789012345678901234567890123456789012345.t1(id));", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - { - prepare: []string{ - "set @@foreign_key_checks=0;", - }, - create: "create table t2 (id int key, constraint fk foreign key (id) references name5678901234567890123456789012345678901234567890123456789012345(id));", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - { - prepare: []string{ - "set @@foreign_key_checks=0;", - }, - create: "create table t2 (id int key, constraint fk foreign key (id) references t1(name5678901234567890123456789012345678901234567890123456789012345));", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - } - for _, ca := range cases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - tk.MustExec("set @@foreign_key_checks=1") - for _, sql := range ca.prepare { - tk.MustExec(sql) - } - if ca.refer != "" { - tk.MustExec(ca.refer) - } - err := tk.ExecToErr(ca.create) - require.Error(t, err, ca.create) - require.Equal(t, ca.err, err.Error(), ca.create) - } - - passCases := [][]string{ - { - "create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))", - }, - { - "create table t1 (id int key, b int not null, index(b))", - "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", - }, - { - "create table t1 (id int key, a varchar(10), index(a));", - "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", - }, - { - "create table t1 (id int key, a decimal(10,5), index(a));", - "create table t2 (a int, b decimal(20, 10), foreign key fk_b(b) references t1(a));", - }, - { - "create table t1 (id int key, a varchar(10), index (a(10)));", - "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", - }, - { - "set @@foreign_key_checks=0;", - "create table t2 (a int, b int, foreign key fk_b(b) references t_unknown(b));", - "set @@foreign_key_checks=1;", - }, - { - "create table t2 (a int, b int, index(a,b), index(b,a), foreign key (a,b) references t2(b,a));", - }, - { - "create table t1 (a int key, b int, index(b))", - "create table t2 (a int, b int, foreign key (a) references t1(a), foreign key (b) references t1(b));", - }, - { - "create table t1 (id int key);", - "create table t2 (id int key, foreign key name567890123456789012345678901234567890123456789012345678901234(id) references t1(id));", - }, - } - for _, ca := range passCases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - for _, sql := range ca { - tk.MustExec(sql) - } - } -} - -func TestModifyColumnWithForeignKey(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - - tk.MustExec("create table t1 (id int key, b varchar(10), index(b));") - tk.MustExec("create table t2 (a varchar(10), constraint fk foreign key (a) references t1(b));") - tk.MustExec("insert into t1 values (1, '123456789');") - tk.MustExec("insert into t2 values ('123456789');") - tk.MustGetErrMsg("alter table t1 modify column b varchar(5);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") - tk.MustGetErrMsg("alter table t1 modify column b bigint;", "[ddl:3780]Referencing column 'a' and referenced column 'b' in foreign key constraint 'fk' are incompatible.") - tk.MustExec("alter table t1 modify column b varchar(20);") - tk.MustGetErrMsg("alter table t1 modify column b varchar(10);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") - tk.MustExec("alter table t2 modify column a varchar(20);") - tk.MustExec("alter table t2 modify column a varchar(21);") - tk.MustGetErrMsg("alter table t2 modify column a varchar(5);", "[ddl:1832]Cannot change column 'a': used in a foreign key constraint 'fk'") - tk.MustGetErrMsg("alter table t2 modify column a bigint;", "[ddl:3780]Referencing column 'a' and referenced column 'b' in foreign key constraint 'fk' are incompatible.") - - tk.MustExec("drop table t2") - tk.MustExec("drop table t1") - tk.MustExec("create table t1 (id int key, b decimal(10, 5), index(b));") - tk.MustExec("create table t2 (a decimal(10, 5), constraint fk foreign key (a) references t1(b));") - tk.MustExec("insert into t1 values (1, 12345.67891);") - tk.MustExec("insert into t2 values (12345.67891);") - tk.MustGetErrMsg("alter table t1 modify column b decimal(10, 6);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") - tk.MustGetErrMsg("alter table t1 modify column b decimal(10, 3);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") - tk.MustGetErrMsg("alter table t1 modify column b decimal(5, 2);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") - tk.MustGetErrMsg("alter table t1 modify column b decimal(20, 10);", "[ddl:1833]Cannot change column 'b': used in a foreign key constraint 'fk' of table 'test.t2'") - tk.MustGetErrMsg("alter table t2 modify column a decimal(30, 15);", "[ddl:1832]Cannot change column 'a': used in a foreign key constraint 'fk'") - tk.MustGetErrMsg("alter table t2 modify column a decimal(5, 2);", "[ddl:1832]Cannot change column 'a': used in a foreign key constraint 'fk'") -} - -func TestDropChildTableForeignKeyMetaInfo(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int, b int, CONSTRAINT fk foreign key (a) references t1(id))") - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - tk.MustExec("drop table t1") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 0, len(tb1ReferredFKs)) - - tk.MustExec("create table t1 (id int key, b int, index(b))") - tk.MustExec("create table t2 (a int, b int, foreign key fk (a) references t1(b));") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - tk.MustExec("drop table t2") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 0, len(tb1ReferredFKs)) -} - -func TestDropForeignKeyMetaInfo(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, a int, b int, CONSTRAINT fk foreign key (a) references t1(id))") - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - tk.MustExec("alter table t1 drop foreign key fk") - tbl1Info := getTableInfo(t, dom, "test", "t1") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 0, len(tbl1Info.ForeignKeys)) - require.Equal(t, 0, len(tb1ReferredFKs)) - - tk.MustExec("drop table t1") - tk.MustExec("create table t1 (id int key, b int, index(b))") - tk.MustExec("create table t2 (a int, b int, foreign key fk (a) references t1(b));") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - tk.MustExec("alter table t2 drop foreign key fk") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 0, len(tb1ReferredFKs)) - tbl2Info := getTableInfo(t, dom, "test", "t2") - require.Equal(t, 0, len(tbl2Info.ForeignKeys)) -} - -func TestTruncateOrDropTableWithForeignKeyReferred(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("use test") - - cases := []struct { - prepares []string - tbl string - truncateErr string - dropErr string - }{ - { - prepares: []string{ - "create table t1 (id int key, b int not null, index(b))", - "create table t2 (a int, b int, foreign key fk_b(b) references t1(b));", - }, - tbl: "t1", - truncateErr: "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk_b`)", - dropErr: "[ddl:3730]Cannot drop table 't1' referenced by a foreign key constraint 'fk_b' on table 't2'.", - }, - { - prepares: []string{ - "create table t1 (id int key, a varchar(10), index(a));", - "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", - }, - tbl: "t1", - truncateErr: "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk_b`)", - dropErr: "[ddl:3730]Cannot drop table 't1' referenced by a foreign key constraint 'fk_b' on table 't2'.", - }, - { - prepares: []string{ - "create table t1 (id int key, a varchar(10), index (a(10)));", - "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", - }, - tbl: "t1", - truncateErr: "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk_b`)", - dropErr: "[ddl:3730]Cannot drop table 't1' referenced by a foreign key constraint 'fk_b' on table 't2'.", - }, - } - - for _, ca := range cases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - for _, sql := range ca.prepares { - tk.MustExec(sql) - } - truncateSQL := fmt.Sprintf("truncate table %v", ca.tbl) - tk.MustExec("set @@foreign_key_checks=1;") - err := tk.ExecToErr(truncateSQL) - require.Error(t, err) - require.Equal(t, ca.truncateErr, err.Error()) - dropSQL := fmt.Sprintf("drop table %v", ca.tbl) - err = tk.ExecToErr(dropSQL) - require.Error(t, err) - require.Equal(t, ca.dropErr, err.Error()) - - tk.MustExec("set @@foreign_key_checks=0;") - tk.MustExec(truncateSQL) - } - passCases := [][]string{ - { - "create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))", - "truncate table t1", - "drop table t1", - }, - { - "create table t1 (id int key, a varchar(10), index (a(10)));", - "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", - "drop table t1, t2", - }, - { - "set @@foreign_key_checks=0;", - "create table t1 (id int key, a varchar(10), index (a(10)));", - "create table t2 (a int, b varchar(20), foreign key fk_b(b) references t1(a));", - "truncate table t1", - "drop table t1", - }, - } - for _, ca := range passCases { - tk.MustExec("drop table if exists t1, t2") - tk.MustExec("set @@foreign_key_checks=1;") - for _, sql := range ca { - tk.MustExec(sql) - } - } -} - func TestTruncateOrDropTableWithForeignKeyReferred2(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) d := dom.DDL() @@ -1108,106 +253,6 @@ func TestTruncateOrDropTableWithForeignKeyReferred2(t *testing.T) { require.Equal(t, "[ddl:1701]Cannot truncate a table referenced in a foreign key constraint (`test`.`t2` CONSTRAINT `fk`)", dropErr.Error()) } -func TestDropTableWithForeignKeyReferred(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - - tk.MustExec("create table t1 (id int key, b int, index(b));") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references t1(id));") - tk.MustExec("create table t3 (id int key, b int, foreign key fk_b(b) references t2(id));") - err := tk.ExecToErr("drop table if exists t1,t2;") - require.Error(t, err) - require.Equal(t, "[ddl:3730]Cannot drop table 't2' referenced by a foreign key constraint 'fk_b' on table 't3'.", err.Error()) - tk.MustQuery("show tables").Check(testkit.Rows("t1", "t2", "t3")) -} - -func TestDropIndexNeededInForeignKey(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1") - tk.MustExec("use test") - - cases := []struct { - prepares []string - drops []string - err string - }{ - { - prepares: []string{ - "create table t1 (id int key, b int, index idx (b))", - "create table t2 (a int, b int, index idx (b), foreign key fk_b(b) references t1(b));", - }, - drops: []string{ - "alter table t1 drop index idx", - "alter table t2 drop index idx", - }, - err: "[ddl:1553]Cannot drop index 'idx': needed in a foreign key constraint", - }, - { - prepares: []string{ - "create table t1 (id int, b int, index idx (id, b))", - "create table t2 (a int, b int, index idx (b, a), foreign key fk_b(b) references t1(id));", - }, - drops: []string{ - "alter table t1 drop index idx", - "alter table t2 drop index idx", - }, - err: "[ddl:1553]Cannot drop index 'idx': needed in a foreign key constraint", - }, - } - - for _, ca := range cases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - for _, sql := range ca.prepares { - tk.MustExec(sql) - } - for _, drop := range ca.drops { - // even disable foreign key check, still can't drop the index used by foreign key. - tk.MustExec("set @@foreign_key_checks=0;") - err := tk.ExecToErr(drop) - require.Error(t, err) - require.Equal(t, ca.err, err.Error()) - tk.MustExec("set @@foreign_key_checks=1;") - err = tk.ExecToErr(drop) - require.Error(t, err) - require.Equal(t, ca.err, err.Error()) - } - } - passCases := [][]string{ - { - "create table t1 (id int key, b int, index idxb (b))", - "create table t2 (a int, b int key, index idxa (a),index idxb (b), foreign key fk_b(b) references t1(id));", - "alter table t1 drop index idxb", - "alter table t2 drop index idxa", - "alter table t2 drop index idxb", - }, - { - "create table t1 (id int key, b int, index idxb (b), unique index idx(b, id))", - "create table t2 (a int, b int key, index idx (b, a),index idxb (b), index idxab(a, b), foreign key fk_b(b) references t1(b));", - "alter table t1 drop index idxb", - "alter table t1 add index idxb (b)", - "alter table t1 drop index idx", - "alter table t2 drop index idx", - "alter table t2 add index idx (b, a)", - "alter table t2 drop index idxb", - "alter table t2 drop index idxab", - }, - } - tk.MustExec("set @@foreign_key_checks=1;") - for _, ca := range passCases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - for _, sql := range ca { - tk.MustExec(sql) - } - } -} - func TestDropIndexNeededInForeignKey2(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) d := dom.DDL() @@ -1247,157 +292,6 @@ func TestDropIndexNeededInForeignKey2(t *testing.T) { require.Equal(t, "[ddl:1553]Cannot drop index 'idx2': needed in a foreign key constraint", dropErr.Error()) } -func getTableInfo(t *testing.T, dom *domain.Domain, db, tb string) *model.TableInfo { - err := dom.Reload() - require.NoError(t, err) - is := dom.InfoSchema() - tbl, err := is.TableByName(model.NewCIStr(db), model.NewCIStr(tb)) - require.NoError(t, err) - _, exist := is.TableByID(tbl.Meta().ID) - require.True(t, exist) - return tbl.Meta() -} - -func getTableInfoReferredForeignKeys(t *testing.T, dom *domain.Domain, db, tb string) []*model.ReferredFKInfo { - err := dom.Reload() - require.NoError(t, err) - return dom.InfoSchema().GetTableReferredForeignKeys(db, tb) -} - -func TestDropColumnWithForeignKey(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - - tk.MustExec("create table t1 (id int key, a int, b int, index(b), CONSTRAINT fk foreign key (a) references t1(b))") - tk.MustGetErrMsg("alter table t1 drop column a;", "[ddl:1828]Cannot drop column 'a': needed in a foreign key constraint 'fk'") - tk.MustGetErrMsg("alter table t1 drop column b;", "[ddl:1829]Cannot drop column 'b': needed in a foreign key constraint 'fk' of table 't1'") - - tk.MustExec("drop table t1") - tk.MustExec("create table t1 (id int key, b int, index(b));") - tk.MustExec("create table t2 (a int, b int, constraint fk foreign key (a) references t1(b));") - tk.MustGetErrMsg("alter table t1 drop column b;", "[ddl:1829]Cannot drop column 'b': needed in a foreign key constraint 'fk' of table 't2'") - tk.MustGetErrMsg("alter table t2 drop column a;", "[ddl:1828]Cannot drop column 'a': needed in a foreign key constraint 'fk'") -} - -func TestRenameColumnWithForeignKeyMetaInfo(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - - tk.MustExec("create table t1 (id int key, a int, b int, foreign key fk(a) references t1(id))") - tk.MustExec("alter table t1 change id kid int") - tk.MustExec("alter table t1 rename column a to aa") - tbl1Info := getTableInfo(t, dom, "test", "t1") - tb1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tbl1Info.ForeignKeys)) - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, "kid", tb1ReferredFKs[0].Cols[0].L) - require.Equal(t, "kid", tbl1Info.ForeignKeys[0].RefCols[0].L) - require.Equal(t, "aa", tbl1Info.ForeignKeys[0].Cols[0].L) - - tk.MustExec("drop table t1") - tk.MustExec("create table t1 (id int key, b int, index(b))") - tk.MustExec("create table t2 (a int, b int, foreign key fk(a) references t1(b));") - tk.MustExec("alter table t2 change a aa int") - tbl1Info = getTableInfo(t, dom, "test", "t1") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) - require.Equal(t, "b", tb1ReferredFKs[0].Cols[0].L) - tbl2Info := getTableInfo(t, dom, "test", "t2") - tb2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].Cols)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].RefCols)) - require.Equal(t, "aa", tbl2Info.ForeignKeys[0].Cols[0].L) - require.Equal(t, "b", tbl2Info.ForeignKeys[0].RefCols[0].L) - - tk.MustExec("alter table t1 change id kid int") - tk.MustExec("alter table t1 change b bb int") - tbl1Info = getTableInfo(t, dom, "test", "t1") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 1, len(tb1ReferredFKs)) - require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) - require.Equal(t, "bb", tb1ReferredFKs[0].Cols[0].L) - tbl2Info = getTableInfo(t, dom, "test", "t2") - tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].Cols)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].RefCols)) - require.Equal(t, "aa", tbl2Info.ForeignKeys[0].Cols[0].L) - require.Equal(t, "bb", tbl2Info.ForeignKeys[0].RefCols[0].L) - - tk.MustExec("drop table t1, t2") - tk.MustExec("create table t1 (id int key, b int, index(b))") - tk.MustExec("create table t2 (a int, b int, foreign key (a) references t1(b), foreign key (b) references t1(b));") - tk.MustExec("alter table t1 change b bb int") - tbl1Info = getTableInfo(t, dom, "test", "t1") - tb1ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t1") - require.Equal(t, 2, len(tb1ReferredFKs)) - require.Equal(t, 1, len(tb1ReferredFKs[0].Cols)) - require.Equal(t, 1, len(tb1ReferredFKs[1].Cols)) - require.Equal(t, "bb", tb1ReferredFKs[0].Cols[0].L) - require.Equal(t, "bb", tb1ReferredFKs[1].Cols[0].L) - tbl2Info = getTableInfo(t, dom, "test", "t2") - tb2ReferredFKs = getTableInfoReferredForeignKeys(t, dom, "test", "t2") - require.Equal(t, 0, len(tb2ReferredFKs)) - require.Equal(t, 2, len(tbl2Info.ForeignKeys)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].Cols)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[0].RefCols)) - require.Equal(t, "a", tbl2Info.ForeignKeys[0].Cols[0].L) - require.Equal(t, "bb", tbl2Info.ForeignKeys[0].RefCols[0].L) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[1].Cols)) - require.Equal(t, 1, len(tbl2Info.ForeignKeys[1].RefCols)) - require.Equal(t, "b", tbl2Info.ForeignKeys[1].Cols[0].L) - require.Equal(t, "bb", tbl2Info.ForeignKeys[1].RefCols[0].L) - tk.MustExec("alter table t2 rename column a to aa") - tk.MustExec("alter table t2 change b bb int") - tk.MustQuery("show create table t2"). - Check(testkit.Rows("t2 CREATE TABLE `t2` (\n" + - " `aa` int(11) DEFAULT NULL,\n" + - " `bb` int(11) DEFAULT NULL,\n" + - " KEY `fk_1` (`aa`),\n KEY `fk_2` (`bb`),\n" + - " CONSTRAINT `fk_1` FOREIGN KEY (`aa`) REFERENCES `test`.`t1` (`bb`),\n" + - " CONSTRAINT `fk_2` FOREIGN KEY (`bb`) REFERENCES `test`.`t1` (`bb`)\n" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) -} - -func TestDropDatabaseWithForeignKeyReferred(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - - tk.MustExec("create table t1 (id int key, b int, index(b));") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references t1(id));") - tk.MustExec("create database test2") - tk.MustExec("create table test2.t3 (id int key, b int, foreign key fk_b(b) references test.t2(id));") - err := tk.ExecToErr("drop database test;") - require.Error(t, err) - require.Equal(t, "[ddl:3730]Cannot drop table 't2' referenced by a foreign key constraint 'fk_b' on table 't3'.", err.Error()) - tk.MustExec("set @@foreign_key_checks=0;") - tk.MustExec("drop database test") - - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("create database test") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, b int, index(b));") - tk.MustExec("create table t2 (id int key, b int, foreign key fk_b(b) references t1(id));") - err = tk.ExecToErr("drop database test;") - require.Error(t, err) - require.Equal(t, "[ddl:3730]Cannot drop table 't2' referenced by a foreign key constraint 'fk_b' on table 't3'.", err.Error()) - tk.MustExec("drop table test2.t3") - tk.MustExec("drop database test") -} - func TestDropDatabaseWithForeignKeyReferred2(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) d := dom.DDL() @@ -1442,79 +336,6 @@ func TestDropDatabaseWithForeignKeyReferred2(t *testing.T) { tk.MustExec("drop database test") } -func TestAddForeignKey(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - tk.MustExec("create table t1 (id int key, b int);") - tk.MustExec("create table t2 (id int key, b int);") - tk.MustExec("alter table t2 add index(b)") - tk.MustExec("alter table t2 add foreign key (b) references t1(id);") - tbl2Info := getTableInfo(t, dom, "test", "t2") - require.Equal(t, int64(1), tbl2Info.MaxForeignKeyID) - tk.MustGetDBError("alter table t2 add foreign key (b) references t1(b);", infoschema.ErrForeignKeyNoIndexInParent) - tk.MustExec("alter table t1 add index(b)") - tk.MustExec("alter table t2 add foreign key (b) references t1(b);") - tk.MustGetDBError("alter table t2 add foreign key (b) references t2(b);", infoschema.ErrCannotAddForeign) - // Test auto-create index when create foreign key constraint. - tk.MustExec("drop table if exists t1,t2") - tk.MustExec("create table t1 (id int key, b int, index(b));") - tk.MustExec("create table t2 (id int key, b int);") - tk.MustExec("alter table t2 add constraint fk foreign key (b) references t1(b);") - tbl2Info = getTableInfo(t, dom, "test", "t2") - require.Equal(t, 1, len(tbl2Info.Indices)) - require.Equal(t, "fk", tbl2Info.Indices[0].Name.L) - require.Equal(t, model.StatePublic, tbl2Info.Indices[0].State) - tk.MustQuery("select b from t2 use index(fk)").Check(testkit.Rows()) - res := tk.MustQuery("explain select b from t2 use index(fk)") - plan := bytes.NewBuffer(nil) - rows := res.Rows() - for _, row := range rows { - for _, c := range row { - plan.WriteString(c.(string)) - plan.WriteString(" ") - } - } - require.Regexp(t, ".*IndexReader.*index:fk.*", plan.String()) - - // Test add multiple foreign key constraint in one statement. - tk.MustExec("alter table t2 add column c int, add column d int, add column e int;") - tk.MustExec("alter table t2 add index idx_c(c, d, e)") - tk.MustExec("alter table t2 add constraint fk_c foreign key (c) references t1(b), " + - "add constraint fk_d foreign key (d) references t1(b)," + - "add constraint fk_e foreign key (e) references t1(b)") - tbl2Info = getTableInfo(t, dom, "test", "t2") - require.Equal(t, 4, len(tbl2Info.Indices)) - names := []string{"fk", "idx_c", "fk_d", "fk_e"} - for i, idx := range tbl2Info.Indices { - require.Equal(t, names[i], idx.Name.L) - require.Equal(t, model.StatePublic, idx.State) - } - names = []string{"fk", "fk_c", "fk_d", "fk_e"} - for i, fkInfo := range tbl2Info.ForeignKeys { - require.Equal(t, names[i], fkInfo.Name.L) - require.Equal(t, model.StatePublic, fkInfo.State) - } - tk.MustGetDBError("insert into t2 (id, b) values (1,1)", plannercore.ErrNoReferencedRow2) - tk.MustGetDBError("insert into t2 (id, c) values (1,1)", plannercore.ErrNoReferencedRow2) - tk.MustGetDBError("insert into t2 (id, d) values (1,1)", plannercore.ErrNoReferencedRow2) - tk.MustGetDBError("insert into t2 (id, e) values (1,1)", plannercore.ErrNoReferencedRow2) - - // Test add multiple foreign key constraint in one statement but failed. - tk.MustExec("alter table t2 drop foreign key fk") - tk.MustExec("alter table t2 drop foreign key fk_c") - tk.MustExec("alter table t2 drop foreign key fk_d") - tk.MustExec("alter table t2 drop foreign key fk_e") - tk.MustGetDBError("alter table t2 add constraint fk_c foreign key (c) references t1(b), "+ - "add constraint fk_d foreign key (d) references t1(b),"+ - "add constraint fk_e foreign key (e) references t1(unknown_col)", infoschema.ErrForeignKeyNoColumnInParent) - tbl2Info = getTableInfo(t, dom, "test", "t2") - require.Equal(t, 0, len(tbl2Info.ForeignKeys)) - tk.MustGetDBError("alter table t2 drop index idx_c, add constraint fk_c foreign key (c) references t1(b)", dbterror.ErrDropIndexNeededInForeignKey) -} - func TestAddForeignKey2(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) d := dom.DDL() @@ -1597,309 +418,3 @@ func TestAddForeignKey3(t *testing.T) { tk.MustQuery("select * from t1 order by id").Check(testkit.Rows("1 1", "2 2", "3 3")) tk.MustQuery("select * from t2 order by id").Check(testkit.Rows("1 1", "2 2", "3 3")) } - -func TestAlterTableAddForeignKeyError(t *testing.T) { - store, _ := testkit.CreateMockStoreAndDomain(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=1;") - tk.MustExec("use test") - cases := []struct { - prepares []string - alter string - err string - }{ - { - prepares: []string{ - "create table t1 (id int, a int, b int);", - "create table t2 (a int, b int);", - }, - alter: "alter table t2 add foreign key fk(b) references t_unknown(id)", - err: "[schema:1824]Failed to open the referenced table 't_unknown'", - }, - { - prepares: []string{ - "create table t1 (id int, a int, b int);", - "create table t2 (a int, b int);", - }, - alter: "alter table t2 add foreign key fk(b) references t1(c_unknown)", - err: "[schema:3734]Failed to add the foreign key constraint. Missing column 'c_unknown' for constraint 'fk' in the referenced table 't1'", - }, - { - prepares: []string{ - "create table t1 (id int, a int, b int);", - "create table t2 (a int, b int);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(b)", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", - }, - { - prepares: []string{ - "create table t1 (id int, a int, b int not null, index(b));", - "create table t2 (a int, b int not null);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(b) on update set null", - err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", - }, - { - prepares: []string{ - "create table t1 (id int, a int, b int not null, index(b));", - "create table t2 (a int, b int not null);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(b) on delete set null", - err: "[schema:1830]Column 'b' cannot be NOT NULL: needed in a foreign key constraint 'fk_b' SET NULL", - }, - { - prepares: []string{ - "create table t1 (id int key, a int, b int as (a) virtual, index(b));", - "create table t2 (a int, b int);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(b)", - err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", - }, - { - prepares: []string{ - "create table t1 (id int key, a int, b int, index(b));", - "create table t2 (a int, b int as (a) virtual);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(b)", - err: "[schema:3733]Foreign key 'fk_b' uses virtual column 'b' which is not supported.", - }, - { - prepares: []string{ - "create table t1 (id int key, a int);", - "create table t2 (a int, b varchar(10));", - }, - alter: "alter table t2 add foreign key fk(b) references t1(id)", - err: "[ddl:3780]Referencing column 'b' and referenced column 'id' in foreign key constraint 'fk' are incompatible.", - }, - { - prepares: []string{ - "create table t1 (id int key, a int not null, index(a));", - "create table t2 (a int, b int unsigned);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(a)", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - prepares: []string{ - "create table t1 (id int key, a bigint, index(a));", - "create table t2 (a int, b int);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(a)", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - prepares: []string{ - "create table t1 (id int key, a varchar(10) charset utf8, index(a));", - "create table t2 (a int, b varchar(10) charset utf8mb4);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(a)", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - prepares: []string{ - "create table t1 (id int key, a varchar(10) collate utf8_bin, index(a));", - "create table t2 (a int, b varchar(10) collate utf8mb4_bin);", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(a)", - err: "[ddl:3780]Referencing column 'b' and referenced column 'a' in foreign key constraint 'fk_b' are incompatible.", - }, - { - prepares: []string{ - "create table t1 (id int key, a varchar(10));", - "create table t2 (a int, b varchar(10));", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(a)", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", - }, - { - prepares: []string{ - "create table t1 (id int key, a varchar(10), index (a(5)));", - "create table t2 (a int, b varchar(10));", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(a)", - err: "[schema:1822]Failed to add the foreign key constraint. Missing index for constraint 'fk_b' in the referenced table 't1'", - }, - { - prepares: []string{ - "create table t1 (id int key, a int)", - "create table t2 (id int, b int, index(b))", - "insert into t2 values (1,1)", - }, - alter: "alter table t2 add foreign key fk_b(b) references t1(id)", - err: "[ddl:1452]Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`b`) REFERENCES `t1` (`id`))", - }, - { - prepares: []string{ - "create table t1 (id int, a int, b int, index(a,b))", - "create table t2 (id int, a int, b int, index(a,b))", - "insert into t2 values (1, 1, null), (2, null, 1), (3, null, null), (4, 1, 1)", - }, - alter: "alter table t2 add foreign key fk_b(a, b) references t1(a, b)", - err: "[ddl:1452]Cannot add or update a child row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `fk_b` FOREIGN KEY (`a`, `b`) REFERENCES `t1` (`a`, `b`))", - }, - { - prepares: []string{ - "create table t1 (id int key);", - "create table t2 (a int, b int unique);", - }, - alter: "alter table t2 add foreign key name5678901234567890123456789012345678901234567890123456789012345(b) references t1(id)", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - { - prepares: []string{ - "create table t1 (id int key);", - "create table t2 (a int, b int unique);", - }, - alter: "alter table t2 add constraint name5678901234567890123456789012345678901234567890123456789012345 foreign key (b) references t1(id)", - err: "[ddl:1059]Identifier name 'name5678901234567890123456789012345678901234567890123456789012345' is too long", - }, - } - for i, ca := range cases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - for _, sql := range ca.prepares { - tk.MustExec(sql) - } - err := tk.ExecToErr(ca.alter) - require.Error(t, err, fmt.Sprintf("%v, %v", i, ca.err)) - require.Equal(t, ca.err, err.Error()) - } - - passCases := [][]string{ - { - "create table t1 (id int key, a int, b int, index(a))", - "alter table t1 add foreign key fk(a) references t1(id)", - }, - { - "create table t1 (id int key, b int not null, index(b))", - "create table t2 (a int, b int, index(b));", - "alter table t2 add foreign key fk_b(b) references t1(b)", - }, - { - "create table t1 (id int key, a varchar(10), index(a));", - "create table t2 (a int, b varchar(20), index(b));", - "alter table t2 add foreign key fk_b(b) references t1(a)", - }, - { - "create table t1 (id int key, a decimal(10,5), index(a));", - "create table t2 (a int, b decimal(20, 10), index(b));", - "alter table t2 add foreign key fk_b(b) references t1(a)", - }, - { - "create table t1 (id int key, a varchar(10), index (a(10)));", - "create table t2 (a int, b varchar(20), index(b));", - "alter table t2 add foreign key fk_b(b) references t1(a)", - }, - { - "create table t1 (id int key, a int)", - "create table t2 (id int, b int, index(b))", - "insert into t2 values (1, null)", - "alter table t2 add foreign key fk_b(b) references t1(id)", - }, - { - "create table t1 (id int, a int, b int, index(a,b))", - "create table t2 (id int, a int, b int, index(a,b))", - "insert into t2 values (1, 1, null), (2, null, 1), (3, null, null)", - "alter table t2 add foreign key fk_b(a, b) references t1(a, b)", - }, - { - "set @@foreign_key_checks=0;", - "create table t1 (id int, a int, b int, index(a,b))", - "create table t2 (id int, a int, b int, index(a,b))", - "insert into t2 values (1, 1, 1)", - "alter table t2 add foreign key fk_b(a, b) references t1(a, b)", - "set @@foreign_key_checks=1;", - }, - { - "set @@foreign_key_checks=0;", - "create table t2 (a int, b int, index(b));", - "alter table t2 add foreign key fk_b(b) references t_unknown(a)", - "set @@foreign_key_checks=1;", - }, - { - "create table t1 (id int key);", - "create table t2 (a int, b int unique);", - "alter table t2 add foreign key name567890123456789012345678901234567890123456789012345678901234(b) references t1(id)", - }, - } - for _, ca := range passCases { - tk.MustExec("drop table if exists t2") - tk.MustExec("drop table if exists t1") - for _, sql := range ca { - tk.MustExec(sql) - } - } -} - -func TestRenameTablesWithForeignKey(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@global.tidb_enable_foreign_key=1") - tk.MustExec("set @@foreign_key_checks=0;") - tk.MustExec("create database test1") - tk.MustExec("create database test2") - tk.MustExec("use test") - tk.MustExec("create table t0 (id int key, b int);") - tk.MustExec("create table t1 (id int key, b int, index(b), foreign key fk(b) references t2(id));") - tk.MustExec("create table t2 (id int key, b int, index(b), foreign key fk(b) references t1(id));") - tk.MustExec("rename table test.t1 to test1.tt1, test.t2 to test2.tt2, test.t0 to test.tt0") - - // check the schema diff - diff := getLatestSchemaDiff(t, tk) - require.Equal(t, model.ActionRenameTables, diff.Type) - require.Equal(t, 3, len(diff.AffectedOpts)) - - // check referred foreign key information. - t1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t1") - t2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test", "t2") - require.Equal(t, 0, len(t1ReferredFKs)) - require.Equal(t, 0, len(t2ReferredFKs)) - tt1ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test1", "tt1") - tt2ReferredFKs := getTableInfoReferredForeignKeys(t, dom, "test2", "tt2") - require.Equal(t, 1, len(tt1ReferredFKs)) - require.Equal(t, 1, len(tt2ReferredFKs)) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test2"), - ChildTable: model.NewCIStr("tt2"), - ChildFKName: model.NewCIStr("fk"), - }, *tt1ReferredFKs[0]) - require.Equal(t, model.ReferredFKInfo{ - Cols: []model.CIStr{model.NewCIStr("id")}, - ChildSchema: model.NewCIStr("test1"), - ChildTable: model.NewCIStr("tt1"), - ChildFKName: model.NewCIStr("fk"), - }, *tt2ReferredFKs[0]) - - // check show create table information - tk.MustQuery("show create table test1.tt1").Check(testkit.Rows("tt1 CREATE TABLE `tt1` (\n" + - " `id` int(11) NOT NULL,\n" + - " `b` int(11) DEFAULT NULL,\n" + - " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + - " KEY `b` (`b`),\n" + - " CONSTRAINT `fk` FOREIGN KEY (`b`) REFERENCES `test2`.`tt2` (`id`)\n" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) - tk.MustQuery("show create table test2.tt2").Check(testkit.Rows("tt2 CREATE TABLE `tt2` (\n" + - " `id` int(11) NOT NULL,\n" + - " `b` int(11) DEFAULT NULL,\n" + - " PRIMARY KEY (`id`) /*T![clustered_index] CLUSTERED */,\n" + - " KEY `b` (`b`),\n" + - " CONSTRAINT `fk` FOREIGN KEY (`b`) REFERENCES `test1`.`tt1` (`id`)\n" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) -} - -func getLatestSchemaDiff(t *testing.T, tk *testkit.TestKit) *model.SchemaDiff { - ctx := tk.Session() - err := sessiontxn.NewTxn(context.Background(), ctx) - require.NoError(t, err) - txn, err := ctx.Txn(true) - require.NoError(t, err) - m := meta.NewMeta(txn) - ver, err := m.GetSchemaVersion() - require.NoError(t, err) - diff, err := m.GetSchemaDiff(ver) - require.NoError(t, err) - return diff -} diff --git a/ddl/index.go b/ddl/index.go index 69622ec3b5bef..9daa30fe93370 100644 --- a/ddl/index.go +++ b/ddl/index.go @@ -44,6 +44,7 @@ import ( "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util" + "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/dbterror" "github.com/pingcap/tidb/util/logutil" decoder "github.com/pingcap/tidb/util/rowDecoder" @@ -710,7 +711,10 @@ func pickBackfillType(w *worker, job *model.Job) model.ReorgType { // canUseIngest indicates whether it can use ingest way to backfill index. func canUseIngest(w *worker) bool { // We only allow one task to use ingest at the same time, in order to limit the CPU usage. - if len(ingest.LitBackCtxMgr.Keys()) > 0 { + activeJobIDs := ingest.LitBackCtxMgr.Keys() + if len(activeJobIDs) > 0 { + logutil.BgLogger().Info("[ddl-ingest] ingest backfill is already in use by another DDL job", + zap.Int64("job ID", activeJobIDs[0])) return false } ctx, err := w.sessPool.get() @@ -753,12 +757,15 @@ func IngestJobsNotExisted(ctx sessionctx.Context) bool { } // tryFallbackToTxnMerge changes the reorg type to txn-merge if the lightning backfill meets something wrong. -func tryFallbackToTxnMerge(job *model.Job, err error) { +func tryFallbackToTxnMerge(job *model.Job, err error) error { if job.State != model.JobStateRollingback { logutil.BgLogger().Info("[ddl] fallback to txn-merge backfill process", zap.Error(err)) job.ReorgMeta.ReorgTp = model.ReorgTypeTxnMerge job.SnapshotVer = 0 + job.RowCount = 0 + return nil } + return err } func doReorgWorkForCreateIndexMultiSchema(w *worker, d *ddlCtx, t *meta.Meta, job *model.Job, @@ -782,8 +789,10 @@ func doReorgWorkForCreateIndex(w *worker, d *ddlCtx, t *meta.Meta, job *model.Jo } switch indexInfo.BackfillState { case model.BackfillStateRunning: - logutil.BgLogger().Info("[ddl] index backfill state running", zap.Int64("job ID", job.ID), - zap.String("table", tbl.Meta().Name.O), zap.String("index", indexInfo.Name.O)) + logutil.BgLogger().Info("[ddl] index backfill state running", + zap.Int64("job ID", job.ID), zap.String("table", tbl.Meta().Name.O), + zap.Bool("ingest mode", bfProcess == model.ReorgTypeLitMerge), + zap.String("index", indexInfo.Name.O)) switch bfProcess { case model.ReorgTypeLitMerge: bc, ok := ingest.LitBackCtxMgr.Load(job.ID) @@ -793,17 +802,18 @@ func doReorgWorkForCreateIndex(w *worker, d *ddlCtx, t *meta.Meta, job *model.Jo if !ok && job.SnapshotVer != 0 { // The owner is crashed or changed, we need to restart the backfill. job.SnapshotVer = 0 + job.RowCount = 0 return false, ver, nil } bc, err = ingest.LitBackCtxMgr.Register(w.ctx, indexInfo.Unique, job.ID, job.ReorgMeta.SQLMode) if err != nil { - tryFallbackToTxnMerge(job, err) + err = tryFallbackToTxnMerge(job, err) return false, ver, errors.Trace(err) } done, ver, err = runReorgJobAndHandleErr(w, d, t, job, tbl, indexInfo, false) if err != nil { ingest.LitBackCtxMgr.Unregister(job.ID) - tryFallbackToTxnMerge(job, err) + err = tryFallbackToTxnMerge(job, err) return false, ver, errors.Trace(err) } if !done { @@ -816,7 +826,7 @@ func doReorgWorkForCreateIndex(w *worker, d *ddlCtx, t *meta.Meta, job *model.Jo ver, err = convertAddIdxJob2RollbackJob(d, t, job, tbl.Meta(), indexInfo, err) } else { logutil.BgLogger().Warn("[ddl] lightning import error", zap.Error(err)) - tryFallbackToTxnMerge(job, err) + err = tryFallbackToTxnMerge(job, err) } ingest.LitBackCtxMgr.Unregister(job.ID) return false, ver, errors.Trace(err) @@ -1176,8 +1186,9 @@ type baseIndexWorker struct { type addIndexWorker struct { baseIndexWorker - index table.Index - writerCtx *ingest.WriterContext + index table.Index + writerCtx *ingest.WriterContext + copReqSenderPool *copReqSenderPool // The following attributes are used to reduce memory allocation. idxKeyBufs [][]byte @@ -1204,7 +1215,7 @@ func newAddIndexWorker(sessCtx sessionctx.Context, id int, t table.PhysicalTable } ei, err := bc.EngMgr.Register(bc, job, reorgInfo.currElement.ID) if err != nil { - return nil, errors.Trace(errors.New(ingest.LitErrCreateEngineFail)) + return nil, errors.Trace(err) } lwCtx, err = ei.NewWriterCtx(id) if err != nil { @@ -1407,6 +1418,9 @@ func (w *addIndexWorker) checkHandleExists(key kv.Key, value []byte, handle kv.H if err != nil { str = string(val) } + if types.IsBinaryStr(colInfos[i].Ft) || types.IsTypeBit(colInfos[i].Ft) { + str = util.FmtNonASCIIPrintableCharToHex(str) + } valueStr = append(valueStr, str) } return kv.ErrKeyExists.FastGenByArgs(strings.Join(valueStr, "-"), indexName) @@ -1481,7 +1495,7 @@ func (w *addIndexWorker) BackfillDataInTxn(handleRange reorgBackfillTask) (taskC oprStartTime := time.Now() ctx := kv.WithInternalSourceType(context.Background(), w.jobContext.ddlJobSourceType()) - errInTxn = kv.RunInNewTxn(ctx, w.sessCtx.GetStore(), true, func(ctx context.Context, txn kv.Transaction) error { + errInTxn = kv.RunInNewTxn(ctx, w.sessCtx.GetStore(), true, func(ctx context.Context, txn kv.Transaction) (err error) { taskCtx.addedCount = 0 taskCtx.scanCount = 0 txn.SetOption(kv.Priority, w.priority) @@ -1489,7 +1503,18 @@ func (w *addIndexWorker) BackfillDataInTxn(handleRange reorgBackfillTask) (taskC txn.SetOption(kv.ResourceGroupTagger, tagger) } - idxRecords, nextKey, taskDone, err := w.fetchRowColVals(txn, handleRange) + var ( + idxRecords []*indexRecord + copChunk *chunk.Chunk // only used by the coprocessor request sender. + nextKey kv.Key + taskDone bool + ) + if w.copReqSenderPool != nil { + idxRecords, copChunk, nextKey, taskDone, err = w.copReqSenderPool.fetchRowColValsFromCop(handleRange) + defer w.copReqSenderPool.recycleIdxRecordsAndChunk(idxRecords, copChunk) + } else { + idxRecords, nextKey, taskDone, err = w.fetchRowColVals(txn, handleRange) + } if err != nil { return errors.Trace(err) } @@ -1829,10 +1854,10 @@ func (w *worker) updateReorgInfoForPartitions(t table.PartitionedTable, reorg *r // Write the reorg info to store so the whole reorganize process can recover from panic. err = reorg.UpdateReorgMeta(reorg.StartKey, w.sessPool) - logutil.BgLogger().Info("[ddl] job update reorgInfo", zap.Int64("jobID", reorg.Job.ID), - zap.ByteString("elementType", reorg.currElement.TypeKey), zap.Int64("elementID", reorg.currElement.ID), - zap.Int64("partitionTableID", pid), zap.String("startHandle", tryDecodeToHandleString(start)), - zap.String("endHandle", tryDecodeToHandleString(end)), zap.Error(err)) + logutil.BgLogger().Info("[ddl] job update reorg info", zap.Int64("jobID", reorg.Job.ID), + zap.ByteString("element type", reorg.currElement.TypeKey), zap.Int64("element ID", reorg.currElement.ID), + zap.Int64("partition table ID", pid), zap.String("start key", hex.EncodeToString(start)), + zap.String("end key", hex.EncodeToString(end)), zap.Error(err)) return false, errors.Trace(err) } diff --git a/ddl/index_change_test.go b/ddl/index_change_test.go index b5d2c9d6ce983..f9dcc99154dc5 100644 --- a/ddl/index_change_test.go +++ b/ddl/index_change_test.go @@ -219,6 +219,7 @@ func checkAddWriteOnlyForAddIndex(ctx sessionctx.Context, delOnlyTbl, writeOnlyT } func checkAddPublicForAddIndex(ctx sessionctx.Context, writeTbl, publicTbl table.Table) error { + var err1 error // WriteOnlyTable: insert t values (6, 6) err := sessiontxn.NewTxn(context.Background(), ctx) if err != nil { @@ -229,7 +230,11 @@ func checkAddPublicForAddIndex(ctx sessionctx.Context, writeTbl, publicTbl table return errors.Trace(err) } err = checkIndexExists(ctx, publicTbl, 6, 6, true) - if err != nil { + if ddl.IsEnableFastReorg() { + // Need check temp index also. + err1 = checkIndexExists(ctx, writeTbl, 6, 6, true) + } + if err != nil && err1 != nil { return errors.Trace(err) } // PublicTable: insert t values (7, 7) @@ -248,10 +253,18 @@ func checkAddPublicForAddIndex(ctx sessionctx.Context, writeTbl, publicTbl table return errors.Trace(err) } err = checkIndexExists(ctx, publicTbl, 5, 7, true) - if err != nil { + if ddl.IsEnableFastReorg() { + // Need check temp index also. + err1 = checkIndexExists(ctx, writeTbl, 5, 7, true) + } + if err != nil && err1 != nil { return errors.Trace(err) } - err = checkIndexExists(ctx, publicTbl, 7, 7, false) + if ddl.IsEnableFastReorg() { + err = checkIndexExists(ctx, writeTbl, 7, 7, false) + } else { + err = checkIndexExists(ctx, publicTbl, 7, 7, false) + } if err != nil { return errors.Trace(err) } @@ -281,7 +294,11 @@ func checkAddPublicForAddIndex(ctx sessionctx.Context, writeTbl, publicTbl table idxVal := row[1].GetInt64() handle := row[0].GetInt64() err = checkIndexExists(ctx, publicTbl, idxVal, handle, true) - if err != nil { + if ddl.IsEnableFastReorg() { + // Need check temp index also. + err1 = checkIndexExists(ctx, writeTbl, idxVal, handle, true) + } + if err != nil && err1 != nil { return errors.Trace(err) } } diff --git a/ddl/index_cop.go b/ddl/index_cop.go new file mode 100644 index 0000000000000..23b3f5dcc9cd5 --- /dev/null +++ b/ddl/index_cop.go @@ -0,0 +1,500 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ddl + +import ( + "context" + "sync" + "time" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/distsql" + "github.com/pingcap/tidb/expression" + "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/parser/terror" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessionctx/stmtctx" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/statistics" + "github.com/pingcap/tidb/table" + "github.com/pingcap/tidb/table/tables" + "github.com/pingcap/tidb/tablecodec" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util" + "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/codec" + "github.com/pingcap/tidb/util/generic" + "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/timeutil" + "github.com/pingcap/tipb/go-tipb" + "go.uber.org/zap" +) + +// copReadBatchSize is the batch size of coprocessor read. +// It multiplies the tidb_ddl_reorg_batch_size by 10 to avoid +// sending too many cop requests for the same handle range. +func copReadBatchSize() int { + return 10 * int(variable.GetDDLReorgBatchSize()) +} + +// copReadChunkPoolSize is the size of chunk pool, which +// represents the max concurrent ongoing coprocessor requests. +// It multiplies the tidb_ddl_reorg_worker_cnt by 10. +func copReadChunkPoolSize() int { + return 10 * int(variable.GetDDLReorgWorkerCounter()) +} + +func (c *copReqSenderPool) fetchRowColValsFromCop(handleRange reorgBackfillTask) ([]*indexRecord, *chunk.Chunk, kv.Key, bool, error) { + ticker := time.NewTicker(500 * time.Millisecond) + defer ticker.Stop() + for { + select { + case rs, ok := <-c.resultsCh: + if !ok { + logutil.BgLogger().Info("[ddl-ingest] cop-response channel is closed", + zap.Int("id", handleRange.id), zap.String("task", handleRange.String())) + return nil, nil, handleRange.endKey, true, nil + } + if rs.err != nil { + return nil, nil, handleRange.startKey, false, rs.err + } + if rs.done { + logutil.BgLogger().Info("[ddl-ingest] finish a cop-request task", + zap.Int("id", rs.id), zap.Int("total", rs.total)) + c.results.Store(rs.id, struct{}{}) + } + if _, found := c.results.Load(handleRange.id); found { + logutil.BgLogger().Info("[ddl-ingest] task is found in results", + zap.Int("id", handleRange.id), zap.String("task", handleRange.String())) + c.results.Delete(handleRange.id) + return rs.records, rs.chunk, handleRange.endKey, true, nil + } + return rs.records, rs.chunk, handleRange.startKey, false, nil + case <-ticker.C: + logutil.BgLogger().Info("[ddl-ingest] cop-request result channel is empty", + zap.Int("id", handleRange.id)) + if _, found := c.results.Load(handleRange.id); found { + c.results.Delete(handleRange.id) + return nil, nil, handleRange.endKey, true, nil + } + } + } +} + +type copReqSenderPool struct { + tasksCh chan *reorgBackfillTask + resultsCh chan idxRecResult + results generic.SyncMap[int, struct{}] + + ctx context.Context + copCtx *copContext + startTS uint64 + + senders []*copReqSender + wg sync.WaitGroup + + idxBufPool chan []*indexRecord + srcChkPool chan *chunk.Chunk +} + +type copReqSender struct { + senderPool *copReqSenderPool + + ctx context.Context + cancel context.CancelFunc +} + +func (c *copReqSender) run() { + p := c.senderPool + defer p.wg.Done() + for { + if util.HasCancelled(c.ctx) { + return + } + task, ok := <-p.tasksCh + if !ok { + return + } + logutil.BgLogger().Info("[ddl-ingest] start a cop-request task", + zap.Int("id", task.id), zap.String("task", task.String())) + rs, err := p.copCtx.buildTableScan(p.ctx, p.startTS, task.startKey, task.excludedEndKey()) + if err != nil { + p.resultsCh <- idxRecResult{id: task.id, err: err} + return + } + var done bool + var total int + for !done { + idxRec, srcChk := p.getIndexRecordsAndChunks() + idxRec, done, err = p.copCtx.fetchTableScanResult(p.ctx, rs, srcChk, idxRec) + if err != nil { + p.resultsCh <- idxRecResult{id: task.id, err: err} + p.recycleIdxRecordsAndChunk(idxRec, srcChk) + terror.Call(rs.Close) + return + } + total += len(idxRec) + p.resultsCh <- idxRecResult{id: task.id, records: idxRec, chunk: srcChk, done: done, total: total} + } + terror.Call(rs.Close) + } +} + +func newCopReqSenderPool(ctx context.Context, copCtx *copContext, startTS uint64) *copReqSenderPool { + poolSize := copReadChunkPoolSize() + idxBufPool := make(chan []*indexRecord, poolSize) + srcChkPool := make(chan *chunk.Chunk, poolSize) + for i := 0; i < poolSize; i++ { + idxBufPool <- make([]*indexRecord, 0, copReadBatchSize()) + srcChkPool <- chunk.NewChunkWithCapacity(copCtx.fieldTps, copReadBatchSize()) + } + return &copReqSenderPool{ + tasksCh: make(chan *reorgBackfillTask, backfillTaskChanSize), + resultsCh: make(chan idxRecResult, backfillTaskChanSize), + results: generic.NewSyncMap[int, struct{}](10), + ctx: ctx, + copCtx: copCtx, + startTS: startTS, + senders: make([]*copReqSender, 0, variable.GetDDLReorgWorkerCounter()), + wg: sync.WaitGroup{}, + idxBufPool: idxBufPool, + srcChkPool: srcChkPool, + } +} + +func (c *copReqSenderPool) sendTask(task *reorgBackfillTask) { + c.tasksCh <- task +} + +func (c *copReqSenderPool) adjustSize(n int) { + // Add some senders. + for i := len(c.senders); i < n; i++ { + ctx, cancel := context.WithCancel(c.ctx) + c.senders = append(c.senders, &copReqSender{ + senderPool: c, + ctx: ctx, + cancel: cancel, + }) + c.wg.Add(1) + go c.senders[i].run() + } + // Remove some senders. + if n < len(c.senders) { + for i := n; i < len(c.senders); i++ { + c.senders[i].cancel() + } + c.senders = c.senders[:n] + } +} + +func (c *copReqSenderPool) close() { + logutil.BgLogger().Info("[ddl-ingest] close cop-request sender pool", zap.Int("results not handled", len(c.results.Keys()))) + close(c.tasksCh) + for _, w := range c.senders { + w.cancel() + } + cleanupWg := util.WaitGroupWrapper{} + cleanupWg.Run(c.drainResults) + // Wait for all cop-req senders to exit. + c.wg.Wait() + close(c.resultsCh) + cleanupWg.Wait() + close(c.idxBufPool) + close(c.srcChkPool) +} + +func (c *copReqSenderPool) drainResults() { + // Consume the rest results because the writers are inactive anymore. + for rs := range c.resultsCh { + c.recycleIdxRecordsAndChunk(rs.records, rs.chunk) + } +} + +func (c *copReqSenderPool) getIndexRecordsAndChunks() ([]*indexRecord, *chunk.Chunk) { + ir := <-c.idxBufPool + chk := <-c.srcChkPool + newCap := copReadBatchSize() + if chk.Capacity() != newCap { + chk = chunk.NewChunkWithCapacity(c.copCtx.fieldTps, newCap) + } + chk.Reset() + return ir[:0], chk +} + +// recycleIdxRecordsAndChunk puts the index record slice and the chunk back to the pool for reuse. +func (c *copReqSenderPool) recycleIdxRecordsAndChunk(idxRecs []*indexRecord, chk *chunk.Chunk) { + if idxRecs == nil || chk == nil { + return + } + c.idxBufPool <- idxRecs + c.srcChkPool <- chk +} + +// copContext contains the information that is needed when building a coprocessor request. +// It is unchanged after initialization. +type copContext struct { + tblInfo *model.TableInfo + idxInfo *model.IndexInfo + pkInfo *model.IndexInfo + colInfos []*model.ColumnInfo + fieldTps []*types.FieldType + sessCtx sessionctx.Context + + expColInfos []*expression.Column + idxColOutputOffsets []int + handleOutputOffsets []int + virtualColOffsets []int + virtualColFieldTps []*types.FieldType +} + +func newCopContext(tblInfo *model.TableInfo, idxInfo *model.IndexInfo, sessCtx sessionctx.Context) (*copContext, error) { + var err error + usedColumnIDs := make(map[int64]struct{}, len(idxInfo.Columns)) + usedColumnIDs, err = fillUsedColumns(usedColumnIDs, idxInfo, tblInfo) + var handleIDs []int64 + if err != nil { + return nil, err + } + var primaryIdx *model.IndexInfo + if tblInfo.PKIsHandle { + pkCol := tblInfo.GetPkColInfo() + usedColumnIDs[pkCol.ID] = struct{}{} + handleIDs = []int64{pkCol.ID} + } else if tblInfo.IsCommonHandle { + primaryIdx = tables.FindPrimaryIndex(tblInfo) + handleIDs = make([]int64, 0, len(primaryIdx.Columns)) + for _, pkCol := range primaryIdx.Columns { + col := tblInfo.Columns[pkCol.Offset] + handleIDs = append(handleIDs, col.ID) + } + usedColumnIDs, err = fillUsedColumns(usedColumnIDs, primaryIdx, tblInfo) + if err != nil { + return nil, err + } + } + + // Only collect the columns that are used by the index. + colInfos := make([]*model.ColumnInfo, 0, len(idxInfo.Columns)) + fieldTps := make([]*types.FieldType, 0, len(idxInfo.Columns)) + for i := range tblInfo.Columns { + col := tblInfo.Columns[i] + if _, found := usedColumnIDs[col.ID]; found { + colInfos = append(colInfos, col) + fieldTps = append(fieldTps, &col.FieldType) + } + } + + // Append the extra handle column when _tidb_rowid is used. + if !tblInfo.HasClusteredIndex() { + extra := model.NewExtraHandleColInfo() + colInfos = append(colInfos, extra) + fieldTps = append(fieldTps, &extra.FieldType) + handleIDs = []int64{extra.ID} + } + + expColInfos, _, err := expression.ColumnInfos2ColumnsAndNames(sessCtx, + model.CIStr{} /* unused */, tblInfo.Name, colInfos, tblInfo) + if err != nil { + return nil, err + } + idxOffsets := resolveIndicesForIndex(expColInfos, idxInfo, tblInfo) + hdColOffsets := resolveIndicesForHandle(expColInfos, handleIDs) + vColOffsets, vColFts := collectVirtualColumnOffsetsAndTypes(expColInfos) + + copCtx := &copContext{ + tblInfo: tblInfo, + idxInfo: idxInfo, + pkInfo: primaryIdx, + colInfos: colInfos, + fieldTps: fieldTps, + sessCtx: sessCtx, + + expColInfos: expColInfos, + idxColOutputOffsets: idxOffsets, + handleOutputOffsets: hdColOffsets, + virtualColOffsets: vColOffsets, + virtualColFieldTps: vColFts, + } + return copCtx, nil +} + +func fillUsedColumns(usedCols map[int64]struct{}, idxInfo *model.IndexInfo, tblInfo *model.TableInfo) (map[int64]struct{}, error) { + colsToChecks := make([]*model.ColumnInfo, 0, len(idxInfo.Columns)) + for _, idxCol := range idxInfo.Columns { + colsToChecks = append(colsToChecks, tblInfo.Columns[idxCol.Offset]) + } + for len(colsToChecks) > 0 { + next := colsToChecks[0] + colsToChecks = colsToChecks[1:] + usedCols[next.ID] = struct{}{} + for depColName := range next.Dependences { + // Expand the virtual generated columns. + depCol := model.FindColumnInfo(tblInfo.Columns, depColName) + if depCol == nil { + return nil, errors.Trace(errors.Errorf("dependent column %s not found", depColName)) + } + if _, ok := usedCols[depCol.ID]; !ok { + colsToChecks = append(colsToChecks, depCol) + } + } + } + return usedCols, nil +} + +func resolveIndicesForIndex(outputCols []*expression.Column, idxInfo *model.IndexInfo, tblInfo *model.TableInfo) []int { + offsets := make([]int, 0, len(idxInfo.Columns)) + for _, idxCol := range idxInfo.Columns { + hid := tblInfo.Columns[idxCol.Offset].ID + for j, col := range outputCols { + if col.ID == hid { + offsets = append(offsets, j) + break + } + } + } + return offsets +} + +func resolveIndicesForHandle(cols []*expression.Column, handleIDs []int64) []int { + offsets := make([]int, 0, len(handleIDs)) + for _, hid := range handleIDs { + for j, col := range cols { + if col.ID == hid { + offsets = append(offsets, j) + break + } + } + } + return offsets +} + +func collectVirtualColumnOffsetsAndTypes(cols []*expression.Column) ([]int, []*types.FieldType) { + var offsets []int + var fts []*types.FieldType + for i, col := range cols { + if col.VirtualExpr != nil { + offsets = append(offsets, i) + fts = append(fts, col.GetType()) + } + } + return offsets, fts +} + +func (c *copContext) buildTableScan(ctx context.Context, startTS uint64, start, end kv.Key) (distsql.SelectResult, error) { + dagPB, err := buildDAGPB(c.sessCtx, c.tblInfo, c.colInfos) + if err != nil { + return nil, err + } + + var builder distsql.RequestBuilder + kvReq, err := builder. + SetDAGRequest(dagPB). + SetStartTS(startTS). + SetKeyRanges([]kv.KeyRange{{StartKey: start, EndKey: end}}). + SetKeepOrder(true). + SetFromSessionVars(c.sessCtx.GetSessionVars()). + SetFromInfoSchema(c.sessCtx.GetDomainInfoSchema()). + SetConcurrency(1). + Build() + if err != nil { + return nil, err + } + return distsql.Select(ctx, c.sessCtx, kvReq, c.fieldTps, statistics.NewQueryFeedback(0, nil, 0, false)) +} + +func (c *copContext) fetchTableScanResult(ctx context.Context, result distsql.SelectResult, + chk *chunk.Chunk, buf []*indexRecord) ([]*indexRecord, bool, error) { + sctx := c.sessCtx.GetSessionVars().StmtCtx + err := result.Next(ctx, chk) + if err != nil { + return nil, false, errors.Trace(err) + } + if chk.NumRows() == 0 { + return buf, true, nil + } + iter := chunk.NewIterator4Chunk(chk) + err = table.FillVirtualColumnValue(c.virtualColFieldTps, c.virtualColOffsets, c.expColInfos, c.colInfos, c.sessCtx, chk) + if err != nil { + return nil, false, errors.Trace(err) + } + for row := iter.Begin(); row != iter.End(); row = iter.Next() { + idxDt := extractDatumByOffsets(row, c.idxColOutputOffsets, c.expColInfos) + hdDt := extractDatumByOffsets(row, c.handleOutputOffsets, c.expColInfos) + handle, err := buildHandle(hdDt, c.tblInfo, c.pkInfo, sctx) + if err != nil { + return nil, false, errors.Trace(err) + } + rsData := tables.TryGetHandleRestoredDataWrapper(c.tblInfo, hdDt, nil, c.idxInfo) + buf = append(buf, &indexRecord{handle: handle, key: nil, vals: idxDt, rsData: rsData, skip: false}) + } + return buf, false, nil +} + +func buildDAGPB(sCtx sessionctx.Context, tblInfo *model.TableInfo, colInfos []*model.ColumnInfo) (*tipb.DAGRequest, error) { + dagReq := &tipb.DAGRequest{} + dagReq.TimeZoneName, dagReq.TimeZoneOffset = timeutil.Zone(sCtx.GetSessionVars().Location()) + sc := sCtx.GetSessionVars().StmtCtx + dagReq.Flags = sc.PushDownFlags() + for i := range colInfos { + dagReq.OutputOffsets = append(dagReq.OutputOffsets, uint32(i)) + } + execPB, err := constructTableScanPB(sCtx, tblInfo, colInfos) + if err != nil { + return nil, err + } + dagReq.Executors = append(dagReq.Executors, execPB) + distsql.SetEncodeType(sCtx, dagReq) + return dagReq, nil +} + +func constructTableScanPB(sCtx sessionctx.Context, tblInfo *model.TableInfo, colInfos []*model.ColumnInfo) (*tipb.Executor, error) { + tblScan := tables.BuildTableScanFromInfos(tblInfo, colInfos) + tblScan.TableId = tblInfo.ID + err := tables.SetPBColumnsDefaultValue(sCtx, tblScan.Columns, colInfos) + return &tipb.Executor{Tp: tipb.ExecType_TypeTableScan, TblScan: tblScan}, err +} + +func extractDatumByOffsets(row chunk.Row, offsets []int, expCols []*expression.Column) []types.Datum { + datumBuf := make([]types.Datum, 0, len(offsets)) + for _, offset := range offsets { + c := expCols[offset] + rowDt := row.GetDatum(offset, c.GetType()) + datumBuf = append(datumBuf, rowDt) + } + return datumBuf +} + +func buildHandle(pkDts []types.Datum, tblInfo *model.TableInfo, + pkInfo *model.IndexInfo, stmtCtx *stmtctx.StatementContext) (kv.Handle, error) { + if tblInfo.IsCommonHandle { + tablecodec.TruncateIndexValues(tblInfo, pkInfo, pkDts) + handleBytes, err := codec.EncodeKey(stmtCtx, nil, pkDts...) + if err != nil { + return nil, err + } + return kv.NewCommonHandle(handleBytes) + } + return kv.IntHandle(pkDts[0].GetInt64()), nil +} + +type idxRecResult struct { + id int + records []*indexRecord + chunk *chunk.Chunk + err error + done bool + total int +} diff --git a/ddl/index_cop_test.go b/ddl/index_cop_test.go new file mode 100644 index 0000000000000..80e37f6a74121 --- /dev/null +++ b/ddl/index_cop_test.go @@ -0,0 +1,101 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ddl_test + +import ( + "fmt" + "strconv" + "testing" + + "github.com/pingcap/tidb/ddl" + "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/types" + "github.com/stretchr/testify/require" +) + +func TestAddIndexFetchRowsFromCoprocessor(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + testFetchRows := func(db, tb, idx string) ([]kv.Handle, [][]types.Datum) { + tbl, err := dom.InfoSchema().TableByName(model.NewCIStr(db), model.NewCIStr(tb)) + require.NoError(t, err) + tblInfo := tbl.Meta() + idxInfo := tblInfo.FindIndexByName(idx) + copCtx, err := ddl.NewCopContext4Test(tblInfo, idxInfo, tk.Session()) + require.NoError(t, err) + startKey := tbl.RecordPrefix() + endKey := startKey.PrefixNext() + txn, err := store.Begin() + require.NoError(t, err) + idxRec, done, err := ddl.FetchRowsFromCop4Test(copCtx, startKey, endKey, txn.StartTS(), 10) + require.NoError(t, err) + require.False(t, done) + require.NoError(t, txn.Rollback()) + + handles := make([]kv.Handle, 0, len(idxRec)) + values := make([][]types.Datum, 0, len(idxRec)) + for _, rec := range idxRec { + handles = append(handles, rec.GetHandle()) + values = append(values, rec.GetIndexValues()) + } + return handles, values + } + + // Test nonclustered primary key table. + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a bigint, b int, index idx (b));") + for i := 0; i < 8; i++ { + tk.MustExec("insert into t values (?, ?)", i, i) + } + hds, vals := testFetchRows("test", "t", "idx") + require.Len(t, hds, 8) + for i := 0; i < 8; i++ { + require.Equal(t, hds[i].IntValue(), int64(i+1)) + require.Len(t, vals[i], 1) + require.Equal(t, vals[i][0].GetInt64(), int64(i)) + } + + // Test clustered primary key table(pk_is_handle). + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a bigint primary key, b int, index idx (b));") + for i := 0; i < 8; i++ { + tk.MustExec("insert into t values (?, ?)", i, i) + } + hds, vals = testFetchRows("test", "t", "idx") + require.Len(t, hds, 8) + for i := 0; i < 8; i++ { + require.Equal(t, hds[i].IntValue(), int64(i)) + require.Len(t, vals[i], 1) + require.Equal(t, vals[i][0].GetInt64(), int64(i)) + } + + // Test clustered primary key table(common_handle). + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a varchar(10), b int, c char(10), primary key (a, c) clustered, index idx (b));") + for i := 0; i < 8; i++ { + tk.MustExec("insert into t values (?, ?, ?)", strconv.Itoa(i), i, strconv.Itoa(i)) + } + hds, vals = testFetchRows("test", "t", "idx") + require.Len(t, hds, 8) + for i := 0; i < 8; i++ { + require.Equal(t, hds[i].String(), fmt.Sprintf("{%d, %d}", i, i)) + require.Len(t, vals[i], 1) + require.Equal(t, vals[i][0].GetInt64(), int64(i)) + } +} diff --git a/ddl/index_merge_tmp_test.go b/ddl/index_merge_tmp_test.go index eb0a935690068..389339ac15ad4 100644 --- a/ddl/index_merge_tmp_test.go +++ b/ddl/index_merge_tmp_test.go @@ -174,6 +174,73 @@ func TestAddIndexMergeVersionIndexValue(t *testing.T) { require.Equal(t, []byte{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, iter.Value()) } +func TestAddIndexMergeIndexUntouchedValue(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk.MustExec(`create table t ( + id int not null auto_increment, + k int not null default '0', + c char(120) not null default '', + pad char(60) not null default '', + primary key (id) clustered, + key k_1(k));`) + tk.MustExec("insert into t values (1, 1, 'a', 'a')") + // Force onCreateIndex use the txn-merge process. + ingest.LitInitialized = false + tk.MustExec("set @@global.tidb_ddl_enable_fast_reorg = 1;") + + var checkErrs []error + var runInsert bool + var runUpdate bool + originHook := dom.DDL().GetHook() + callback := &ddl.TestDDLCallback{ + Do: dom, + } + onJobUpdatedExportedFunc := func(job *model.Job) { + if job.Type != model.ActionAddIndex || job.SchemaState != model.StateWriteReorganization { + return + } + idx := findIdxInfo(dom, "test", "t", "idx") + if idx == nil { + return + } + if !runInsert { + if idx.BackfillState != model.BackfillStateRunning || job.SnapshotVer == 0 { + return + } + runInsert = true + _, err := tk2.Exec("insert into t values (100, 1, 'a', 'a');") + checkErrs = append(checkErrs, err) + } + if !runUpdate { + if idx.BackfillState != model.BackfillStateReadyToMerge { + return + } + runUpdate = true + _, err := tk2.Exec("begin;") + checkErrs = append(checkErrs, err) + _, err = tk2.Exec("update t set k=k+1 where id = 100;") + checkErrs = append(checkErrs, err) + _, err = tk2.Exec("commit;") + checkErrs = append(checkErrs, err) + } + } + callback.OnJobUpdatedExported.Store(&onJobUpdatedExportedFunc) + dom.DDL().SetHook(callback) + tk.MustExec("alter table t add index idx(c);") + dom.DDL().SetHook(originHook) + require.True(t, runUpdate) + for _, err := range checkErrs { + require.NoError(t, err) + } + tk.MustExec("admin check table t;") + tk.MustQuery("select * from t use index (idx);").Check(testkit.Rows("1 1 a a", "100 2 a a")) + tk.MustQuery("select * from t ignore index (idx);").Check(testkit.Rows("1 1 a a", "100 2 a a")) +} + func findIdxInfo(dom *domain.Domain, dbName, tbName, idxName string) *model.IndexInfo { tbl, err := dom.InfoSchema().TableByName(model.NewCIStr(dbName), model.NewCIStr(tbName)) if err != nil { @@ -188,8 +255,79 @@ func TestPessimisticAmendIncompatibleWithFastReorg(t *testing.T) { tk := testkit.NewTestKit(t, store) tk.MustExec("use test") tk.MustExec("set global tidb_ddl_enable_fast_reorg = 1;") - tk.MustExec("set global tidb_ddl_enable_fast_reorg = 1;") tk.MustGetErrMsg("set @@tidb_enable_amend_pessimistic_txn = 1;", "amend pessimistic transactions is not compatible with tidb_ddl_enable_fast_reorg") } + +// TestCreateUniqueIndexKeyExist this case will test below things: +// Create one unique index idx((a*b+1)); +// insert (0, 6) and delete it; +// insert (0, 9), it should be successful; +// Should check temp key exist and skip deleted mark +// The error returned below: +// Error: Received unexpected error: +// +// [kv:1062]Duplicate entry '1' for key 't.idx' +func TestCreateUniqueIndexKeyExist(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(a int default 0, b int default 0)") + tk.MustExec("insert into t values (1, 1), (2, 2), (3, 3), (4, 4)") + + tk1 := testkit.NewTestKit(t, store) + tk1.MustExec("use test") + + stateDeleteOnlySQLs := []string{"insert into t values (5, 5)", "begin pessimistic;", "insert into t select * from t", "rollback", "insert into t set b = 6", "update t set b = 7 where a = 1", "delete from t where b = 4"} + + // If waitReorg timeout, the worker may enter writeReorg more than 2 times. + reorgTime := 0 + d := dom.DDL() + originalCallback := d.GetHook() + defer d.SetHook(originalCallback) + callback := &ddl.TestDDLCallback{} + onJobUpdatedExportedFunc := func(job *model.Job) { + if t.Failed() { + return + } + var err error + switch job.SchemaState { + case model.StateDeleteOnly: + for _, sql := range stateDeleteOnlySQLs { + _, err = tk1.Exec(sql) + assert.NoError(t, err) + } + // (1, 7), (2, 2), (3, 3), (5, 5), (0, 6) + case model.StateWriteOnly: + _, err = tk1.Exec("insert into t values (8, 8)") + assert.NoError(t, err) + _, err = tk1.Exec("update t set b = 7 where a = 2") + assert.NoError(t, err) + _, err = tk1.Exec("delete from t where b = 3") + assert.NoError(t, err) + // (1, 7), (2, 7), (5, 5), (0, 6), (8, 8) + case model.StateWriteReorganization: + if reorgTime < 1 { + reorgTime++ + } else { + return + } + _, err = tk1.Exec("insert into t values (10, 10)") + assert.NoError(t, err) + _, err = tk1.Exec("delete from t where b = 6") + assert.NoError(t, err) + _, err = tk1.Exec("insert into t set b = 9") + assert.NoError(t, err) + _, err = tk1.Exec("update t set b = 7 where a = 5") + assert.NoError(t, err) + // (1, 7), (2, 7), (5, 7), (8, 8), (10, 10), (0, 9) + } + } + callback.OnJobUpdatedExported.Store(&onJobUpdatedExportedFunc) + d.SetHook(callback) + tk.MustExec("alter table t add unique index idx((a*b+1))") + tk.MustExec("admin check table t") + tk.MustQuery("select * from t order by a, b").Check(testkit.Rows("0 9", "1 7", "2 7", "5 7", "8 8", "10 10")) +} diff --git a/ddl/ingest/BUILD.bazel b/ddl/ingest/BUILD.bazel index 3fd286e450b25..962ae4da35637 100644 --- a/ddl/ingest/BUILD.bazel +++ b/ddl/ingest/BUILD.bazel @@ -33,13 +33,13 @@ go_library( "//sessionctx/variable", "//table", "//util", + "//util/dbterror", "//util/generic", "//util/logutil", "//util/mathutil", "//util/size", "@com_github_google_uuid//:uuid", "@com_github_pingcap_errors//:errors", - "@com_github_pkg_errors//:errors", "@org_uber_go_zap//:zap", ], ) diff --git a/ddl/ingest/backend.go b/ddl/ingest/backend.go index 63034f0be3a22..26344359dd6b9 100644 --- a/ddl/ingest/backend.go +++ b/ddl/ingest/backend.go @@ -17,13 +17,13 @@ package ingest import ( "context" - "github.com/pingcap/errors" "github.com/pingcap/tidb/br/pkg/lightning/backend" "github.com/pingcap/tidb/br/pkg/lightning/backend/kv" "github.com/pingcap/tidb/br/pkg/lightning/config" tikv "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/table" + "github.com/pingcap/tidb/util/dbterror" "github.com/pingcap/tidb/util/logutil" "go.uber.org/zap" ) @@ -45,7 +45,7 @@ type BackendContext struct { func (bc *BackendContext) FinishImport(indexID int64, unique bool, tbl table.Table) error { ei, exist := bc.EngMgr.Load(indexID) if !exist { - return errors.New(LitErrGetEngineFail) + return dbterror.ErrIngestFailed.FastGenByArgs("ingest engine not found") } err := ei.ImportAndClean() @@ -63,7 +63,7 @@ func (bc *BackendContext) FinishImport(indexID int64, unique bool, tbl table.Tab if err != nil { logutil.BgLogger().Error(LitInfoRemoteDupCheck, zap.Error(err), zap.String("table", tbl.Meta().Name.O), zap.Int64("index ID", indexID)) - return errors.New(LitInfoRemoteDupCheck) + return err } else if hasDupe { logutil.BgLogger().Error(LitErrRemoteDupExistErr, zap.String("table", tbl.Meta().Name.O), zap.Int64("index ID", indexID)) @@ -80,7 +80,7 @@ func (bc *BackendContext) Flush(indexID int64) error { ei, exist := bc.EngMgr.Load(indexID) if !exist { logutil.BgLogger().Error(LitErrGetEngineFail, zap.Int64("index ID", indexID)) - return errors.New(LitErrGetEngineFail) + return dbterror.ErrIngestFailed.FastGenByArgs("ingest engine not found") } err := bc.diskRoot.UpdateUsageAndQuota() diff --git a/ddl/ingest/config.go b/ddl/ingest/config.go index 3a96e8ae5201b..e9c1458b1ab0a 100644 --- a/ddl/ingest/config.go +++ b/ddl/ingest/config.go @@ -16,6 +16,7 @@ package ingest import ( "path/filepath" + "sync/atomic" "github.com/pingcap/tidb/br/pkg/lightning/backend" "github.com/pingcap/tidb/br/pkg/lightning/checkpoints" @@ -26,12 +27,18 @@ import ( "go.uber.org/zap" ) +// ImporterRangeConcurrencyForTest is only used for test. +var ImporterRangeConcurrencyForTest *atomic.Int32 + func generateLightningConfig(memRoot MemRoot, jobID int64, unique bool) (*config.Config, error) { tidbCfg := tidbconf.GetGlobalConfig() cfg := config.NewConfig() cfg.TikvImporter.Backend = config.BackendLocal // Each backend will build a single dir in lightning dir. cfg.TikvImporter.SortedKVDir = filepath.Join(LitSortPath, encodeBackendTag(jobID)) + if ImporterRangeConcurrencyForTest != nil { + cfg.TikvImporter.RangeConcurrency = int(ImporterRangeConcurrencyForTest.Load()) + } _, err := cfg.AdjustCommon() if err != nil { logutil.BgLogger().Warn(LitWarnConfigError, zap.Error(err)) diff --git a/ddl/ingest/disk_root.go b/ddl/ingest/disk_root.go index c1c98f3fe681a..445115333edd1 100644 --- a/ddl/ingest/disk_root.go +++ b/ddl/ingest/disk_root.go @@ -15,7 +15,6 @@ package ingest import ( - "github.com/pingcap/errors" lcom "github.com/pingcap/tidb/br/pkg/lightning/common" "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/util/logutil" @@ -64,7 +63,7 @@ func (d *diskRootImpl) UpdateUsageAndQuota() error { sz, err := lcom.GetStorageSize(d.path) if err != nil { logutil.BgLogger().Error(LitErrGetStorageQuota, zap.Error(err)) - return errors.New(LitErrGetStorageQuota) + return err } d.maxQuota = mathutil.Min(variable.DDLDiskQuota.Load(), uint64(capacityThreshold*float64(sz.Capacity))) return nil diff --git a/ddl/ingest/engine.go b/ddl/ingest/engine.go index d875d78e346d0..8392674c1eae6 100644 --- a/ddl/ingest/engine.go +++ b/ddl/ingest/engine.go @@ -25,7 +25,6 @@ import ( "github.com/pingcap/tidb/br/pkg/lightning/config" "github.com/pingcap/tidb/util/generic" "github.com/pingcap/tidb/util/logutil" - "github.com/pkg/errors" "go.uber.org/zap" ) @@ -99,7 +98,7 @@ func (ei *engineInfo) ImportAndClean() error { if err1 != nil { logutil.BgLogger().Error(LitErrCloseEngineErr, zap.Error(err1), zap.Int64("job ID", ei.jobID), zap.Int64("index ID", ei.indexID)) - return errors.New(LitErrCloseEngineErr) + return err1 } ei.openedEngine = nil @@ -118,7 +117,7 @@ func (ei *engineInfo) ImportAndClean() error { if err != nil { logutil.BgLogger().Error(LitErrIngestDataErr, zap.Error(err), zap.Int64("job ID", ei.jobID), zap.Int64("index ID", ei.indexID)) - return errors.New(LitErrIngestDataErr) + return err } // Clean up the engine local workspace. @@ -126,7 +125,7 @@ func (ei *engineInfo) ImportAndClean() error { if err != nil { logutil.BgLogger().Error(LitErrCloseEngineErr, zap.Error(err), zap.Int64("job ID", ei.jobID), zap.Int64("index ID", ei.indexID)) - return errors.New(LitErrCloseEngineErr) + return err } return nil } diff --git a/ddl/ingest/engine_mgr.go b/ddl/ingest/engine_mgr.go index 44ecff9941932..565d0b30d1ab8 100644 --- a/ddl/ingest/engine_mgr.go +++ b/ddl/ingest/engine_mgr.go @@ -19,6 +19,7 @@ import ( "github.com/pingcap/errors" "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/util/dbterror" "github.com/pingcap/tidb/util/generic" "github.com/pingcap/tidb/util/logutil" "go.uber.org/zap" @@ -58,7 +59,9 @@ func (m *engineManager) Register(bc *BackendContext, job *model.Job, indexID int cfg := generateLocalEngineConfig(job.ID, job.SchemaName, job.TableName) openedEn, err := bc.backend.OpenEngine(bc.ctx, cfg, job.TableName, int32(indexID)) if err != nil { - return nil, errors.New(LitErrCreateEngineFail) + logutil.BgLogger().Warn(LitErrCreateEngineFail, zap.Int64("job ID", job.ID), + zap.Int64("index ID", indexID), zap.Error(err)) + return nil, errors.Trace(err) } id := openedEn.GetEngineUUID() en = NewEngineInfo(bc.ctx, job.ID, indexID, cfg, openedEn, id, 1, m.MemRoot, m.DiskRoot) @@ -71,7 +74,7 @@ func (m *engineManager) Register(bc *BackendContext, job *model.Job, indexID int logutil.BgLogger().Warn(LitErrExceedConcurrency, zap.Int64("job ID", job.ID), zap.Int64("index ID", indexID), zap.Int("concurrency", bc.cfg.TikvImporter.RangeConcurrency)) - return nil, errors.New(LitErrExceedConcurrency) + return nil, dbterror.ErrIngestFailed.FastGenByArgs("concurrency quota exceeded") } en.writerCount++ info = LitInfoAddWriter @@ -99,6 +102,20 @@ func (m *engineManager) Unregister(jobID, indexID int64) { m.MemRoot.Release(StructSizeEngineInfo) } +// ResetWorkers reset the writer count of the engineInfo because +// the goroutines of backfill workers have been terminated. +func (m *engineManager) ResetWorkers(bc *BackendContext, jobID, indexID int64) { + ei, exist := m.Load(indexID) + if !exist { + return + } + m.MemRoot.Release(StructSizeWriterCtx * int64(ei.writerCount)) + m.MemRoot.ReleaseWithTag(encodeEngineTag(jobID, indexID)) + engineCacheSize := int64(bc.cfg.TikvImporter.EngineMemCacheSize) + m.MemRoot.ConsumeWithTag(encodeEngineTag(jobID, indexID), engineCacheSize) + ei.writerCount = 0 +} + // UnregisterAll delete all engineInfo from the engineManager. func (m *engineManager) UnregisterAll(jobID int64) { for _, idxID := range m.Keys() { diff --git a/ddl/ingest/env.go b/ddl/ingest/env.go index 185f873b820a4..864cc61ae4e02 100644 --- a/ddl/ingest/env.go +++ b/ddl/ingest/env.go @@ -47,6 +47,14 @@ const maxMemoryQuota = 2 * size.GB // InitGlobalLightningEnv initialize Lightning backfill environment. func InitGlobalLightningEnv() { log.SetAppLogger(logutil.BgLogger()) + globalCfg := config.GetGlobalConfig() + if globalCfg.Store != "tikv" { + logutil.BgLogger().Warn(LitWarnEnvInitFail, + zap.String("storage limitation", "only support TiKV storage"), + zap.String("current storage", globalCfg.Store), + zap.Bool("lightning is initialized", LitInitialized)) + return + } sPath, err := genLightningDataDir() if err != nil { logutil.BgLogger().Warn(LitWarnEnvInitFail, zap.Error(err), @@ -102,8 +110,5 @@ func genLightningDataDir() (string, error) { return sortPath, nil } -// GenRLimitForTest is only used for test. -var GenRLimitForTest = util.GenRLimit() - // GenLightningDataDirForTest is only used for test. var GenLightningDataDirForTest = genLightningDataDir diff --git a/ddl/ingest/mem_root.go b/ddl/ingest/mem_root.go index a36d934c0abcd..522e5ddc1f7cc 100644 --- a/ddl/ingest/mem_root.go +++ b/ddl/ingest/mem_root.go @@ -122,7 +122,7 @@ func (m *memRootImpl) ConsumeWithTag(tag string, size int64) { m.structSize[tag] = size } -// TestConsume implements MemRoot. +// CheckConsume implements MemRoot. func (m *memRootImpl) CheckConsume(size int64) bool { m.mu.RLock() defer m.mu.RUnlock() diff --git a/ddl/ingest/message.go b/ddl/ingest/message.go index 3858d40ec4e0a..0828d68796ba4 100644 --- a/ddl/ingest/message.go +++ b/ddl/ingest/message.go @@ -15,7 +15,7 @@ package ingest import ( - "github.com/pingcap/errors" + "github.com/pingcap/tidb/util/dbterror" "github.com/pingcap/tidb/util/logutil" "go.uber.org/zap" ) @@ -23,28 +23,26 @@ import ( // Message const text const ( LitErrAllocMemFail string = "[ddl-ingest] allocate memory failed" - LitErrOutMaxMem string = "[ddl-ingest] memory used up for lightning add index" - LitErrCreateDirFail string = "[ddl-ingest] create lightning sort path error" - LitErrStatDirFail string = "[ddl-ingest] stat lightning sort path error" - LitErrDeleteDirFail string = "[ddl-ingest] delete lightning sort path error" - LitErrCreateBackendFail string = "[ddl-ingest] build lightning backend failed, will use kernel index reorg method to backfill the index" - LitErrGetBackendFail string = "[ddl-ingest]: Can not get cached backend" - LitErrCreateEngineFail string = "[ddl-ingest] build lightning engine failed, will use kernel index reorg method to backfill the index" - LitErrCreateContextFail string = "[ddl-ingest] build lightning worker context failed, will use kernel index reorg method to backfill the index" - LitErrGetEngineFail string = "[ddl-ingest] can not get cached engine info" + LitErrCreateDirFail string = "[ddl-ingest] create ingest sort path error" + LitErrStatDirFail string = "[ddl-ingest] stat ingest sort path error" + LitErrDeleteDirFail string = "[ddl-ingest] delete ingest sort path error" + LitErrCreateBackendFail string = "[ddl-ingest] build ingest backend failed" + LitErrGetBackendFail string = "[ddl-ingest] cannot get ingest backend" + LitErrCreateEngineFail string = "[ddl-ingest] build ingest engine failed" + LitErrCreateContextFail string = "[ddl-ingest] build ingest writer context failed" + LitErrGetEngineFail string = "[ddl-ingest] can not get ingest engine info" LitErrGetStorageQuota string = "[ddl-ingest] get storage quota error" LitErrCloseEngineErr string = "[ddl-ingest] close engine error" LitErrCleanEngineErr string = "[ddl-ingest] clean engine error" LitErrFlushEngineErr string = "[ddl-ingest] flush engine data err" LitErrIngestDataErr string = "[ddl-ingest] ingest data into storage error" LitErrRemoteDupExistErr string = "[ddl-ingest] remote duplicate index key exist" - LitErrExceedConcurrency string = "[ddl-ingest] the concurrency is greater than lightning limit(tikv-importer.range-concurrency)" + LitErrExceedConcurrency string = "[ddl-ingest] the concurrency is greater than ingest limit" LitErrUpdateDiskStats string = "[ddl-ingest] update disk usage error" LitWarnEnvInitFail string = "[ddl-ingest] initialize environment failed" LitWarnConfigError string = "[ddl-ingest] build config for backend failed" - LitWarnGenMemLimit string = "[ddl-ingest] generate memory max limitation" - LitInfoEnvInitSucc string = "[ddl-ingest] init global lightning backend environment finished" - LitInfoSortDir string = "[ddl-ingest] the lightning sorted dir" + LitInfoEnvInitSucc string = "[ddl-ingest] init global ingest backend environment finished" + LitInfoSortDir string = "[ddl-ingest] the ingest sorted directory" LitInfoCreateBackend string = "[ddl-ingest] create one backend for an DDL job" LitInfoCloseBackend string = "[ddl-ingest] close one backend for DDL job" LitInfoOpenEngine string = "[ddl-ingest] open an engine for index reorg task" @@ -53,9 +51,8 @@ const ( LitInfoCloseEngine string = "[ddl-ingest] flush all writer and get closed engine" LitInfoRemoteDupCheck string = "[ddl-ingest] start remote duplicate checking" LitInfoStartImport string = "[ddl-ingest] start to import data" - LitInfoSetMemLimit string = "[ddl-ingest] set max memory limitation" - LitInfoChgMemSetting string = "[ddl-ingest] change memory setting for lightning" - LitInfoInitMemSetting string = "[ddl-ingest] initial memory setting for lightning" + LitInfoChgMemSetting string = "[ddl-ingest] change memory setting for ingest" + LitInfoInitMemSetting string = "[ddl-ingest] initial memory setting for ingest" LitInfoUnsafeImport string = "[ddl-ingest] do a partial import data into the storage" ) @@ -63,7 +60,7 @@ func genBackendAllocMemFailedErr(memRoot MemRoot, jobID int64) error { logutil.BgLogger().Warn(LitErrAllocMemFail, zap.Int64("job ID", jobID), zap.Int64("current memory usage", memRoot.CurrentUsage()), zap.Int64("max memory quota", memRoot.MaxMemoryQuota())) - return errors.New(LitErrOutMaxMem) + return dbterror.ErrIngestFailed.FastGenByArgs("memory used up") } func genEngineAllocMemFailedErr(memRoot MemRoot, jobID, idxID int64) error { @@ -71,5 +68,5 @@ func genEngineAllocMemFailedErr(memRoot MemRoot, jobID, idxID int64) error { zap.Int64("index ID", idxID), zap.Int64("current memory usage", memRoot.CurrentUsage()), zap.Int64("max memory quota", memRoot.MaxMemoryQuota())) - return errors.New(LitErrOutMaxMem) + return dbterror.ErrIngestFailed.FastGenByArgs("memory used up") } diff --git a/ddl/job_table.go b/ddl/job_table.go index 62bba65cf6678..5bd702232a9f6 100644 --- a/ddl/job_table.go +++ b/ddl/job_table.go @@ -67,7 +67,7 @@ func (dc *ddlCtx) excludeJobIDs() string { } const ( - getJobSQL = "select job_meta, processing from mysql.tidb_ddl_job where job_id in (select min(job_id) from mysql.tidb_ddl_job group by schema_ids, table_ids, processing order by processing desc limit 1) and %s reorg %s order by processing desc, job_id" + getJobSQL = "select job_meta, processing from mysql.tidb_ddl_job where job_id in (select min(job_id) from mysql.tidb_ddl_job group by schema_ids, table_ids, processing) and %s reorg %s order by processing desc, job_id" ) type jobType int @@ -252,7 +252,7 @@ func (d *ddl) delivery2worker(wk *worker, pool *workerPool, job *model.Job) { return } d.once.Store(false) - cleanMDLInfo(d.sessPool, job.ID) + cleanMDLInfo(d.sessPool, job.ID, d.etcdCli) // Don't have a worker now. return } @@ -287,7 +287,7 @@ func (d *ddl) delivery2worker(wk *worker, pool *workerPool, job *model.Job) { // If the job is done or still running or rolling back, we will wait 2 * lease time to guarantee other servers to update // the newest schema. waitSchemaChanged(context.Background(), d.ddlCtx, d.lease*2, schemaVer, job) - cleanMDLInfo(d.sessPool, job.ID) + cleanMDLInfo(d.sessPool, job.ID, d.etcdCli) d.synced(job) if RunInGoTest { diff --git a/ddl/metadatalocktest/mdl_test.go b/ddl/metadatalocktest/mdl_test.go index 6f4a0012cdfff..64bdf77d55707 100644 --- a/ddl/metadatalocktest/mdl_test.go +++ b/ddl/metadatalocktest/mdl_test.go @@ -1105,3 +1105,16 @@ func TestMDLRenameTable(t *testing.T) { tk.MustGetErrCode("select * from test2.t1;", mysql.ErrNoSuchTable) tk.MustExec("commit") } + +func TestMDLPrepareFail(t *testing.T) { + store := testkit.CreateMockStore(t) + + tk := testkit.NewTestKit(t, store) + tk2 := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(a int);") + _, _, _, err := tk.Session().PrepareStmt("select b from t") + require.Error(t, err) + + tk2.MustExec("alter table test.t add column c int") +} diff --git a/ddl/modify_column_test.go b/ddl/modify_column_test.go index 10a9835bc8215..b28a503ee4f79 100644 --- a/ddl/modify_column_test.go +++ b/ddl/modify_column_test.go @@ -813,10 +813,7 @@ func TestModifyColumnTypeWithWarnings(t *testing.T) { // 111.22 will be truncated the fraction .22 as .2 with truncated warning for each row. tk.MustExec("alter table t modify column a decimal(4,1)") // there should 4 rows of warnings corresponding to the origin rows. - tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1292 Truncated incorrect DECIMAL value: '111.22'", - "Warning 1292 Truncated incorrect DECIMAL value: '111.22'", - "Warning 1292 Truncated incorrect DECIMAL value: '111.22'", - "Warning 1292 Truncated incorrect DECIMAL value: '111.22'")) + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1292 4 warnings with this error code, first warning: Truncated incorrect DECIMAL value: '111.22'")) // Test the strict warnings is treated as errors under the strict mode. tk.MustExec("drop table if exists t") @@ -829,15 +826,13 @@ func TestModifyColumnTypeWithWarnings(t *testing.T) { // Test the strict warnings is treated as warnings under the non-strict mode. tk.MustExec("set @@sql_mode=\"\"") tk.MustExec("alter table t modify column a decimal(3,1)") - tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1690 DECIMAL value is out of range in '(3, 1)'", - "Warning 1690 DECIMAL value is out of range in '(3, 1)'", - "Warning 1690 DECIMAL value is out of range in '(3, 1)'")) + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1690 3 warnings with this error code, first warning: DECIMAL value is out of range in '(3, 1)'")) } // TestModifyColumnTypeWhenInterception is to test modifying column type with warnings intercepted by // reorg timeout, not owner error and so on. func TestModifyColumnTypeWhenInterception(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) + store, _ := testkit.CreateMockStoreAndDomain(t) tk := testkit.NewTestKit(t, store) tk.MustExec("use test") @@ -858,42 +853,10 @@ func TestModifyColumnTypeWhenInterception(t *testing.T) { // Make the regions scale like: [1, 1024), [1024, 2048), [2048, 3072), [3072, 4096] tk.MustQuery("split table t between(0) and (4096) regions 4") - d := dom.DDL() - hook := &ddl.TestDDLCallback{} - var checkMiddleWarningCount bool - var checkMiddleAddedCount bool - // Since the `DefTiDBDDLReorgWorkerCount` is 4, every worker will be assigned with one region - // for the first time. Here we mock the insert failure/reorg timeout in region [2048, 3072) - // which will lead next handle be set to 2048 and partial warnings be stored into ddl job. - // Since the existence of reorg batch size, only the last reorg batch [2816, 3072) of kv - // range [2048, 3072) fail to commit, the rest of them all committed successfully. So the - // addedCount and warnings count in the job are all equal to `4096 - reorg batch size`. - // In the next round of this ddl job, the last reorg batch will be finished. - var middleWarningsCount = int64(defaultBatchSize*4 - defaultReorgBatchSize) - onJobUpdatedExportedFunc := func(job *model.Job) { - if job.SchemaState == model.StateWriteReorganization || job.SnapshotVer != 0 { - if len(job.ReorgMeta.WarningsCount) == len(job.ReorgMeta.Warnings) { - for _, v := range job.ReorgMeta.WarningsCount { - if v == middleWarningsCount { - checkMiddleWarningCount = true - } - } - } - if job.RowCount == middleWarningsCount { - checkMiddleAddedCount = true - } - } - } - hook.OnJobUpdatedExported.Store(&onJobUpdatedExportedFunc) - d.SetHook(hook) require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/ddl/MockReorgTimeoutInOneRegion", `return(true)`)) defer func() { require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/ddl/MockReorgTimeoutInOneRegion")) }() tk.MustExec("alter table t modify column b decimal(3,1)") - require.True(t, checkMiddleWarningCount) - require.True(t, checkMiddleAddedCount) - - res := tk.MustQuery("show warnings") - require.Len(t, res.Rows(), count) + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1292 4096 warnings with this error code, first warning: Truncated incorrect DECIMAL value: '11.22'")) } diff --git a/ddl/multi_schema_change_test.go b/ddl/multi_schema_change_test.go index 250fb692f3500..0f8aeca87802c 100644 --- a/ddl/multi_schema_change_test.go +++ b/ddl/multi_schema_change_test.go @@ -141,6 +141,9 @@ func TestMultiSchemaChangeAddColumnsCancelled(t *testing.T) { tk.MustExec("insert into t values (1);") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'c' is in write-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StateWriteReorganization }) @@ -221,6 +224,9 @@ func TestMultiSchemaChangeDropColumnsCancelled(t *testing.T) { tk.MustExec("insert into t values ();") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'a' is in delete-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StateDeleteReorganization }) @@ -236,6 +242,9 @@ func TestMultiSchemaChangeDropColumnsCancelled(t *testing.T) { tk.MustExec("insert into t values ();") hook = newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'a' is in public. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StatePublic }) @@ -258,6 +267,9 @@ func TestMultiSchemaChangeDropIndexedColumnsCancelled(t *testing.T) { tk.MustExec("insert into t values ();") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'a' is in delete-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StateDeleteReorganization }) @@ -358,6 +370,9 @@ func TestMultiSchemaChangeRenameColumns(t *testing.T) { tk.MustExec("insert into t values ()") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'c' is in write-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 2) return job.MultiSchemaInfo.SubJobs[0].SchemaState == model.StateWriteReorganization }) @@ -427,6 +442,9 @@ func TestMultiSchemaChangeAlterColumns(t *testing.T) { tk.MustExec("create table t (a int default 1, b int default 2)") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'a' is in write-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 2) return job.MultiSchemaInfo.SubJobs[0].SchemaState == model.StateWriteReorganization }) @@ -496,6 +514,9 @@ func TestMultiSchemaChangeChangeColumns(t *testing.T) { tk.MustExec("insert into t values ()") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'c' is in write-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 2) return job.MultiSchemaInfo.SubJobs[0].SchemaState == model.StateWriteReorganization }) @@ -555,6 +576,9 @@ func TestMultiSchemaChangeAddIndexesCancelled(t *testing.T) { tk.MustExec("insert into t values (1, 2, 3);") cancelHook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel the job when index 't2' is in write-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 4) return job.MultiSchemaInfo.SubJobs[2].SchemaState == model.StateWriteReorganization }) @@ -574,6 +598,9 @@ func TestMultiSchemaChangeAddIndexesCancelled(t *testing.T) { tk.MustExec("insert into t values (1, 2, 3);") cancelHook = newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel the job when index 't1' is in public. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 4) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StatePublic }) @@ -623,6 +650,9 @@ func TestMultiSchemaChangeDropIndexesCancelled(t *testing.T) { // Test for cancelling the job in a middle state. tk.MustExec("create table t (a int, b int, index(a), unique index(b), index idx(a, b));") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StateDeleteOnly }) @@ -638,6 +668,9 @@ func TestMultiSchemaChangeDropIndexesCancelled(t *testing.T) { tk.MustExec("drop table if exists t;") tk.MustExec("create table t (a int, b int, index(a), unique index(b), index idx(a, b));") hook = newCancelJobHook(t, store, dom, func(job *model.Job) bool { + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[1].SchemaState == model.StatePublic }) @@ -733,6 +766,9 @@ func TestMultiSchemaChangeRenameIndexes(t *testing.T) { tk.MustExec("insert into t values ()") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { // Cancel job when the column 'c' is in write-reorg. + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 2) return job.MultiSchemaInfo.SubJobs[0].SchemaState == model.StateWriteReorganization }) @@ -881,6 +917,9 @@ func TestMultiSchemaChangeModifyColumnsCancelled(t *testing.T) { tk.MustExec("create table t (a int, b int, c int, index i1(a), unique index i2(b), index i3(a, b));") tk.MustExec("insert into t values (1, 2, 3);") hook := newCancelJobHook(t, store, dom, func(job *model.Job) bool { + if job.Type != model.ActionMultiSchemaChange { + return false + } assertMultiSchema(t, job, 3) return job.MultiSchemaInfo.SubJobs[2].SchemaState == model.StateWriteReorganization }) @@ -975,6 +1014,7 @@ func TestMultiSchemaChangeMixCancelled(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomain(t) tk := testkit.NewTestKit(t, store) tk.MustExec("use test;") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("create table t (a int, b int, c int, index i1(c), index i2(c));") tk.MustExec("insert into t values (1, 2, 3);") @@ -1137,7 +1177,7 @@ func TestMultiSchemaChangeUnsupportedType(t *testing.T) { tk.MustExec("use test;") tk.MustExec("create table t (a int, b int);") - tk.MustGetErrMsg("alter table t add column c int, auto_id_cache = 1;", + tk.MustGetErrMsg("alter table t add column c int, auto_id_cache = 10;", "[ddl:8200]Unsupported multi schema change for modify auto id cache") } @@ -1262,7 +1302,6 @@ func putTheSameDDLJobTwice(t *testing.T, fn func()) { } func assertMultiSchema(t *testing.T, job *model.Job, subJobLen int) { - assert.Equal(t, model.ActionMultiSchemaChange, job.Type, job) assert.NotNil(t, job.MultiSchemaInfo, job) assert.Len(t, job.MultiSchemaInfo.SubJobs, subJobLen, job) } diff --git a/ddl/partition.go b/ddl/partition.go index a8947d091bfc5..cf4bd7aed962f 100644 --- a/ddl/partition.go +++ b/ddl/partition.go @@ -2077,7 +2077,7 @@ func (w *worker) onExchangeTablePartition(d *ddlCtx, t *meta.Meta, job *model.Jo failpoint.Return(ver, err) } sess := newSession(se) - _, err = sess.execute(context.Background(), "insert into test.pt values (40000000)", "exchange_partition_test") + _, err = sess.execute(context.Background(), "insert ignore into test.pt values (40000000)", "exchange_partition_test") if err != nil { failpoint.Return(ver, err) } diff --git a/ddl/reorg.go b/ddl/reorg.go index 2c7508d24b38f..a03cf417177dc 100644 --- a/ddl/reorg.go +++ b/ddl/reorg.go @@ -234,7 +234,12 @@ func (w *worker) runReorgJob(rh *reorgHandler, reorgInfo *reorgInfo, tblInfo *mo return dbterror.ErrCancelledDDLJob } rowCount, _, _ := rc.getRowCountAndKey() - logutil.BgLogger().Info("[ddl] run reorg job done", zap.Int64("handled rows", rowCount)) + if err != nil { + logutil.BgLogger().Warn("[ddl] run reorg job done", zap.Int64("handled rows", rowCount), zap.Error(err)) + } else { + logutil.BgLogger().Info("[ddl] run reorg job done", zap.Int64("handled rows", rowCount)) + } + job.SetRowCount(rowCount) // Update a job's warnings. @@ -273,11 +278,11 @@ func (w *worker) runReorgJob(rh *reorgHandler, reorgInfo *reorgInfo, tblInfo *mo err := rh.UpdateDDLReorgStartHandle(job, currentElement, doneKey) logutil.BgLogger().Info("[ddl] run reorg job wait timeout", - zap.Duration("waitTime", waitTimeout), - zap.ByteString("elementType", currentElement.TypeKey), - zap.Int64("elementID", currentElement.ID), - zap.Int64("totalAddedRowCount", rowCount), - zap.String("doneKey", tryDecodeToHandleString(doneKey)), + zap.Duration("wait time", waitTimeout), + zap.ByteString("element type", currentElement.TypeKey), + zap.Int64("element ID", currentElement.ID), + zap.Int64("total added row count", rowCount), + zap.String("done key", hex.EncodeToString(doneKey)), zap.Error(err)) // If timeout, we will return, check the owner and retry to wait job done again. return dbterror.ErrWaitReorgTimeout @@ -559,10 +564,12 @@ func getTableRange(ctx *JobContext, d *ddlCtx, tbl table.PhysicalTable, snapshot endHandleKey = tablecodec.EncodeRecordKey(tbl.RecordPrefix(), maxHandle) } if isEmptyTable || endHandleKey.Cmp(startHandleKey) < 0 { - logutil.BgLogger().Info("[ddl] get table range, endHandle < startHandle", zap.String("table", fmt.Sprintf("%v", tbl.Meta())), + logutil.BgLogger().Info("[ddl] get noop table range", + zap.String("table", fmt.Sprintf("%v", tbl.Meta())), zap.Int64("table/partition ID", tbl.GetPhysicalID()), - zap.String("endHandle", tryDecodeToHandleString(endHandleKey)), - zap.String("startHandle", tryDecodeToHandleString(startHandleKey))) + zap.String("start key", hex.EncodeToString(startHandleKey)), + zap.String("end key", hex.EncodeToString(endHandleKey)), + zap.Bool("is empty table", isEmptyTable)) endHandleKey = startHandleKey } return @@ -706,9 +713,9 @@ func getReorgInfoFromPartitions(ctx *JobContext, d *ddlCtx, rh *reorgHandler, jo return nil, errors.Trace(err) } logutil.BgLogger().Info("[ddl] job get table range", - zap.Int64("jobID", job.ID), zap.Int64("physicalTableID", pid), - zap.String("startHandle", tryDecodeToHandleString(start)), - zap.String("endHandle", tryDecodeToHandleString(end))) + zap.Int64("job ID", job.ID), zap.Int64("physical table ID", pid), + zap.String("start key", hex.EncodeToString(start)), + zap.String("end key", hex.EncodeToString(end))) err = rh.InitDDLReorgHandle(job, start, end, pid, elements[0]) if err != nil { diff --git a/ddl/stat.go b/ddl/stat.go index 24462f9bb141a..15be82d6719ae 100644 --- a/ddl/stat.go +++ b/ddl/stat.go @@ -15,6 +15,8 @@ package ddl import ( + "encoding/hex" + "github.com/pingcap/errors" "github.com/pingcap/tidb/sessionctx/variable" ) @@ -79,7 +81,7 @@ func (d *ddl) Stats(vars *variable.SessionVars) (map[string]interface{}, error) m[ddlJobSchemaID] = job.SchemaID m[ddlJobTableID] = job.TableID m[ddlJobSnapshotVer] = job.SnapshotVer - m[ddlJobReorgHandle] = tryDecodeToHandleString(ddlInfo.ReorgHandle) + m[ddlJobReorgHandle] = hex.EncodeToString(ddlInfo.ReorgHandle) m[ddlJobArgs] = job.Args return m, nil } diff --git a/ddl/stat_test.go b/ddl/stat_test.go index 67d64c7c6cfa5..556b9eb5dadc7 100644 --- a/ddl/stat_test.go +++ b/ddl/stat_test.go @@ -16,6 +16,7 @@ package ddl_test import ( "context" + "encoding/hex" "fmt" "strconv" "testing" @@ -33,6 +34,7 @@ import ( "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/sessiontxn" + "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/testkit" "github.com/pingcap/tidb/types" "github.com/stretchr/testify/require" @@ -42,13 +44,14 @@ func TestDDLStatsInfo(t *testing.T) { store, domain := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) d := domain.DDL() + tk := testkit.NewTestKit(t, store) + ctx := tk.Session() dbInfo, err := testSchemaInfo(store, "test_stat") require.NoError(t, err) - testCreateSchema(t, testkit.NewTestKit(t, store).Session(), d, dbInfo) + testCreateSchema(t, ctx, d, dbInfo) tblInfo, err := testTableInfo(store, "t", 2) require.NoError(t, err) - testCreateTable(t, testkit.NewTestKit(t, store).Session(), d, dbInfo, tblInfo) - ctx := testkit.NewTestKit(t, store).Session() + testCreateTable(t, ctx, d, dbInfo, tblInfo) err = sessiontxn.NewTxn(context.Background(), ctx) require.NoError(t, err) @@ -89,7 +92,11 @@ func TestDDLStatsInfo(t *testing.T) { varMap, err := d.Stats(nil) wg.Done() require.NoError(t, err) - require.Equal(t, "1", varMap[ddlJobReorgHandle]) + key, err := hex.DecodeString(varMap[ddlJobReorgHandle].(string)) + require.NoError(t, err) + _, h, err := tablecodec.DecodeRecordKey(key) + require.NoError(t, err) + require.Equal(t, h.IntValue(), int64(1)) } } } diff --git a/ddl/syncer/syncer.go b/ddl/syncer/syncer.go index ff7eaaa446893..e28d3d4954ca0 100644 --- a/ddl/syncer/syncer.go +++ b/ddl/syncer/syncer.go @@ -359,12 +359,6 @@ func (s *schemaVersionSyncer) OwnerCheckAllVersions(ctx context.Context, jobID i } if succ { - if variable.EnableMDL.Load() { - _, err = s.etcdCli.Delete(ctx, path, clientv3.WithPrefix()) - if err != nil { - logutil.BgLogger().Warn("[ddl] syncer delete versions failed", zap.Any("job id", jobID), zap.Error(err)) - } - } return nil } time.Sleep(checkVersInterval) diff --git a/ddl/table.go b/ddl/table.go index df329fd973c06..9e6fab762d3c5 100644 --- a/ddl/table.go +++ b/ddl/table.go @@ -812,8 +812,8 @@ func onTruncateTable(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, _ erro return ver, nil } -func onRebaseRowIDType(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, _ error) { - return onRebaseAutoID(d, d.store, t, job, autoid.RowIDAllocType) +func onRebaseAutoIncrementIDType(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, _ error) { + return onRebaseAutoID(d, d.store, t, job, autoid.AutoIncrementType) } func onRebaseAutoRandomType(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, _ error) { @@ -862,7 +862,7 @@ func onRebaseAutoID(d *ddlCtx, store kv.Storage, t *meta.Meta, job *model.Job, t newBase = newBaseTemp } - if tp == autoid.RowIDAllocType { + if tp == autoid.AutoIncrementType { tblInfo.AutoIncID = newBase } else { tblInfo.AutoRandID = newBase @@ -1341,6 +1341,7 @@ func onUpdateFlashReplicaStatus(d *ddlCtx, t *meta.Meta, job *model.Job) (ver in newIDs = append(newIDs, tblInfo.TiFlashReplica.AvailablePartitionIDs[i+1:]...) tblInfo.TiFlashReplica.AvailablePartitionIDs = newIDs tblInfo.TiFlashReplica.Available = false + logutil.BgLogger().Info("TiFlash replica become unavailable", zap.Int64("tableID", tblInfo.ID), zap.Int64("partitionID", id)) break } } @@ -1350,6 +1351,9 @@ func onUpdateFlashReplicaStatus(d *ddlCtx, t *meta.Meta, job *model.Job) (ver in return ver, errors.Errorf("unknown physical ID %v in table %v", physicalID, tblInfo.Name.O) } + if tblInfo.TiFlashReplica.Available { + logutil.BgLogger().Info("TiFlash replica available", zap.Int64("tableID", tblInfo.ID)) + } ver, err = updateVersionAndTableInfo(d, t, job, tblInfo, true) if err != nil { return ver, errors.Trace(err) diff --git a/ddl/table_modify_test.go b/ddl/table_modify_test.go index f4b273771fd46..c042d266ac9e2 100644 --- a/ddl/table_modify_test.go +++ b/ddl/table_modify_test.go @@ -163,6 +163,7 @@ func TestLockTableReadOnly(t *testing.T) { tk1.MustExec("admin cleanup table lock t1") tk2.MustExec("insert into t1 set a=1, b=2") + tk1.MustExec("set global tidb_ddl_enable_fast_reorg = 0") tk1.MustExec("set tidb_enable_amend_pessimistic_txn = 1") tk1.MustExec("begin pessimistic") tk1.MustQuery("select * from t1 where a = 1").Check(testkit.Rows("1 2")) diff --git a/ddl/table_test.go b/ddl/table_test.go index a9320e01cc781..e0e1c45e3b0ef 100644 --- a/ddl/table_test.go +++ b/ddl/table_test.go @@ -24,7 +24,9 @@ import ( "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/meta" "github.com/pingcap/tidb/meta/autoid" + "github.com/pingcap/tidb/parser/ast" "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessiontxn" "github.com/pingcap/tidb/table" @@ -158,7 +160,7 @@ func testGetTableWithError(store kv.Storage, schemaID, tableID int64) (table.Tab return nil, errors.New("table not found") } alloc := autoid.NewAllocator(store, schemaID, tblInfo.ID, false, autoid.RowIDAllocType) - tbl, err := table.TableFromMeta(autoid.NewAllocators(alloc), tblInfo) + tbl, err := table.TableFromMeta(autoid.NewAllocators(false, alloc), tblInfo) if err != nil { return nil, errors.Trace(err) } @@ -371,3 +373,82 @@ func TestCreateTables(t *testing.T) { testGetTable(t, domain, genIDs[1]) testGetTable(t, domain, genIDs[2]) } + +func TestAlterTTL(t *testing.T) { + store, domain := testkit.CreateMockStoreAndDomainWithSchemaLease(t, testLease) + + d := domain.DDL() + + dbInfo, err := testSchemaInfo(store, "test_table") + require.NoError(t, err) + testCreateSchema(t, testkit.NewTestKit(t, store).Session(), d, dbInfo) + + ctx := testkit.NewTestKit(t, store).Session() + + // initialize a table with ttlInfo + tableName := "t" + tblInfo, err := testTableInfo(store, tableName, 2) + require.NoError(t, err) + tblInfo.Columns[0].FieldType = *types.NewFieldType(mysql.TypeDatetime) + tblInfo.Columns[1].FieldType = *types.NewFieldType(mysql.TypeDatetime) + tblInfo.TTLInfo = &model.TTLInfo{ + ColumnName: tblInfo.Columns[0].Name, + IntervalExprStr: "5", + IntervalTimeUnit: int(ast.TimeUnitDay), + } + + // create table + job := testCreateTable(t, ctx, d, dbInfo, tblInfo) + testCheckTableState(t, store, dbInfo, tblInfo, model.StatePublic) + testCheckJobDone(t, store, job.ID, true) + + // submit ddl job to modify ttlInfo + tableInfoAfterAlterTTLInfo := tblInfo.Clone() + require.NoError(t, err) + tableInfoAfterAlterTTLInfo.TTLInfo = &model.TTLInfo{ + ColumnName: tblInfo.Columns[1].Name, + IntervalExprStr: "1", + IntervalTimeUnit: int(ast.TimeUnitYear), + } + + job = &model.Job{ + SchemaID: dbInfo.ID, + TableID: tblInfo.ID, + Type: model.ActionAlterTTLInfo, + BinlogInfo: &model.HistoryInfo{}, + Args: []interface{}{&model.TTLInfo{ + ColumnName: tblInfo.Columns[1].Name, + IntervalExprStr: "1", + IntervalTimeUnit: int(ast.TimeUnitYear), + }}, + } + ctx.SetValue(sessionctx.QueryString, "skip") + require.NoError(t, d.DoDDLJob(ctx, job)) + + v := getSchemaVer(t, ctx) + checkHistoryJobArgs(t, ctx, job.ID, &historyJobArgs{ver: v, tbl: nil}) + + // assert the ddlInfo as expected + historyJob, err := ddl.GetHistoryJobByID(testkit.NewTestKit(t, store).Session(), job.ID) + require.NoError(t, err) + require.Equal(t, tableInfoAfterAlterTTLInfo.TTLInfo, historyJob.BinlogInfo.TableInfo.TTLInfo) + + // submit a ddl job to modify ttlEnabled + job = &model.Job{ + SchemaID: dbInfo.ID, + TableID: tblInfo.ID, + Type: model.ActionAlterTTLRemove, + BinlogInfo: &model.HistoryInfo{}, + Args: []interface{}{true}, + } + ctx.SetValue(sessionctx.QueryString, "skip") + require.NoError(t, d.DoDDLJob(ctx, job)) + + v = getSchemaVer(t, ctx) + checkHistoryJobArgs(t, ctx, job.ID, &historyJobArgs{ver: v, tbl: nil}) + + // assert the ddlInfo as expected + historyJob, err = ddl.GetHistoryJobByID(testkit.NewTestKit(t, store).Session(), job.ID) + require.NoError(t, err) + require.Empty(t, historyJob.BinlogInfo.TableInfo.TTLInfo) +} diff --git a/ddl/ttl.go b/ddl/ttl.go new file mode 100644 index 0000000000000..357481f3eb32f --- /dev/null +++ b/ddl/ttl.go @@ -0,0 +1,184 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ddl + +import ( + "fmt" + "strings" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/expression" + "github.com/pingcap/tidb/meta" + "github.com/pingcap/tidb/parser" + "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/format" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessiontxn" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/dbterror" +) + +func onTTLInfoRemove(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, err error) { + tblInfo, err := GetTableInfoAndCancelFaultJob(t, job, job.SchemaID) + if err != nil { + return ver, errors.Trace(err) + } + + tblInfo.TTLInfo = nil + ver, err = updateVersionAndTableInfo(d, t, job, tblInfo, true) + if err != nil { + return ver, errors.Trace(err) + } + job.FinishTableJob(model.JobStateDone, model.StatePublic, ver, tblInfo) + return ver, nil +} + +func onTTLInfoChange(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, err error) { + // at least one for them is not nil + var ttlInfo *model.TTLInfo + var ttlInfoEnable *bool + + if err := job.DecodeArgs(&ttlInfo, &ttlInfoEnable); err != nil { + job.State = model.JobStateCancelled + return ver, errors.Trace(err) + } + + tblInfo, err := GetTableInfoAndCancelFaultJob(t, job, job.SchemaID) + if err != nil { + return ver, errors.Trace(err) + } + + if ttlInfo != nil { + // if the TTL_ENABLE is not set explicitly, use the original value + if ttlInfoEnable == nil { + ttlInfo.Enable = tblInfo.TTLInfo.Enable + } + tblInfo.TTLInfo = ttlInfo + } + if ttlInfoEnable != nil { + if tblInfo.TTLInfo == nil { + return ver, errors.Trace(dbterror.ErrSetTTLEnableForNonTTLTable) + } + + tblInfo.TTLInfo.Enable = *ttlInfoEnable + } + + ver, err = updateVersionAndTableInfo(d, t, job, tblInfo, true) + if err != nil { + return ver, errors.Trace(err) + } + job.FinishTableJob(model.JobStateDone, model.StatePublic, ver, tblInfo) + return ver, nil +} + +func checkTTLInfoValid(ctx sessionctx.Context, schema model.CIStr, tblInfo *model.TableInfo) error { + if err := checkTTLIntervalExpr(ctx, tblInfo.TTLInfo); err != nil { + return err + } + + if err := checkTTLTableSuitable(ctx, schema, tblInfo); err != nil { + return err + } + + return checkTTLInfoColumnType(tblInfo) +} + +func checkTTLIntervalExpr(ctx sessionctx.Context, ttlInfo *model.TTLInfo) error { + // FIXME: use a better way to validate the interval expression in ttl + var nowAddIntervalExpr ast.ExprNode + + unit := ast.TimeUnitType(ttlInfo.IntervalTimeUnit) + expr := fmt.Sprintf("select NOW() + INTERVAL %s %s", ttlInfo.IntervalExprStr, unit.String()) + stmts, _, err := parser.New().ParseSQL(expr) + if err != nil { + // FIXME: the error information can be wrong, as it could indicate an unknown position to user. + return errors.Trace(err) + } + nowAddIntervalExpr = stmts[0].(*ast.SelectStmt).Fields.Fields[0].Expr + _, err = expression.EvalAstExpr(ctx, nowAddIntervalExpr) + return err +} + +func checkTTLInfoColumnType(tblInfo *model.TableInfo) error { + colInfo := findColumnByName(tblInfo.TTLInfo.ColumnName.L, tblInfo) + if colInfo == nil { + return dbterror.ErrBadField.GenWithStackByArgs(tblInfo.TTLInfo.ColumnName.O, "TTL config") + } + if !types.IsTypeTime(colInfo.FieldType.GetType()) { + return dbterror.ErrUnsupportedColumnInTTLConfig.GenWithStackByArgs(tblInfo.TTLInfo.ColumnName.O) + } + + return nil +} + +// checkTTLTableSuitable returns whether this table is suitable to be a TTL table +// A temporary table or a parent table referenced by a foreign key cannot be TTL table +func checkTTLTableSuitable(ctx sessionctx.Context, schema model.CIStr, tblInfo *model.TableInfo) error { + if tblInfo.TempTableType != model.TempTableNone { + return dbterror.ErrTempTableNotAllowedWithTTL + } + + // checks even when the foreign key check is not enabled, to keep safe + is := sessiontxn.GetTxnManager(ctx).GetTxnInfoSchema() + if referredFK := checkTableHasForeignKeyReferred(is, schema.L, tblInfo.Name.L, nil, true); referredFK != nil { + return dbterror.ErrUnsupportedTTLReferencedByFK + } + + return nil +} + +func checkDropColumnWithTTLConfig(tblInfo *model.TableInfo, colName string) error { + if tblInfo.TTLInfo != nil { + if tblInfo.TTLInfo.ColumnName.L == colName { + return dbterror.ErrTTLColumnCannotDrop.GenWithStackByArgs(colName) + } + } + + return nil +} + +// getTTLInfoInOptions returns the aggregated ttlInfo, the ttlEnable, or an error. +// if TTL or TTL_ENABLE is not set in the config, the corresponding return value will be nil. +// if both of them are set, the `ttlInfo.Enable` will be equal with `ttlEnable`. +func getTTLInfoInOptions(options []*ast.TableOption) (ttlInfo *model.TTLInfo, ttlEnable *bool, err error) { + for _, op := range options { + switch op.Tp { + case ast.TableOptionTTL: + var sb strings.Builder + restoreFlags := format.RestoreStringSingleQuotes | format.RestoreNameBackQuotes + restoreCtx := format.NewRestoreCtx(restoreFlags, &sb) + err := op.Value.Restore(restoreCtx) + if err != nil { + return nil, nil, err + } + + intervalExpr := sb.String() + ttlInfo = &model.TTLInfo{ + ColumnName: op.ColumnName.Name, + IntervalExprStr: intervalExpr, + IntervalTimeUnit: int(op.TimeUnitValue.Unit), + Enable: true, + } + case ast.TableOptionTTLEnable: + ttlEnable = &op.BoolValue + } + } + + if ttlInfo != nil && ttlEnable != nil { + ttlInfo.Enable = *ttlEnable + } + return ttlInfo, ttlEnable, nil +} diff --git a/ddl/ttl_test.go b/ddl/ttl_test.go new file mode 100644 index 0000000000000..a994792a54a43 --- /dev/null +++ b/ddl/ttl_test.go @@ -0,0 +1,116 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ddl + +import ( + "testing" + + "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/model" + "github.com/stretchr/testify/assert" +) + +func Test_getTTLInfoInOptions(t *testing.T) { + falseValue := false + trueValue := true + + cases := []struct { + options []*ast.TableOption + ttlInfo *model.TTLInfo + ttlEnable *bool + err error + }{ + { + []*ast.TableOption{}, + nil, + nil, + nil, + }, + { + []*ast.TableOption{ + { + Tp: ast.TableOptionTTL, + ColumnName: &ast.ColumnName{Name: model.NewCIStr("test_column")}, + Value: ast.NewValueExpr(5, "", ""), + TimeUnitValue: &ast.TimeUnitExpr{Unit: ast.TimeUnitYear}, + }, + }, + &model.TTLInfo{ + ColumnName: model.NewCIStr("test_column"), + IntervalExprStr: "5", + IntervalTimeUnit: int(ast.TimeUnitYear), + Enable: true, + }, + nil, + nil, + }, + { + []*ast.TableOption{ + { + Tp: ast.TableOptionTTLEnable, + BoolValue: false, + }, + { + Tp: ast.TableOptionTTL, + ColumnName: &ast.ColumnName{Name: model.NewCIStr("test_column")}, + Value: ast.NewValueExpr(5, "", ""), + TimeUnitValue: &ast.TimeUnitExpr{Unit: ast.TimeUnitYear}, + }, + }, + &model.TTLInfo{ + ColumnName: model.NewCIStr("test_column"), + IntervalExprStr: "5", + IntervalTimeUnit: int(ast.TimeUnitYear), + Enable: false, + }, + &falseValue, + nil, + }, + { + []*ast.TableOption{ + { + Tp: ast.TableOptionTTLEnable, + BoolValue: false, + }, + { + Tp: ast.TableOptionTTL, + ColumnName: &ast.ColumnName{Name: model.NewCIStr("test_column")}, + Value: ast.NewValueExpr(5, "", ""), + TimeUnitValue: &ast.TimeUnitExpr{Unit: ast.TimeUnitYear}, + }, + { + Tp: ast.TableOptionTTLEnable, + BoolValue: true, + }, + }, + &model.TTLInfo{ + ColumnName: model.NewCIStr("test_column"), + IntervalExprStr: "5", + IntervalTimeUnit: int(ast.TimeUnitYear), + Enable: true, + }, + &trueValue, + nil, + }, + } + + for _, c := range cases { + ttlInfo, ttlEnable, err := getTTLInfoInOptions(c.options) + + assert.Equal(t, c.ttlInfo, ttlInfo) + assert.Equal(t, c.ttlEnable, ttlEnable) + assert.Equal(t, c.err, err) + } +} diff --git a/distsql/distsql_test.go b/distsql/distsql_test.go index 52aa62ba112fa..f3988ea5f7c4d 100644 --- a/distsql/distsql_test.go +++ b/distsql/distsql_test.go @@ -107,7 +107,8 @@ func TestSelectWithRuntimeStats(t *testing.T) { } func TestSelectResultRuntimeStats(t *testing.T) { - basic := &execdetails.BasicRuntimeStats{} + stmtStats := execdetails.NewRuntimeStatsColl(nil) + basic := stmtStats.GetBasicRuntimeStats(1) basic.Record(time.Second, 20) s1 := &selectResultRuntimeStats{ copRespTime: []time.Duration{time.Second, time.Millisecond}, @@ -120,8 +121,6 @@ func TestSelectResultRuntimeStats(t *testing.T) { } s2 := *s1 - stmtStats := execdetails.NewRuntimeStatsColl(nil) - stmtStats.RegisterStats(1, basic) stmtStats.RegisterStats(1, s1) stmtStats.RegisterStats(1, &s2) stats := stmtStats.GetRootStats(1) diff --git a/distsql/request_builder.go b/distsql/request_builder.go index 4a8b3ddfeab13..09ab4094ab732 100644 --- a/distsql/request_builder.go +++ b/distsql/request_builder.go @@ -20,7 +20,6 @@ import ( "sort" "sync/atomic" - "github.com/pingcap/errors" "github.com/pingcap/failpoint" "github.com/pingcap/kvproto/pkg/metapb" "github.com/pingcap/tidb/ddl/placement" @@ -71,6 +70,9 @@ func (builder *RequestBuilder) Build() (*kv.Request, error) { if err != nil { builder.err = err } + if builder.Request.KeyRanges == nil { + builder.Request.KeyRanges = kv.NewNonParitionedKeyRanges(nil) + } return &builder.Request, builder.err } @@ -86,7 +88,7 @@ func (builder *RequestBuilder) SetMemTracker(tracker *memory.Tracker) *RequestBu // br refers it, so have to keep it. func (builder *RequestBuilder) SetTableRanges(tid int64, tableRanges []*ranger.Range, fb *statistics.QueryFeedback) *RequestBuilder { if builder.err == nil { - builder.Request.KeyRanges = TableRangesToKVRanges(tid, tableRanges, fb) + builder.Request.KeyRanges = kv.NewNonParitionedKeyRanges(TableRangesToKVRanges(tid, tableRanges, fb)) } return builder } @@ -112,7 +114,9 @@ func (builder *RequestBuilder) SetIndexRangesForTables(sc *stmtctx.StatementCont // SetHandleRanges sets "KeyRanges" for "kv.Request" by converting table handle range // "ranges" to "KeyRanges" firstly. func (builder *RequestBuilder) SetHandleRanges(sc *stmtctx.StatementContext, tid int64, isCommonHandle bool, ranges []*ranger.Range, fb *statistics.QueryFeedback) *RequestBuilder { - return builder.SetHandleRangesForTables(sc, []int64{tid}, isCommonHandle, ranges, fb) + builder = builder.SetHandleRangesForTables(sc, []int64{tid}, isCommonHandle, ranges, fb) + builder.err = builder.Request.KeyRanges.SetToNonPartitioned() + return builder } // SetHandleRangesForTables sets "KeyRanges" for "kv.Request" by converting table handle range @@ -127,14 +131,17 @@ func (builder *RequestBuilder) SetHandleRangesForTables(sc *stmtctx.StatementCon // SetTableHandles sets "KeyRanges" for "kv.Request" by converting table handles // "handles" to "KeyRanges" firstly. func (builder *RequestBuilder) SetTableHandles(tid int64, handles []kv.Handle) *RequestBuilder { - builder.Request.KeyRanges, builder.FixedRowCountHint = TableHandlesToKVRanges(tid, handles) + var keyRanges []kv.KeyRange + keyRanges, builder.FixedRowCountHint = TableHandlesToKVRanges(tid, handles) + builder.Request.KeyRanges = kv.NewNonParitionedKeyRanges(keyRanges) return builder } // SetPartitionsAndHandles sets "KeyRanges" for "kv.Request" by converting ParitionHandles to KeyRanges. // handles in slice must be kv.PartitionHandle. func (builder *RequestBuilder) SetPartitionsAndHandles(handles []kv.Handle) *RequestBuilder { - builder.Request.KeyRanges = PartitionHandlesToKVRanges(handles) + keyRanges := PartitionHandlesToKVRanges(handles) + builder.Request.KeyRanges = kv.NewNonParitionedKeyRanges(keyRanges) return builder } @@ -183,10 +190,22 @@ func (builder *RequestBuilder) SetChecksumRequest(checksum *tipb.ChecksumRequest // SetKeyRanges sets "KeyRanges" for "kv.Request". func (builder *RequestBuilder) SetKeyRanges(keyRanges []kv.KeyRange) *RequestBuilder { + builder.Request.KeyRanges = kv.NewNonParitionedKeyRanges(keyRanges) + return builder +} + +// SetWrappedKeyRanges sets "KeyRanges" for "kv.Request". +func (builder *RequestBuilder) SetWrappedKeyRanges(keyRanges *kv.KeyRanges) *RequestBuilder { builder.Request.KeyRanges = keyRanges return builder } +// SetPartitionKeyRanges sets the "KeyRanges" for "kv.Request" on partitioned table cases. +func (builder *RequestBuilder) SetPartitionKeyRanges(keyRanges [][]kv.KeyRange) *RequestBuilder { + builder.Request.KeyRanges = kv.NewPartitionedKeyRanges(keyRanges) + return builder +} + // SetStartTS sets "StartTS" for "kv.Request". func (builder *RequestBuilder) SetStartTS(startTS uint64) *RequestBuilder { builder.Request.StartTs = startTS @@ -270,6 +289,7 @@ func (builder *RequestBuilder) SetFromSessionVars(sv *variable.SessionVars) *Req } builder.RequestSource.RequestSourceInternal = sv.InRestrictedSQL builder.RequestSource.RequestSourceType = sv.RequestSourceType + builder.StoreBatchSize = sv.StoreBatchSize return builder } @@ -318,13 +338,12 @@ func (builder *RequestBuilder) verifyTxnScope() error { return nil } visitPhysicalTableID := make(map[int64]struct{}) - for _, keyRange := range builder.Request.KeyRanges { - tableID := tablecodec.DecodeTableID(keyRange.StartKey) - if tableID > 0 { - visitPhysicalTableID[tableID] = struct{}{} - } else { - return errors.New("requestBuilder can't decode tableID from keyRange") - } + tids, err := tablecodec.VerifyTableIDForRanges(builder.Request.KeyRanges) + if err != nil { + return err + } + for _, tid := range tids { + visitPhysicalTableID[tid] = struct{}{} } for phyTableID := range visitPhysicalTableID { @@ -376,7 +395,7 @@ func (builder *RequestBuilder) SetClosestReplicaReadAdjuster(chkFn kv.CoprReques } // TableHandleRangesToKVRanges convert table handle ranges to "KeyRanges" for multiple tables. -func TableHandleRangesToKVRanges(sc *stmtctx.StatementContext, tid []int64, isCommonHandle bool, ranges []*ranger.Range, fb *statistics.QueryFeedback) ([]kv.KeyRange, error) { +func TableHandleRangesToKVRanges(sc *stmtctx.StatementContext, tid []int64, isCommonHandle bool, ranges []*ranger.Range, fb *statistics.QueryFeedback) (*kv.KeyRanges, error) { if !isCommonHandle { return tablesRangesToKVRanges(tid, ranges, fb), nil } @@ -387,14 +406,18 @@ func TableHandleRangesToKVRanges(sc *stmtctx.StatementContext, tid []int64, isCo // Note this function should not be exported, but currently // br refers to it, so have to keep it. func TableRangesToKVRanges(tid int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) []kv.KeyRange { - return tablesRangesToKVRanges([]int64{tid}, ranges, fb) + if len(ranges) == 0 { + return []kv.KeyRange{} + } + return tablesRangesToKVRanges([]int64{tid}, ranges, fb).FirstPartitionRange() } // tablesRangesToKVRanges converts table ranges to "KeyRange". -func tablesRangesToKVRanges(tids []int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) []kv.KeyRange { +func tablesRangesToKVRanges(tids []int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) *kv.KeyRanges { if fb == nil || fb.Hist == nil { return tableRangesToKVRangesWithoutSplit(tids, ranges) } + // The following codes are deprecated since the feedback is deprecated. krs := make([]kv.KeyRange, 0, len(ranges)) feedbackRanges := make([]*ranger.Range, 0, len(ranges)) for _, ran := range ranges { @@ -420,20 +443,23 @@ func tablesRangesToKVRanges(tids []int64, ranges []*ranger.Range, fb *statistics } } fb.StoreRanges(feedbackRanges) - return krs + return kv.NewNonParitionedKeyRanges(krs) } -func tableRangesToKVRangesWithoutSplit(tids []int64, ranges []*ranger.Range) []kv.KeyRange { - krs := make([]kv.KeyRange, 0, len(ranges)*len(tids)) +func tableRangesToKVRangesWithoutSplit(tids []int64, ranges []*ranger.Range) *kv.KeyRanges { + krs := make([][]kv.KeyRange, len(tids)) + for i := range krs { + krs[i] = make([]kv.KeyRange, 0, len(ranges)) + } for _, ran := range ranges { low, high := encodeHandleKey(ran) - for _, tid := range tids { + for i, tid := range tids { startKey := tablecodec.EncodeRowKey(tid, low) endKey := tablecodec.EncodeRowKey(tid, high) - krs = append(krs, kv.KeyRange{StartKey: startKey, EndKey: endKey}) + krs[i] = append(krs[i], kv.KeyRange{StartKey: startKey, EndKey: endKey}) } } - return krs + return kv.NewPartitionedKeyRanges(krs) } func encodeHandleKey(ran *ranger.Range) ([]byte, []byte) { @@ -587,27 +613,33 @@ func PartitionHandlesToKVRanges(handles []kv.Handle) []kv.KeyRange { } // IndexRangesToKVRanges converts index ranges to "KeyRange". -func IndexRangesToKVRanges(sc *stmtctx.StatementContext, tid, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) ([]kv.KeyRange, error) { +func IndexRangesToKVRanges(sc *stmtctx.StatementContext, tid, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) (*kv.KeyRanges, error) { return IndexRangesToKVRangesWithInterruptSignal(sc, tid, idxID, ranges, fb, nil, nil) } // IndexRangesToKVRangesWithInterruptSignal converts index ranges to "KeyRange". // The process can be interrupted by set `interruptSignal` to true. -func IndexRangesToKVRangesWithInterruptSignal(sc *stmtctx.StatementContext, tid, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback, memTracker *memory.Tracker, interruptSignal *atomic.Value) ([]kv.KeyRange, error) { - return indexRangesToKVRangesForTablesWithInterruptSignal(sc, []int64{tid}, idxID, ranges, fb, memTracker, interruptSignal) +func IndexRangesToKVRangesWithInterruptSignal(sc *stmtctx.StatementContext, tid, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback, memTracker *memory.Tracker, interruptSignal *atomic.Value) (*kv.KeyRanges, error) { + keyRanges, err := indexRangesToKVRangesForTablesWithInterruptSignal(sc, []int64{tid}, idxID, ranges, fb, memTracker, interruptSignal) + if err != nil { + return nil, err + } + err = keyRanges.SetToNonPartitioned() + return keyRanges, err } // IndexRangesToKVRangesForTables converts indexes ranges to "KeyRange". -func IndexRangesToKVRangesForTables(sc *stmtctx.StatementContext, tids []int64, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) ([]kv.KeyRange, error) { +func IndexRangesToKVRangesForTables(sc *stmtctx.StatementContext, tids []int64, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback) (*kv.KeyRanges, error) { return indexRangesToKVRangesForTablesWithInterruptSignal(sc, tids, idxID, ranges, fb, nil, nil) } // IndexRangesToKVRangesForTablesWithInterruptSignal converts indexes ranges to "KeyRange". // The process can be interrupted by set `interruptSignal` to true. -func indexRangesToKVRangesForTablesWithInterruptSignal(sc *stmtctx.StatementContext, tids []int64, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback, memTracker *memory.Tracker, interruptSignal *atomic.Value) ([]kv.KeyRange, error) { +func indexRangesToKVRangesForTablesWithInterruptSignal(sc *stmtctx.StatementContext, tids []int64, idxID int64, ranges []*ranger.Range, fb *statistics.QueryFeedback, memTracker *memory.Tracker, interruptSignal *atomic.Value) (*kv.KeyRanges, error) { if fb == nil || fb.Hist == nil { return indexRangesToKVWithoutSplit(sc, tids, idxID, ranges, memTracker, interruptSignal) } + // The following code is non maintained since the feedback deprecated. feedbackRanges := make([]*ranger.Range, 0, len(ranges)) for _, ran := range ranges { low, high, err := EncodeIndexKey(sc, ran) @@ -642,11 +674,11 @@ func indexRangesToKVRangesForTablesWithInterruptSignal(sc *stmtctx.StatementCont } } fb.StoreRanges(feedbackRanges) - return krs, nil + return kv.NewNonParitionedKeyRanges(krs), nil } // CommonHandleRangesToKVRanges converts common handle ranges to "KeyRange". -func CommonHandleRangesToKVRanges(sc *stmtctx.StatementContext, tids []int64, ranges []*ranger.Range) ([]kv.KeyRange, error) { +func CommonHandleRangesToKVRanges(sc *stmtctx.StatementContext, tids []int64, ranges []*ranger.Range) (*kv.KeyRanges, error) { rans := make([]*ranger.Range, 0, len(ranges)) for _, ran := range ranges { low, high, err := EncodeIndexKey(sc, ran) @@ -656,20 +688,23 @@ func CommonHandleRangesToKVRanges(sc *stmtctx.StatementContext, tids []int64, ra rans = append(rans, &ranger.Range{LowVal: []types.Datum{types.NewBytesDatum(low)}, HighVal: []types.Datum{types.NewBytesDatum(high)}, LowExclude: false, HighExclude: true, Collators: collate.GetBinaryCollatorSlice(1)}) } - krs := make([]kv.KeyRange, 0, len(rans)) + krs := make([][]kv.KeyRange, len(tids)) + for i := range krs { + krs[i] = make([]kv.KeyRange, 0, len(ranges)) + } for _, ran := range rans { low, high := ran.LowVal[0].GetBytes(), ran.HighVal[0].GetBytes() if ran.LowExclude { low = kv.Key(low).PrefixNext() } ran.LowVal[0].SetBytes(low) - for _, tid := range tids { + for i, tid := range tids { startKey := tablecodec.EncodeRowKey(tid, low) endKey := tablecodec.EncodeRowKey(tid, high) - krs = append(krs, kv.KeyRange{StartKey: startKey, EndKey: endKey}) + krs[i] = append(krs[i], kv.KeyRange{StartKey: startKey, EndKey: endKey}) } } - return krs, nil + return kv.NewPartitionedKeyRanges(krs), nil } // VerifyTxnScope verify whether the txnScope and visited physical table break the leader rule's dcLocation. @@ -691,8 +726,12 @@ func VerifyTxnScope(txnScope string, physicalTableID int64, is infoschema.InfoSc return true } -func indexRangesToKVWithoutSplit(sc *stmtctx.StatementContext, tids []int64, idxID int64, ranges []*ranger.Range, memTracker *memory.Tracker, interruptSignal *atomic.Value) ([]kv.KeyRange, error) { - krs := make([]kv.KeyRange, 0, len(ranges)) +func indexRangesToKVWithoutSplit(sc *stmtctx.StatementContext, tids []int64, idxID int64, ranges []*ranger.Range, memTracker *memory.Tracker, interruptSignal *atomic.Value) (*kv.KeyRanges, error) { + krs := make([][]kv.KeyRange, len(tids)) + for i := range krs { + krs[i] = make([]kv.KeyRange, 0, len(ranges)) + } + const checkSignalStep = 8 var estimatedMemUsage int64 // encodeIndexKey and EncodeIndexSeekKey is time-consuming, thus we need to @@ -705,13 +744,13 @@ func indexRangesToKVWithoutSplit(sc *stmtctx.StatementContext, tids []int64, idx if i == 0 { estimatedMemUsage += int64(cap(low) + cap(high)) } - for _, tid := range tids { + for j, tid := range tids { startKey := tablecodec.EncodeIndexSeekKey(tid, idxID, low) endKey := tablecodec.EncodeIndexSeekKey(tid, idxID, high) if i == 0 { estimatedMemUsage += int64(cap(startKey)) + int64(cap(endKey)) } - krs = append(krs, kv.KeyRange{StartKey: startKey, EndKey: endKey}) + krs[j] = append(krs[j], kv.KeyRange{StartKey: startKey, EndKey: endKey}) } if i%checkSignalStep == 0 { if i == 0 && memTracker != nil { @@ -719,11 +758,11 @@ func indexRangesToKVWithoutSplit(sc *stmtctx.StatementContext, tids []int64, idx memTracker.Consume(estimatedMemUsage) } if interruptSignal != nil && interruptSignal.Load().(bool) { - return nil, nil + return kv.NewPartitionedKeyRanges(nil), nil } } } - return krs, nil + return kv.NewPartitionedKeyRanges(krs), nil } // EncodeIndexKey gets encoded keys containing low and high diff --git a/distsql/request_builder_test.go b/distsql/request_builder_test.go index 2ffde4a512c0d..fa55229e36fa5 100644 --- a/distsql/request_builder_test.go +++ b/distsql/request_builder_test.go @@ -192,8 +192,8 @@ func TestIndexRangesToKVRanges(t *testing.T) { actual, err := IndexRangesToKVRanges(new(stmtctx.StatementContext), 12, 15, ranges, nil) require.NoError(t, err) - for i := range actual { - require.Equal(t, expect[i], actual[i]) + for i := range actual.FirstPartitionRange() { + require.Equal(t, expect[i], actual.FirstPartitionRange()[i]) } } @@ -242,7 +242,7 @@ func TestRequestBuilder1(t *testing.T) { Tp: 103, StartTs: 0x0, Data: []uint8{0x18, 0x0, 0x20, 0x0, 0x40, 0x0, 0x5a, 0x0}, - KeyRanges: []kv.KeyRange{ + KeyRanges: kv.NewNonParitionedKeyRanges([]kv.KeyRange{ { StartKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3}, @@ -263,7 +263,7 @@ func TestRequestBuilder1(t *testing.T) { StartKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x23}, EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x23}, }, - }, + }), Cacheable: true, KeepOrder: false, Desc: false, @@ -325,7 +325,7 @@ func TestRequestBuilder2(t *testing.T) { Tp: 103, StartTs: 0x0, Data: []uint8{0x18, 0x0, 0x20, 0x0, 0x40, 0x0, 0x5a, 0x0}, - KeyRanges: []kv.KeyRange{ + KeyRanges: kv.NewNonParitionedKeyRanges([]kv.KeyRange{ { StartKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x69, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x69, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3}, @@ -346,7 +346,7 @@ func TestRequestBuilder2(t *testing.T) { StartKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x69, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x23}, EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x5f, 0x69, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x23}, }, - }, + }), Cacheable: true, KeepOrder: false, Desc: false, @@ -378,7 +378,7 @@ func TestRequestBuilder3(t *testing.T) { Tp: 103, StartTs: 0x0, Data: []uint8{0x18, 0x0, 0x20, 0x0, 0x40, 0x0, 0x5a, 0x0}, - KeyRanges: []kv.KeyRange{ + KeyRanges: kv.NewNonParitionedKeyRanges([]kv.KeyRange{ { StartKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1}, @@ -395,7 +395,7 @@ func TestRequestBuilder3(t *testing.T) { StartKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x64}, EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x5f, 0x72, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x65}, }, - }, + }), Cacheable: true, KeepOrder: false, Desc: false, @@ -444,7 +444,7 @@ func TestRequestBuilder4(t *testing.T) { Tp: 103, StartTs: 0x0, Data: []uint8{0x18, 0x0, 0x20, 0x0, 0x40, 0x0, 0x5a, 0x0}, - KeyRanges: keyRanges, + KeyRanges: kv.NewNonParitionedKeyRanges(keyRanges), Cacheable: true, KeepOrder: false, Desc: false, @@ -491,7 +491,7 @@ func TestRequestBuilder5(t *testing.T) { Tp: 104, StartTs: 0x0, Data: []uint8{0x8, 0x0, 0x18, 0x0, 0x20, 0x0}, - KeyRanges: keyRanges, + KeyRanges: kv.NewNonParitionedKeyRanges(keyRanges), KeepOrder: true, Desc: false, Concurrency: 15, @@ -520,7 +520,7 @@ func TestRequestBuilder6(t *testing.T) { Tp: 105, StartTs: 0x0, Data: []uint8{0x10, 0x0, 0x18, 0x0}, - KeyRanges: keyRanges, + KeyRanges: kv.NewNonParitionedKeyRanges(keyRanges), KeepOrder: false, Desc: false, Concurrency: concurrency, @@ -557,6 +557,7 @@ func TestRequestBuilder7(t *testing.T) { Tp: 0, StartTs: 0x0, KeepOrder: false, + KeyRanges: kv.NewNonParitionedKeyRanges(nil), Desc: false, Concurrency: concurrency, IsolationLevel: 0, @@ -583,6 +584,7 @@ func TestRequestBuilder8(t *testing.T) { Tp: 0, StartTs: 0x0, Data: []uint8(nil), + KeyRanges: kv.NewNonParitionedKeyRanges(nil), Concurrency: variable.DefDistSQLScanConcurrency, IsolationLevel: 0, Priority: 0, @@ -635,8 +637,8 @@ func TestIndexRangesToKVRangesWithFbs(t *testing.T) { EndKey: kv.Key{0x74, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0x69, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5}, }, } - for i := 0; i < len(actual); i++ { - require.Equal(t, expect[i], actual[i]) + for i := 0; i < len(actual.FirstPartitionRange()); i++ { + require.Equal(t, expect[i], actual.FirstPartitionRange()[i]) } } diff --git a/distsql/select_result.go b/distsql/select_result.go index 0e807b360d0ad..6d1f6308e4120 100644 --- a/distsql/select_result.go +++ b/distsql/select_result.go @@ -359,13 +359,11 @@ func (r *selectResult) updateCopRuntimeStats(ctx context.Context, copStats *copr } if r.stats == nil { - id := r.rootPlanID r.stats = &selectResultRuntimeStats{ backoffSleep: make(map[string]time.Duration), rpcStat: tikv.NewRegionRequestRuntimeStats(), distSQLConcurrency: r.distSQLConcurrency, } - r.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(id, r.stats) } r.stats.mergeCopRuntimeStats(copStats, respTime) @@ -456,6 +454,9 @@ func (r *selectResult) Close() error { if respSize > 0 { r.memConsume(-respSize) } + if r.stats != nil { + defer r.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(r.rootPlanID, r.stats) + } return r.resp.Close() } diff --git a/distsql/select_result_test.go b/distsql/select_result_test.go index c12892083d641..4ec56a286e5ab 100644 --- a/distsql/select_result_test.go +++ b/distsql/select_result_test.go @@ -34,7 +34,7 @@ func TestUpdateCopRuntimeStats(t *testing.T) { require.Nil(t, ctx.GetSessionVars().StmtCtx.RuntimeStatsColl) sr.rootPlanID = 1234 - sr.updateCopRuntimeStats(context.Background(), &copr.CopRuntimeStats{ExecDetails: execdetails.ExecDetails{CalleeAddress: "a"}}, 0) + sr.updateCopRuntimeStats(context.Background(), &copr.CopRuntimeStats{ExecDetails: execdetails.ExecDetails{DetailsNeedP90: execdetails.DetailsNeedP90{CalleeAddress: "a"}}}, 0) ctx.GetSessionVars().StmtCtx.RuntimeStatsColl = execdetails.NewRuntimeStatsColl(nil) i := uint64(1) @@ -46,13 +46,13 @@ func TestUpdateCopRuntimeStats(t *testing.T) { require.NotEqual(t, len(sr.copPlanIDs), len(sr.selectResp.GetExecutionSummaries())) - sr.updateCopRuntimeStats(context.Background(), &copr.CopRuntimeStats{ExecDetails: execdetails.ExecDetails{CalleeAddress: "callee"}}, 0) + sr.updateCopRuntimeStats(context.Background(), &copr.CopRuntimeStats{ExecDetails: execdetails.ExecDetails{DetailsNeedP90: execdetails.DetailsNeedP90{CalleeAddress: "callee"}}}, 0) require.False(t, ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.ExistsCopStats(1234)) sr.copPlanIDs = []int{sr.rootPlanID} require.NotNil(t, ctx.GetSessionVars().StmtCtx.RuntimeStatsColl) require.Equal(t, len(sr.copPlanIDs), len(sr.selectResp.GetExecutionSummaries())) - sr.updateCopRuntimeStats(context.Background(), &copr.CopRuntimeStats{ExecDetails: execdetails.ExecDetails{CalleeAddress: "callee"}}, 0) + sr.updateCopRuntimeStats(context.Background(), &copr.CopRuntimeStats{ExecDetails: execdetails.ExecDetails{DetailsNeedP90: execdetails.DetailsNeedP90{CalleeAddress: "callee"}}}, 0) require.Equal(t, "tikv_task:{time:1ns, loops:1}", ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.GetOrCreateCopStats(1234, "tikv").String()) } diff --git a/docs/design/2020-01-24-collations.md b/docs/design/2020-01-24-collations.md index a222035745b83..af7c9e30b2f26 100644 --- a/docs/design/2020-01-24-collations.md +++ b/docs/design/2020-01-24-collations.md @@ -105,10 +105,10 @@ The interface is quite similar to the Go [collate package](https://godoc.org/gol ### Row Format -The encoding layout of TiDB has been described in our [previous article](https://pingcap.com/blog/2017-07-11-tidbinternal2/#map). The row format should be changed to make it memory comparable, this is important to the index lookup. Basic principle is that all keys encoded for strings should use the `sortKeys` result from `Key()`/`KeyFromString()` function. However, most of the `sortKeys` calculations are not reversible. +The encoding layout of TiDB has been described in our [previous article](https://docs.pingcap.com/tidb/stable/tidb-computing). The row format should be changed to make it memory comparable, this is important to the index lookup. Basic principle is that all keys encoded for strings should use the `sortKeys` result from `Key()`/`KeyFromString()` function. However, most of the `sortKeys` calculations are not reversible. * For table data, encodings stay unchanged. All strings are compared after decoding with the `Compare()` function. - * For table indices, we replace current `ColumnValue` with `sortKey` and encode the `ColumnValue` to the value,: + * For table indices, we replace current `ColumnValue` with `sortKey` and encode the `ColumnValue` to the value: - For unique indices: ``` Key: tablePrefix{tableID}_indexPrefixSep{indexID}_sortKey diff --git a/docs/design/2022-11-22-view-hint.md b/docs/design/2022-11-22-view-hint.md new file mode 100644 index 0000000000000..b780208a13f45 --- /dev/null +++ b/docs/design/2022-11-22-view-hint.md @@ -0,0 +1,134 @@ +# View Hint Design Doc +- Author: Reminiscent +- Tracking Issue: https://github.com/pingcap/tidb/issues/37887 + +## Background +Hints that specify a table generally refer to tables in the DELETE, SELECT, or UPDATE query block in which the hint occurs, not to tables inside any views referenced by the statement. So we introduce the view hint to specify the table in view instead of embedding the hint in the view. + +In Oracle, there are three ways to use the global hint. (Node: the `{}` part is only used for explanation) +```SQL +CREATE OR REPLACE VIEW v AS +SELECT {SEL$2} * from e1 join (select {SEL$3} * from e3) e2 on e1.a = e2.a; + +SELECT {SEL$1} * FROM v; + +A. SELECT /*+ INDEX(v.e2.e3 idx) */ * FROM v; // /*+ INDEX(@SEL$1 v.e2.e3 idx) */ + +B. SELECT /*+ INDEX(@SEL$2 e2.e3 idx) */ * FROM v; + +C. SELECT /*+ INDEX(@SEL$3 e3 idx) */ * FROM v; +``` + +Compared with TiDB, Oracle has two differences: +1. Oracle can use `alias.table` to represent in subquery, such as e2.e3. Besides, TiDB can use `db.table` to represent a table. +2. The count for query block number treats view like a subquery, which means the select parts in view are counted. + +Based on the difference, there are some reasons why TiDB can not just use the grammar from Oracle: +1. Compatibility + 1. Grammar. + 1. We can not use the `alias.table` to represent in subquery, such as e2.e3. + 2. We can use `db.table` to represent a table. So if we want to use the `view.table` to represent a table in view, we should change the grammar or it will conflict with db.table. + 2. The count for the query block. + 1. Previously, the query block in view would not be counted. But now, if we take the view into consideration, it will change the origin count. For example, in the following part. The count of the query block for the `select a from t1` will be changed from `@SEL_2` to `@SEL_3`. So if we use the query block related hints for this part, it will be invalid or represent the content in the view. + +```SQL +CREATE OR REPLACE VIEW v AS +SELECT {SEL$2} * FROM t; + +SELECT {SEL$1} * FROM v JOIN (select {SEL$3} a from t1) t2 on v.a = t2.a; +``` + +So based on the above reasons, we should introduce another way to let hint take effect in the view. + +## Detailed Design +### How does origin hint framework work? +1. Parser: parse the sql text and get the basic information about the hint. Handle hint syntax error in this phase. +2. Optimizer: + 1. Divide and mark the query block. Besides, group the hints in the same query blocks. + 2. In the plan builder phase, when we try to build select. We will handle the hints in the current query block. Including doing some simple checks and building the hints structure which can be used by planner. + 3. When we build some logical operators, we will use the hints which belongs to the current query block. And tt will use the table in hint to match the table in the plan node. For example, when we build the `DataSource` operator, it will generate the possible access path based on the index hints. When we build the `Aggregation` operator, it will set the aggregation algorithm based on the agg hints. And for the `Join` operator, it will store the hint in the join node and use the hint information in the physical optimization phase. The warning about which table is not used in the hint will be recorded in this phase. + 4. Use the hint information in the physical optimization phase to determine which physical algorithm should be used. And if the hint can not take effect, it will report warning. For example, if the join can not use the index join, but we set the index join hint in the sql text. It will report related warnings. + +### View Hint Design +Based on the goal and current infrastructure for hint. I extend the current usage of the qb_name hint to a bigger scope to support the view hint. + +An example to show the usage of the current `qb_name` hint. +```SQL +select /*+ stream_agg(@qb) merge_join(t1@qb)*/ * from (select /*+ qb_name(qb) */ count(*) from t1 join t2 on t1.a = t2.a) tt; +``` +1. First, we define the name for some query blocks. +2. Then we can use the query block name to represent the query block. + +Based on the meaning of `qb_name` hint now, we can expand it to support the view. The basic idea is the same here. We define the query block name in the view first. And then we can use the query block name to represent the contents in the view. Now the grammar is expanded from +`qb_name(name)` in the query block which you want to rename +To +`qb_name(name, viewName@queryBlockNum . {viewName}@queryBlockNum . ...)` in the first query block to represent any query block. Besides, we will reset the count for query block in every view. It means, for every view, it always counts from 1 and it will not effect the outer part. +For example: +```SQL +create table t(a int, b int); +create table t1(a int, b int); +create table t2(a int, b int); + +create view v as select {@SEL_1}{5} t.a, t.b from t join (select {@SEL_2}{6} t1.a from t1 join t2 on t1.b=t2.b) tt on t.a = tt.a; + +create view v1 as select {@SEL_1}{3} t.a, t.b from t join (select {@SEL_2}{4} from t1 join v on t1.b=v.b) tt on t.a = tt.a; + +create view v2 as select {@SEL_1}{1} t.a, t.b from t join (select {@SEL_2}{2} t1.a from t1 join v1 join v3 on t1.b=v1.b) tt on t.a = tt.a; + +select {@SEL_1} * from v2; + +/* We can use the following part to represent the {1} - {6} */ +1: qb_name(v2_sel1, v2@sel_1 . @sel_1) +2: qb_name(v2_sel2, v2@sel_1 . @sel_2) +3: qb_name(v1_sel1, v2@sel_1 . v1@sel_2 . @sel_1) +4: qb_name(v1_sel2, v2@sel_1 . v1@sel_2 . @sel_2) +5: qb_name(v_sel1, v2@sel_1 . v1@sel_2 . v@sel_2 . @sel_1) +6: qb_name(v_sel2, v2@sel_1 . v1@sel_2 . v@sel_2 . @sel_2) +``` +Take the previous as example: +```SQL +CREATE OR REPLACE VIEW v AS +SELECT * from e1 join (select count(*) from e3) e2 on e1.a = e2.a; + + +/* In Oracle */ +A1. SELECT /*+ INDEX(v.e2.e3 idx) */ * FROM v; + +A2. SELECT /*+ INDEX(@SEL$1 v.e2.e3 idx) */ * FROM v; + +B. SELECT /*+ INDEX(@SEL$2 e2.e3 idx) */ * FROM v; + +C. SELECT /*+ INDEX(@SEL$3 e3 idx) */ * FROM v; + +/* In TiDB */ +SELECT /*+ qb_name(viewSub, v@sel_1 . @sel_2) use_index(e3@viewSub, idx) hash_agg(viewSub) */ * FROM v; +``` + +### Implementation +Parser part is easy to implement. Just to expand the origin `qb_name` hint grammar. The only problem maybe is how to express the nested view(use dot or blank or something else). + +For the planner part: +1. At the beginning of the optimization, we should handle the query block name hint for view and the other method hints for view. And group these hints based on the query block name. +2. When we try to build the data source from the view, we have to traverse all of the query blocks for views. Check whether the view name in hint can match the data source or not. If there are some hints that can match, we pass it to the `buildDataSourceFromView`. +3. When we try to build the view plan, we first handle the hints which are passed by the caller. Distinguish which hints belong to the current view and which belongs to the nested view. If the hint belongs to the current view, we transform the hint to the normal hint. If the hints belong to the nested view. Then we will do the same thing, like step2. + +Besides the planner part, we need support to show the query block for a sql to increase usability. The user can copy the result and use it in hint directly. + +### Support Scope +1. We can support almost all physical algorithm's hints. Like join hints/ agg hints/ index etc. +2. Do not support the leading hints which may be across the view. But we can support the leading hint in the same view. + +### Pros and Cons +Pros: +1. No compatibility problems. Just expand the usage of the existing hint. +2. It is easier to implement. It can use the origin hints' infrastructure as much as possible. +3. It can support almost all the hints which can take effect in the query block. Oracle can only support the join order, join method and access path hints. + +Cons: +1. It may not be easy to write the query block name hint for a view. +2. The user should define the query block name hint first. + +## Reference +[Oracle Global Hint](https://docs.oracle.com/cd/E18283_01/server.112/e16638/hintsref.htm#i27644) + + diff --git a/docs/logo_with_text.png b/docs/logo_with_text.png deleted file mode 100644 index 722bbf8f8c53aa97abd86a13a4dbbd1980a6942c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8934 zcmVPyCph-kQRCodHT?u?t#r^-y+avcuNOlnjqD78m6O{yy+5*~IwY61H|DJf1{_!s= zBmoapN>C2ZB#2rop4FBr^=P$Li&ddkTL~UygT|{EqLNJrB;?%ezWIOWg$>CbNjAIt zHX$?lY~Fjnnfd)@zBBWCGru_=(J*jzG$m19gm%Z}pFj$~pBOvQ zFRq+iMEoIYXD`Q9mBm&Vw zU`QyT>V*7@k&wHgfX0Ubi092NcB8d@+gD-WC0R%WBmxmeAgW4ecf#~sV#@u<jnbnACt-!WVV&RubWIMNFpE+ z7!U%wDWU3w>1SZFs|-tjrVc1&;SPi`8f5>Tsm^8N+ji81o4w>G5s(NB4uOa(p>JaH zr>I6MgVFiS!6h-wu{dwV5bZ8QE8RPmwzr0vyJRO3kO%~cK*W^LZpu!hgxD46eJq3m zG6tEh$Oq?CgRaqy6I#kQMqZedAQ6xV1VSL}N(c>GsY%RV2!Si{OA91;2+_9?R~Kcr ze6V8(rAa15A~0eQ2&)pRjy--RGhoV{v15l7f}E@9tvzO<&fCT`?{EyOw9CXw1co^R zVNpW0u``Z#8u{J8;=JLE2YPW$jH|20wC1CuRla3|pzkW|+Dqf@=Ru3#I!14k+4pdtwdVOK#EtyFKBmx=&1MUe8;)soqAvR==p_DroQT%zQ z_u{42@1v&Me?!er{TZ7v^x2Iew}A920{I{j2pau{ zl8P>;q{WvLi!}#i(D}(%w13eW>iGA^0mFpd16x42TU{iN3<*23lHmwNpid>Fo#(8u z`w-}8UGTy9F5#lHDEap5$uK5;z#`lJ@)k8ND+U@eU^)c<>K&;I7Asx3&cg7gi6s1thF+N@gPy zfnG{TuOl{kLTwmlp_G-^QT&Bx^&}7a-d($wnpWcI>1STX39*>R)59Iy0+QKM{zm|+ zlTbY}CS^zjB9DNkgraf828)k{&1W8LKUel?_Zch%ofV(cKG=(#<@Uj{2tFR?|G|+V zi{z0Z!9yowj9dg*G>+Jazu*jQ)=Tt)BJEnA-%O3SmXZ4#oz@o}JTk<@oJ-^ukVu!V z9*4d3MiI`MQ&f&iUe7of!M^LTmz>g*ChpU0MVTf>)!y`g&zzi`@j47n>wrl$ zt{-5e`kup{@&-}yfY()6Y=sA~8b2|h96uh&!vW0Zidl-?482n~XK&P3mb~RBs3Z*m z1avuKL#%X8F20r$F8(RjTK6(TMGOKl9NS-Xm%h{Y5zEamWX#A6^*;{EU>s6^9In4W z;gcn&v5HgC^16zWO_9nKs+d?jd>Zr73zTrl&va2hZbt*{yLJ`To^q*FK*1E2PGO;#rl8V2XSEfr(MjY% zG3+$6iG7%EE10dXTq&(T1R|z{#46`8AH7J)%m0sr5jxUNo1!m$iuUB3OD(^{N@~4k z#v+}u!<9dyWf*oA>zO?$z*L3UpVOxm9HFONDXVV;!mfl&ImeLYttTk$$u*>h;aOy_ z?d7+qcKZ3$`0EGsTO-sruF`j42rRc`7wLNT6zogMihDjsry97AewhdwTc?UMn!^pufdF|nwaMNA+EhNesj{@eo9^$qwxT58 zA3Ycv7DavNs3@84KTfe?u^spkBlT9;W@dSZf$atz6M6>pT>QXl;I6hJ8M6)k4BW*= zi>>8I&fL?1&vp3C^x?|rqKxc?3+pN$YWDGy1lt_j^bg%+#+~;Qa&E6A_pWbr zlc}#Dwg5w-Uh9M~D0&xZ2)hyz`Qoa&f+>ox5+ZgkjW3L&n$oau`s0l1p@e)LW4i8k z_Dz7Kcn}!$aEv7-czEb`RS&f2BFkihasACFX!Mh-Nr^%}b;)EDgw$1*eFU-Fy+uPw z7}HbviQe>ZJS&_X=fejJDciZ~lMbJ7lAsF$gH}Siq)ulc%BW--RkjSLI6gz>88)4z zj|_2GIq{0WoMP7MB!Bc!Xs|V%j#b;&c=JH-Xv08__ug^kbNCS$^l&WvNr@syj7bva z&!v>**N~Ey62*iZ{-U7(D*X+Q{PtM-fWwmAxPn-b&x{%fM({t95ziyWaW0IvH2$VT zO)2Vwwe->%ff28S%=y_g>i%2El;bnot#eU~3~{Q;zgDoH&)cELGTNKg*E3Vtul@NS z;(X}N6AlXM_fSB;q{?EahbFJlM_|M%A;ValW3*x+#p}4AE&9bB{Ss7vLPDC0FUPouuCq7-0cax4V@TUsEJ@ z_eXRbj1l(_uteZ(t{N_^tGs8=2!nk{XVq zv8R7OxQHUOPM;JCK4HT&1~(+aVC*mP1KMihiO5xcJGO%OWrP7&5@Z|&|I?s&diAg{ z>>E$a^*T)~K9P16w|n@>YxEG%O$muFVKm-cO3n{=(h;Bdou!Q!3a0F12B(0KB7EK_ zV(A)*j1|U@_LpzQ*w{Ebn+2%IJR%QN_+8mTO6BT8OhY zOM24feRL3r_;8H3JE>{y2CB_FU)${-ooq^}Lj?i!OfYTk*H!qXhCpnrxN~1^Ov`2H z8GY)_2I;uTngv!qYCvDdyi-yo8r2Lcfpj=8?vP5Z7}C3m>%QG&xrhQ+ox7s>6tR}BOhc3kx> z$?ruhD=LP1eqOhV*?A;nej72llJS5L2&)njJKMz$_X7`ZM744cC;>9iNJ2m<_M2PI z{}M?fG3?jJ_^zBLa+6`7-}FeLt_Xxp3AJo|6`$5wM`~SAlN`EcRtk$A0vWcVRTzrR z@t*?aVgK~dsiU)(%-~Et6E>h;4(pPd_u7*`>qV3gQ9&SNB_vKa+_&%!eLpf76{w`p zU=V=4CCOmu$Wj%>hLO-^SQ0(kUwlry0xOyE8KCevoSK-(nCWOD!yLv`7@)-=W($bewm;3Ixb|u;LjA(BV)Xk zt27q`Kk<76^K)y>X~KAaAp20g`#@dHI8)a7VJk^dKw!{HsQI_gMIpITTyN(2Uk0B=Lz=Uj)q3_~KF9p`_nwacSC zbVj{TaZ(BO36Jy)CjzklbizLKq>H(3Z>U&b6Hea!^5V1;Yv1pyvzI=But5+1`sFVJ z3>pEcga!?rjMygvJ-$T`tITImK(BPL*jL0V=04+v#S=X(VtX(H_AT~`ZN>J#O?5j< zJ`4+M$t3IuNF@|@NcCZeZ+%S(RZ=kD9c!?c?1nu5R^Ct((noxUy)>y0Z|QXyAb{CZ z=_CRY0f|8L5RghJde}?J5&?+-5RghpRs)HEL?EgNNF@|i_@!`(fJ8tlAz23`0uq6! zA|RDeRNaC1;UAdr z^qj(3*m2IN)BIU|)!ls_N1BndWG3hCUN09zr}69Bs(b(2Q<@fzR90V6x}_&Qr2FxO zap|f2L@casuD6$#Cr!O}bd1rIqjH0zq4K_+A@L3|a&mTInwjz3zS5F5>H1_toN*z( z{1Gd}F|O9QUFK(j`2lb7qD%}b{g5+e#L10~s@k!kuJR##UAEh?bX&nJ@l`%C!l~0yS@y4<^7XivN=OfsLy%$3S}Yp% z+xSimag*zJV0A@b>=ds4otP5SD~wqsOHSca#MPS|_I0(wPvLwsCnn0@&?~H;hpt1y zVwYmqXG5L6KNmN=*kgxnZo%*h5uFB=%&gy&wL-3i3QAKj8&bU8MR z9PLs%A8pt%xQ(w+KuC-7io(=CLB<8%az;-s9A_}ocI-8?c5hB$3K`6<)oIyFPCcYV zixrEl@kxZ6Csx^Y?PFp1sBFwKi>;^#2edt-@t$r|_vurPO0KUWA4TS!h8RVi zhqAlFn{J_|J!C7m7N-up;O*z{IU~E^IL4H7RZ_Rr+sppyFHA35cCpF8n%=?(0rrC) z(a&-Bl6&x>*BjGcfWv}@50MYb;hb#V-Z7}CVT)u?E<41F&&5akw72vjTA(}r0J6PO z`w_1~qq%~S0f&Ddbe!LTSN%%QW8c>VoK#3F@Wx-1B_rav-|KpGAnwVf5oTfP7^=eKY{2Lqr$rtuO+(?I6wgrZ-xJ@Zmynb>j< z1t^*J&F|9wn@h;O>ze=}^dMhgK;?!K(vHCR8!G=VGLo8pUWdMYf70EZY<>NwCE6Lv zX||%rjEufQ#XL2AYSCmt$1q|hBi`K$N}9YRJuXJYP=xX^@cT~1;q%&C6hkb=Tua3} zAAh5)wxU~W?Io+N*@bICIGK~O8p`YvG{j1`lW$~ZJ{w`b^iCfd&^3^E7J6SbZc^9p zwU>P&!r=SxMU3-b2tE$`eVYZ%YAbvcmr0$9>oO>wS?FyXE$A2~%^z(m*ssM!x~!=T zM=SCZ!4o<|ebno%&n(#mH=yxi$izQ~!su@oeU6af#+k46l_llk9=HFr+L|UpMw58b zdV~rA3xreI*$DTRxQF{|hOO{R;QOdTdoVcF>kZ5)0scS4vtW>ehA|5XdH}qx#BYjX!guCD zL!+Oeh3Wps&qla)h&vSx^%@va%2THnOw_zNP1g93yZig_P%8O?rZ`RU7&zvlQE5X2 z#Gj$4EFGgMgLM>bLmF0rmM)Z=NG}@TdXGpb%QB`YccH@n5c#?Y3jDVoKmS*57j!g; z4VLV}g%|=JOB2Zmg?k!y^3T=$l$akOKEh|< zHx2iz6(is3)w51Q{x_qp9FH&WE(M0{vK_={eg(Lf&}t>R;p>5x-ECiPQmZqZ3n2?>PYv@^4p z-a~s%yolQ0c(02X<^Kk)7lbOK(sQ+H%HQzjIe<#=Gx0_aHfd;#T?TC~Dq(LIYcQRP zMtTIOn;rI)nT|GB7G%8+g^|_p#rh`Bjanl_#cIGC`pjOjIfr?P{lx8}dwS7(JitFj zb@7wXm?xuxK7bs>n~jQitM}`0WXVkkzg+}GdY07fEd8g&mU%IrvN3FV8a%)6?i7dG z(>};qm^kVBjP%^aQ?y1ve3$cpI?>VYItmqE*r@_Kl^exS(+(VtV+wl^=Ae%(iA^mQ zTj9s(QJtbiRM}DDieBXB+OzM!uLQ|$P$&9&4W8ms3|(c1wytqe=m;pnEpDPSfX~Um z;!cgu>D1btCI5f|>3U}LT3toya>`pEUL?@v{JC0ta*o5?Y{LV3#>{F-Xqw_l8D4k> zQu%FAyxFKPKNoZ;nw!NH^u7k%281|6AJNCjgFU@xB|1wzz?>3hWMqkVShXe zG?v`{|4I9k_p_FIjb!_v}G_k9Bc13yCZMzjsA=V3Lb}ucc2bI09wi z)M%WG-l>m+5{wl@7~pS)KbM~8czpx0HDyo$?zf#b2FE<)MAsPc}p zq2Myn%X||BxJiVAY%M|$&_go3qPiNc zoBO`S>vycH>Ts#kP$SlhiUPU6)VlY!#y9!{1C6`i56z*X?)UIPmtC7BLggFnp#^(I zW>Q2PT&F^r%|7_6LB-yp3PquG@kX8x$>ps3-k&^7r_WBe?Vq{Vo?3+lyAE&bQ()to z06g|U5hW^$@_m)@omyN*C(zgh7%IX|x;_SWtv51q3eG|=HA|3MJCu*aHC)cXS(nmf zr1iiowt~3^gYp${y$*`63TgaZ-?EAo*p)T{``6He!FSl`Sz-M4iGvrBP}m+i!f0iM znLms8dM;xzpCSHgsE$@B@zBC9*n$Qb&b2v74cCS zwFV7E(kY(tmQEH|(hT7=LAww5kNsEkQrSAu^%p->@5Okl7pone+mZGv;g3d|-_1gy zGrI5n+`t(7h?r8h<}{w>@!tDc={Ml9TRd}x+Uo78?|?U!IIs*$TEf$mU2L|-87CtQ z>>3K}c1##-w;uTHzIqRjkgnh_Y%P#oEcoE<@S?b)lZVLwid8w;P+nKy{tH15Gz!rhEGzC(KO^w_f?cM>Gokn`5sij-aG-@(Ywj(}pH1H3UK$lmKI zFC(k)hg?NB8JnvPw^Lg|L9)Rprbi+}{d5xp$>+0m}@hPx4RMOa z6TiQ!sJs{kyg92CM+*tbOQ{?9f%KOHQj};ob9fUNu7!c|B{uOc0(at2nFnb%uMi|)0?N)6Jt+< zay#O@is1x$fUF#RvLIsy6i;)z%lRKDQWsI-HQ=`id75isjbB1DJOd^18Tf0x6{PYd zFV14EQBzl0bomH=Xsk)z;XKdaJrCjW5)!?0ftF~@{PVho7EkX39Z+Gfp_@hikj}!c zU??>~SGC?CIv#8WhLO`926lQK~Oh>=gTlKUyd-a z_tAsMH{=y*GLhH$;4vL9kA+&=kXR87Hla1R`vGR-7Nawb;TXq+EdCg6)%=NxIFK}CY?o5*3WDYM!#k3=P1fZo7) zsCc5ny{VD{qvR%cQzbRT+KS#0l?+qRPr(nBNEmu~BI4{5JcLs_sZBBSEvR~5if1eg z+>1Bn7UW|)>grEXC(jWTSG*-Xvr8(qKgxK_`S3pl{8zy9uSnZdc;ik~&8}9#2en)@ z?6cs1O`O^NhFG)*W%w%?Js*UpNRMcxZ#%hqg=f0hmA&LV*k;~<{~|QTuW{J@bqId} zxK(Q5z5Y2WlGkE7egb4*$jgLL6~imRm$t!>anpfMAKWXV2-^r6_6Y_9dl+e+0R?z7 zWFt%Lb+r1ih_V_(mp?dS+8U_CxJAVAag4NldDGEwzec|O#rdwa-L;6meMF0gI#7bu z&B!~O56MlCS%P$)0)BuFZ!UvttBITTA^lm3L0Rsw?>-;Kd`vX3GY}RS(>5gdHz5_jA$uK4UO>`}SdX=F$b(aP`x-_uQ;-JWizOX|p&!;)!Dh6aRVPe810H2az*G@f z4;O#I8I*FzA~KA#1SPKi-0P|RAO8+2j_!d)eI)jK6LT&Z)4ao>yZlfD!oHCaW0>Yt zV!!tJDh6yI8KaZ(>kcHnPrHhPH@sqoCcQO2$6zwn)b6;~2N!Kfs3^2#r;wRTtro#Rq-sS^vNM}ZC>_k;DrScAE zm6#n26iZAmbMz!sr`fJ;?GW-(6Y|6iUZ6N(qod)cC-G_Zo$gA1z1y_h>&G*;2;PFKoywA@ z0s&14c~UBd51Gx|7eEmSBOAtuk$3KI9MtfuUz6k1tH}A`Cy^HzMhO^sbwFX?X=ve7 zCbX1qL@%;O*ENiSBrA!)VT?d8CFIE`dPO@jo6Bc&mCr$|`pQF((&E9W0`mwOhJ^!e8IZMrDvp_6%;5{W?g5$ID1 z32|5l)sfk{{dT5yPQhT~88P=3{$%v#$XnZ}>5hk~cKZ3$`oiYkp3!>}D}%3x-DmoQ z_7As4FBwv@MBwm3pkF2A$?o{J9W|LPC}ofV%) zUZ6h-TpX2v^JJRajzRB7>==)@(cWJ&Buyf4xFUcy6}&@Nh}FdB{}LNPR%3COHFyq# zhyg(?A&z)+3vz<)32ISummHgV%?5K4j`80z)5xkd%-od$qAMj&>UP-FQCFLmQ4)DAOiv zmsmBvCAn0rof?jLkZG0(3^xSAqJ%t|u8uu^CNn7aV^7Pm9@? z#jpTaCQ>307=f@VAt46638f}6e<5yH;wLs*4t2K$r@$=|YomsGLS_0S0*504VOK&P zkakmc8YRT8fDL;gdKp7+x4zhFL3E>7>Fi0fyh;Ql0{SBmF(u^5$~Q6jQ&c0BK@pwl zp+)s77F}|jJ=03}%9YMhEeR=HBA_73?~uL5rL>EAy58xCrroZR4}D~@Y_WmdZ<@% z#0D}}8r#ymCWETPk(JU(1SA4O6oIHJArB_i3HcWzA$P-gJ>EkL;rhJU#cq^4+(ST6 zMwJNYh`^9gLL$H4QeM0}9^d(9bQ6YX@xfz&trjlzYPrKbc;sXZi9j?F7&1!8142z) z?s%@4*TRf_DU{Jb(kG7CSTVji@nN~u!h@o`N(6=v0t0E}QOV8jxcn3F)g!S519ganpY(H!W=kS$6lT`iB;7=|@YCRrjd91##l zhU`wrTU(u&x3fAvPy3AUaLk8HvqV55;ETZj1NB4!3=;G+-~a#s07*qoM6N<$f<(Oh AKmY&$ diff --git a/docs/tidb-architecture.png b/docs/tidb-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..e3360c45258ddfeabbbc50870d24f79b9c28aaab GIT binary patch literal 92568 zcmeFZcT`jBwmuw0Wn%$1Y^5m14jYkTL25t|snP@irHY6ky|+NDY^5qvR3IR|2m(qc zplpgDy+pc54FMt$2qcu>yVi5u1aQ~j{Usot&ac8!_E)VV8KKIuZ>ek0u*;#w2eyC2*4w zi^qrS`qKuz@{5akp!-LqIa}QhhE2*HX!VgIVp}#>@tb_feFFm_TIt-$M&{<>p5+3` zstRY;XLNm9YUbm_mN_?naL(8Am~RCutG0$c9qwLSLc+eIG_|spDuvJ&m(PVx_JlLX z^l3@v*c(Z$^0}7h!EfNx@?a5~RXYaxvo*HGwo5^{)u&8uGB{Lb0CLCE(*gGFC|Tee;*r5ks|s2mazCk zZgS+yv~+88bEyAmM;Ym}@!zDg$Z^+S1}Cr?6KkCB#>3+e3a{O;@HBRw%W32DW*(|-?FBY&6L z|F94=avPG`u5V*w#}efIu9<*St8Hvl2fwSf=HTQUrBdIQn3D{ z8Zqctyc-JiB^@m-TJ}y(JVer&RQS-GqxSz306_8m4-5H^UPG%F$MqLG)ej5|l;4Fm z|Frcv_^5vOQ)j>h{5s=#^yiP@^APLb736;;p26LlnVnTG9~3?K`ZX*HLp40Q6{C^X z8U=0Du#^w_VD(;{xB`3-p?o_Eh09(MVF$n5)dU+Qu5WtDw|&+#xSmsCO~-$ezC`wB zEYFq)dQQ}k!_U2L{!V^-qxenxoeIW>axcoh;o(xZ^p&!A?|#hTS$#U$646*_3f$+@ zFj!1n==hq`N&4;RdrH+NCM+y$Xm>~5NWpwxJ?22xV7XUbiKNMc-u8cdtrtzD#%hoq zbZ9)tJFDuqvF0=HVIr8Vb(Oz8wLU2M!&yDX+G6YOo^SkAmMIm;C7}*!BZvN?rT6zV z+b>HC<4t-T9owHJjP}~TB|Yppt9Rr2bzy=ee<%u*%1H+^J-|TU)8Sx#?;?Lvszl$$ zMu4rhab=jh4Ef{73-hWSI;Z5X85*)qYoVzu^maB_B#HirlWDjvbMI_uN0xubv``1B zkd*)7!(JL?IGm01;BSJ37vraDYN;&LBt(vhyO>|n;(s$cH&@r0t{vKu8)1eoj5L1T zeEWU>?9Ghm+@z;eOJ};`;8e{wDr5k-I6fGDM})ff+3}~PMk@1}759eMyC5eap+9^HK9svQg)DcY&Sk?nw-xTCP#=Wwiy( zcOrKq0KWQ53QPCK2Enp#YbtTs9`zNtm2RQk*jPDiVh+`E0a=SNq6rq$9pa~UrJ+V&W!<;TAge_4V_^o9n}mZTYTWzy36c6Mea`cUSB- zY(or2{4PC03~Rv)z=4ae?{yO~F|qo!HGgO%lR89ko{*M&A!txuUVdSyLoJ7N>6+5H zG-Y(75;|5AE5r#OqXidoBC&s*Ro57Oe^xK~K!?<+(5?=n-6z!0jVkEaeOMvn@GJ(9 zTY0k`i}!0M$UOll;l*?vafSfq({t^>fdgCp@7UV@9*D<_ePBzuWPrFZovDE~L2h5zPYyf`fxEd?2ybbOh1c*dC|CO6vaw9+J1= z^Jg_VzvY~ggx9ZwqoSe`%R)MN4U*gc7+#+6r!t;Qx3SeJqq9`dygcwh9g;wtxkX%E316l`5JudQt|LINE+N5=7dgd0 z=jZcX__?3WWhW;mCst7JskJlp8`{8hGc1zC30TT!Ec7;Jhc}v4-=={3fE{$Oowx#T zc^U~riFLqHtc`F6{$ZBKBmO&SL;dIn_bT0k^y;%yO420O&O}(yOV+U4(z$9Y@4XDlrxB{ZkBkj(kz6=qBW z9eWOzR|Y4nfjEA(nnZxYamE_75fCFHII)L#=n-h>9g>L-CnC9XAl_Qty?gQyPawS$ z|CI3@@_5Odt8LIbbYr&-GB0bTnV97H^TBx$J89Mj*Q6tk{`@!&?owPryna`8OG{X! z=x4n$vCj3+GgGYp@S*Tnx8bpNjV;giOPoJ%DA#dr+{M{>4{&-crRuavuugF-U2%?T z=}EmeKvMEy!UJ+48c{`kJ()pQH@8kw_N~13JAa-Z_UCTCeI}Lzn zK^E&S^3p&R_ry{v6pbnfFQSk+gONFFfgia9&6(}K3C+o?fK8mCTDpQc;V_4rM!-l$ z1aRNr#96Fk=0@H5PmU&Y>OaDS;4wOTkz?GA9OK^Sm*s6!wp+*4*~-eweq5PiHAvzd zO^0rV1h4;qxz!ZQK7bMw4Q4<*Z*SLi2GZ`Hs)24tPJ5hr+P?x7WHA^e9OTS9YB2Wm z13)&E(0N3^cBl&G5xnP*B-+WuYt37@(-jR!HA^H`1H=uDBS)>n0xjNPe1mW>4{b2< z^8+483>oOTMtYuS`5-P!UGQBRBW?r?k34-|K=!e{Y>mbP}VO4;q@ zID-11yG;D|kKJIB_Mneol4Q=p$wCMgh>I|H42Xob*A zpcQOvY%Cs2z!L!N{+JF{(;2h@y~7spj~hYQ*YVQEV|D`!naByyDvVbZjggr0;tK#= zih}^%ZO3=8wFQCbhc%#S?(USf_J|Wa-eAqjZ!)XOK3Dbxjl55R#}QUIMXz zb>$_k#>b4)yOl8_m&aByxej)OicmmA!sWBNV2x7Hpai*domA*#^VUYU!0*sa3rwZs z0$Zw+`f-mMAl|q35>xF%|B(Q_|MNi4z30Cxqb6r56gE1Fr#%QyV)a*t7qh_BxGkg< zHP&-0UGwuUv)U(m*h*qCQ>;`(y?xHW!9?gD5KDD>ht#ZC;HpL!n5vd~0nJPw8u}qN z9mQL{u;3~euvP*E(4A>br0llg#mUyujdg~uAwc7#2N*>K4@%A1w|RN>ApdoV#~4BZ z%>+4Q-Ua~h<}D=Ss&}kc`mdgz)NVB6TH(&wfFFa07^Ey*0P8B86+}Uc$cNbOx@TK97OCP6N}4O(ZA;9;_ap zreoUKN?w7y#2XI{J@y$^xkGO8T7tMH0EYZ3&ALJ{)!iTsNza7?MngQ}8|p$jEyQi( zqA%Ndyx|n*1v6w?A*Wo8jA6C?ym(1jr8$*ldpf70!jKp=!78G%4PUbj^S1D64i1UY zQ4gS0jKTx{id#eU?AFZGlo0M?*X%kNS_)cx0KE8cWa>1qarg2;)b_|BF%tGFIN2JI zmf>ZVV86=L#nT=jGFCfpEW}h@5}0D$rHuw6>VUPqpajk>Z+%vDa1OnE)N!zEZ!-UQ zO22Nv1jxqY_sCd!NPjRwKThYKV&!Sy&J{?8239mfl>GG4ba%Fe_}#mA^9h85#An;@ zsi>&rS5=|owI&;ftKPlavw#17iKo;;v#J0AF|!JxfN0(B75~k3nl2k%TrOS_UGj%y zL>J=stS#XX7x8<#yOtsU>(u(`X*&u2{=U9fU+>J!*ql0bYVUCRJ&@-tD<(^c8pcEh zFIh^uzZrla%j1Q`^RUFn5MB-DSO7MCS`YA^?lj)27;! zGuOXlWi_c4(Z&5_bTI&Y+)>9}JPfsff3B-sRr#IL=2YzGqj$JdU^ z_)*UChh_+4c{$?&T({WMr=#sLRU?whkX^sRsz%q8{s|?SIug-om?yZqyyf!Q2kJHN zsAwmDDLoA$kUQ&U`Qz1>q~Z9-cX-ynSgN?h#cZr)%jt9m&9^=A?Esj0_maU99LZjM zhKajFvX|95W3=vGNlyq^>q~F%I~Ete=XJpC^iFA7Ylq@2Ij@T2@?s6A!lfuu&CJxL zRT67t;_hx8<{(cHy?eaN{`S$`bwI=|>(}|84p#b|KXH8hOYn9((ybni<{hX~mH25Fo=9Zy`_*wU`-Z%m$sEn0{hcDksQ z20)jzU=`kW8g+`#uB@yKn@9Q1{7+RRlJ)X*``CRhFjcx|CC!G@r`rxBOnXiT9#s+0`BhsAV zEiS1x9Jsk&O6fG>z@$K598*W%*4Phy$wCg<(zi{KQ>SWU%maMph%)gl`r3b1PEp$c zud_XZEgmKMW;b-RI0oj`aWjyBViVjyksh#d-o#?pBLjTP>s z2U3SC`?G4u(3T<)9E=jSv9vraDJhw|h6S!+ZlLt4e`N#2l%TRy1aZN4;4I=x0;~|I zsK~n8Z?B!q9RUjT zBF23S@CMbj{?U+Ye~jb^yT*dW2to&SwgZ|6K;L_TfyMo&4(6FvK8+DGZ*kw{N$z>8 z9ndVbyG|QkQphlrEkgU}eZgFq8*qNW>~t@Klb<9g$jI!lSc9j6?y8;{`~~_vw4XLN zC`-f2?A`ZGNruJb5-jkH9Y_q`1?hK2y7~IF;Ut0LF7wg(Rr78AmzYFu2yJQZ&rSck z`ZW9rd>62Aw<=F}_uo)9|CmnaICAU}Pdv-9a}38~GPV0xf4LtIgxjA0PA5x!e=fo* zEHIs6lC0O<)}?}?qJ7P`7YFhH-e#*Q_aI*blXt~vnE*7a+$Vm}fC8O`;>(|^$o_n( z!|ucPk(!{%facHHAcQZaaPPW^o>oD&^#*1c6+L%#O&^UfqtA<K z#Q7p#Qd8?+RNZyUU1@n=>Qv)!VM&Si$e~$H{7|w?|71x3^>kOAqOw7^Cbycc#9m)@igwjRL(K={kL0(ao{UIH5XcD zmkNJs>V-bQyanIQrS!bLp=%A80T~GlT`}rTjkiH1jBl-x)G*>O>jyja(ZXVe{BaH_3nJOC*fj^&?d-j8F0rEY?_k*;y70Tu@kcUyR8zu-x1fE+{Q<-g#e z*XNzSgW7<1%H0!`n5s2vRE?V8yPkWP>K_mm5yi&t#UBSQ4`<25J9aKE61b6paxbxI zMYM%C9Ywtg_*U?G@ra2UfH8AdJMY`K?+wSltdyxjS>1Nq#N*0#bus^psI3pved_}< z1addxv9}A2E1aNNq@Y>S|29iq+zIvvH%v@IWZKz4u7FzadW#4h;UOdP{b+OB#AE** zE{f$gvUK+Fs{(*U3jmf1b7%((2;&)%f40Q-EI*6M+ipAMc;+3`JxGjUh6^M9bZG;w z+-vnNuQ1gXKvMN30$_xn%)sVuo^ z5M~pEruRWIrUny02VPG8wYnDgfq6{kQ7oy zs{yEmA|j7j@E9K-hiiRM6-<-3&Y)R=vH|^(M0HOX!8}w=3o2?tb2=; z*zT@2wvs}P4rMFn-tS|{me>iLq^}L zd5eWguKt^xgv+JxSOx9d#|Pi!u{auaL=Jj~)_Eup(YWKlk3EevN}7WN9RS^hC)K1= zSpw2vRT@WBN#`_xLM$Fc$KnSd#hOx5preo+e;;#{#qk*P?OpMmhGJ>|Q7)$m^f@&( z6<2oM)HD=e1&|kI$YOyE!8=$CN{Gn}ab3T0V`oM-;QY6)gY-3x6Qmm;J%Mg%M9LV6 z4?*#I9#`fk(m>9153x@DZnL+Qow3BJFpNFC5(^&{D=b(zU|;}3Mho4aVo>h!{gk)<*E`vZDDVE{zbl2M$G4S zwnk0#3BZw^fu)tffq;-5c9O55G)qTv*0a1M@Fn0~Ac73=UI-AiL!5I)#)l6d?tmJb z^|Lv{nnqF^TjOPPnhIKIKQh`u=4gJ@DO~_ja097V4LkoW#U~zt6lG23Rf#W@_}8V{ zpPvR?|G#j8FCP3$u~sqF!NH++Zq89Ltf!|30wN#nr&y&sgL*sIToKdl9^VRem*MzT z)8EMqK0hFR+jD zyCd=Lt3O6+a3(2?_RrNmZT~SFdlXnzyJIoy?Nft6q<~{+x}qrcumbcBsdwT*=3uw6 z*g^3>UINV%{(oSKeOG>1iin78)x1&I8#25$asJJ)Q2JReZ|P4>00a=sKbhH4cXsdBnWBVxRGMe*1IS zwSz6~0=iKR9lISlUZ!cix?yA_blDE(;Awp0$()+6Fi=)yi&%v@VimuQCIQ9U7ILF3 zFQl{a3Oe>TtdIgo*bq?+A)*k<$<5`@l(Qu5r?YIln8Oh`!6=1ud_Xu#0e^D)5>Vx$C$348jI|4>SSnG zNLR^I2`hOL>w~r+kU4Kh7*Hy+#G2Zo)njt~`i_;a)6-cl*F#CHG3`OVoou2AJ!Zlz zMxH#!AG$&(=Oqt1vc;*|ua2}&qE5nk-We@Cvgu>fKr~A5eOn~AT z)weP+q2tgju#{R-w)17QD)nCQ6zdb%H;D@&S?S~Fm(@Uy1!@V&{j=Mbo^O8&Tg6H& zrVA8|_^=u0VHsNRBK4uiFY45W{THv~ynVZE>Dfj_C%)W;A6hlMxh15?va1OW1*nh| zP!*^N;zV5musTJZnK$^)X{tGsP6Ki2a*FnSQTAhK2tt7g;yBqkL`LWND z04!hlkfP8JRY^Ufo=pM7%t}n+>_)8JBnVLyVsxDbSTv~DUX80$Uj=u%vo)&UEwlzP@}n=?MqWpLsGIt$c)wqi37J-0AHR=}HG*lEPc!SS@ysC>{-heONM zx`Ubom9gOR6f|HRQp3VMQ5DQji9^s~}pC?zfZ#HKZ2FA?Or z`2_`B;yLbIcV(V^0B2Sh_1M-{Dwc4OgL)Wv9!KcCTIk>R{-CbfWJt=A^asvr-Y_-Y z-S7WC}iK3b5)2!%d)@Bm`3=Q9e=s>7bm z);4b9y+K>h89EBz0a4k|f|v}VA}J-(sPl7l%+mc3J7=Rd$q9g4Y4M^<>6-6X3J^k3%duMirLG|bZO)@R< zvbDUkP%a1h{0z@se$digVaIR(rtgFScY0U)z}u9n%!1BnH^4(&u-0&;~q?ff5uNbu)xr~gB|2=myy zs{F+Y5U=l8+z$s36I%crfwu@IQ(tz#x0E#gfA0=N4x72e|C%oLPs{?wY=5zpqvPD* zIj|a&S{pU+VPS+{Ux{R{4*J0HmH+xrmk}(8-(vpie`dFQwIZO`-wZnPgf}-sqQGUR z{4K)5aSO-7Eb9%M0<)_&U=nr+p8F}0|AzZV4i}Z^4mt6C;kwPOt@ZCNufBx(YoDs@ z#jg44ua?4{71i$%9EN()<~5AvfjTfuR6xoP2#Z<}vU75BOja4P@mg!k#Z{rYDfp<% zOMx`6K*O~h-R;Yzt5DNNI9efqwr*&SHIRcvf@?>B8>_LIS-|=4fRNmYY82bu(`f~| zXrQ)`l|f3t`TUX9-qt?Qm`l(;N;|t9eaonICO$6iPZEh#PU#GM_wBteYWw_1plS@0 zA{yT;^s18Z%<&0mBfomRwSag@ci$hOhg5OvH=ph64U0JPo8KPeht91#k0~x2Y<0@r zJr+M(p=5XC;>G)SHGX*%HOrIpN8RJG+U;Hs{>=FVT+~Wo(T8BqsINEQtOr$=7rwS! z_ML07|1>Z_;gcVlPAA7*HJEhw@}Nx~6)4?|ySmhM)gz2dn!HiP1>-hfwQuu6`u*Dy zZ`_{*EUn$#a8;EUo(5_^u?7!@zka=gSsmlvtk)a>P{W4j;&0MgCUGc5^hOmVq{qk@ zD5)*3UZD?b8LG#Z9`^R{Ej>Cc=)M68HbdQ|S07cj()C#6HhZ{U1#GOX61KqwDHP6@ z8=fD0my3hKE$P%hG?cKdss94ae;rh9hMM>bS{@FV6a0HiTarHd!bkG$j!ZlJgR_V! z!QW?}WS-JEJAv}(;g2SnR=h&hs26+baG6Ioloy~-Vdq)kr(tkbIoS(-!fz+@W5_c* zN~^r*Z!W_(pu)s{-XUtxeOJt!V87fqF)@)lJON%nq=SeJ<}FME%YwfcLGcmL?e zzV_()xS`x>ZlFyxX6SX-G7+vBsZao=pYC%;?#OOE+$Z2^{)}Q12WFsnCbbQ$5V$_F~ z*?VFR1r}{~XB)~U#N;jZ>2J?dTDck-;VbY9rLT^vGFX+Fl`xs|YNM=~ym`Q!N7Tf7 zIJb!RIU>yWVaBv=bv7PJ+N)@K}CbyR6 znU+iL)Fy(sX>)IR;nmi+PD2&aS+7&uph9aKt3FtQ7zpx2 zIV_#JPQwS#ZS$;B<~FzX1JxOfQwR(IIP;lO05Kro;@oV+#*yB~%XbS;^*%meZcOPC z0}s4`*SDap$RlE5`46MX&hDS;O+QXmb{L$(9G<}>O(=6+%gc^(a&(jg*xb!LQjuEf zHu(yOas_L^c$n6ytt9+}k`8t1jq6?0+@>LdS18kinY~9^_wT zzuC2pUta^ZT3UZCtbC2&NQ4ZX;qdH$*tjUlI3Pixdwm@~neVqNCd8MyMeXCieZ+Fhs z^36hmf7Q&VCkqwJ63?br$8SFHQ6FEfn7eDvc;$>7!{IdM+5Z~xl$hyXsd@hsJ8SFC zU4p0~!L1mN%n8$rt30yZn*4n%crEJO`pg!H^oq3D!r8bzyCTa7Hwm2bA-^qy< zxMdQ1av|o&I?&7EO%Wd6_x&>3359m!f$%;!qTz#Y)5xkJ_^-MydtAIf*@|~U#fEL| zVQharsaCyO7rMV$SBF;nXeUqfHBP6KQGaqikZFr|(3T1`J|x%wRq!kZY8CeKR~Y+# zzrl2C!S3;kA((p47VWT4wR|X*D~vaVZj&vgd!UrsNF4@TQ^!Y^0Y%eF(DK%-7Wg)$ z+9u61R=Gn~Y!T>;sltA)%M?AfH{2Qfr{Ara$EeSc@;nVT9@Z2CL?6|;_?6<|18VqT zl%Q)tt;@&WVUB%E$fBS$wdbavZAKokQina71s~I~9X)jKTR4WEL0jY&Z94jKk}Cou zG;86RZ|65{eQ;ddlx_!FF-twjJz@Ct>vN;^;WpuNf`=F73R)MxW@8fwVo|=q5>egc zooLtdFO?ZCcm6mC$qr}x5690nR~fh&;Ko}Su zW>_M}C8NEUD#zs={%`=8h@7xLL6x{|r>O(KaMK=U6rgLJg-^v9$5rOoA8bcfDZTIa z3`Ya0oEvD2H}=N9q%z`Vy>7G6(zWrDSBpiC1x9!shQDKh)kjA8rr6Cw!;H)%4S{(@ zF3vs6n(;|_?kn6o`3w`VG;Ls`DyIO7aXmS7M$}2eR|ee|7X7Qj#`;#_Bx!}ps;aB1o?&=s0s|Mr?IEyCExcG=m-GaL1*+o(b%yuDgu8FbCS($ zL=UQd#R9I=a7vEc2!h(O6|fDqb~t*W4rmE8S9R#1LO@0K)0Hw|tl%-c-MDgAbh^yy z9xuw!;ICgWe+Z9(-Y3%)#(N6re4tdJUGFIt39jSc`L)j#8UQQL3oTU^f6z(*y98hhl+BiXI)4gsm3^hsu3ONez|bDn4P)o071RHultLY>bXU07Mgu4 zz}mxsfgsRLfbPF5=DoR|)mYQ09`c6vwzabBn@2L~0l;&n4Qer!aCGDnA`*ts$4Mv- z(S3xU3MN)^uwN>!nPGPnyftVjKrlaUVj48foj^&>{)CP3#9==EAT))`w3!9X*Q;+9 z$3#i)wj~0v8%BB54+r=#PGo%4vdR4}c6-Rr7<$WbIYOYN=l3T2COYHcz+xPfi)~^q z%o_B0f|x8YELbsU77(NFNSRI-_2^$H+d3HY+3g_ERS`R~99FoJ$Rm+*#19|gC)`*} z>y$akfY&aLMN7g$6Yl^@7>$_(k!L6CAp0AlCDo(Eb-YnTXo$l=P%1uaD)Se!ptQw` zH3ElaUSE-3bA`T@w$$20^XvGejT~8)m4_9{`WMXgKg;*O{1Lz&pPt7p+PY9US0)^g z5aV%dV90Fl&7nZkUiriHiX#2=&8g(@R~j**v))>CseWDh8S<6#g0S2T?efJndyN|j zRk@8D@WM3lNE|~YM;%(`Wmge=7>`>v>m3+~dz96GVeY+jc#guy8E@L0sg1#che5RV zeo)Kk4Qmj|UX-!3E_8Ela)l3-&FjmKp>2G=XrBlVGCGKVU8g=*$1W{B|SA2NbMeGcV zeur5ORQ3EDI4rbj2vnb5>@ng4nATNl+^Yu2i{`P-fXf+@z%jlH|e1L=Tl+4g9>|c-f8H|mOh|g0q72` zShn_g3tDm%lIA?#R^=oMTyFI|VN%kvv@5D8#bI_sjA!4B;U=P2 zrdy!G&d-{g~ZAeSdD{1<+8YMj)W-VB}t zm~jC-3nZ@S&nx*M$Is+KogzjPFr-cl0-g(k)7VWYYZtLXo{vgJ!auSLROBJJn~Ql> zeT?a$k!x}GzYFg^(*lsc{uh1q$44G>J7@*b(Bof=;8CYuV!BqmT?<}e82q;S2uQ8& zfOaNX27RE^tr-YvKln9H`R|AMkQ?p^g2n+aP27Kno&9Hy;!_Z`enn1zlx@uj{?ZJ3 zSLW5`)x}9@vqob8sWk%-WMht(^~#mT(%m6rc=rbrkbRm3eH{td%KZGp(CJs}f&8Qy zl%;0KA-`{fU@^{`i59@Oz)PIvKcff!U!m{pqW0S0&w;b}y0jQ6s4WTHk8R!b_1osg zPCW{Bpn>BRSc9b1*NGAPMe!mZ-hR0dhl4GWoK~-c@|$Z8j7j1Z0ttNNB{H#aktCrN zFVh`|!ItqIC4VWaFKDj$I-&3aF0WSaf!9`T0fKY9ydAp|Km%2LWbnLSvyn07t9Tvg zN?ru@^xM1o<>DL;P9zrjfHV%cZTmXaKWw8Mz!O}brxM2iD1ZI-?OW)se_lsUSu;p{ zo$AT}(J|$`{^2h1cDMu=rU+Vq<+a}1V57LAe^I3!ki$_FLu0A!9l{;ZzOP9Xse6RH z<>v>;>R_cKypTFcPPgf<-}~iof8TcA%_z^w&E@<8y#3-ve)Hf$0u%v^CLV|py1)-V zU)3zKNUDzfqI&Cpf5ZLHsQ3R}PxJ0JctoMukgyPS+sevn`5dacOsW+U?6(ZYw_q{I zd!nkZAG_lT8m|Nt`k|2DhC*E%k%O!XH>$V|Mv_L6xoyT{Ho`euP}$B25QM6Bf$a;0 zx+^Z`e(e`L3(86w8CU987*ON(p4u6|_md5(TBijjprsrUH)XL6t7P-&2Op{}W)ZH8 zg&jqr53lW=shm9+R#dbLbBg1L13&s@XS{=><1+mv_?CD$^IK<_-@2naWe>JSY+XDv zat4*iISDs8AMir#TD-cg&G@kYc9h5{yd@N}h{WRjq{53UyHK(9K5$50i$L5Y^_?BE z2s>oe-#FP}2wlxZ-T`k%5fKf_6G>xm+Y*57_Ou!23;8dDrwq2Er08)ruv8t96}+nk zxslhpeRrF&gqVNN2QAdMDP)7Fa^~1uK=L>|zg~9HM%i#>2GrMfqnxRTIB|m*duTLV zX|73WM+KHqv^rDRdfS|M;k}3Iiil;QzJBvU;XyE_8!R+bIrc|w44iFSIEb2*yc=bJ z!Ox>mN%}g(GhDuS+1&xSba-=i|C;Gy#QK zkZ{>-rkUcg%e{=@c%bLfZWCW-TmTi@OC!JVupR_~$pPSze&`wS%>JqvGDO8X0v=d_ zAw&M%JUw(4LrQiUE;L(W*olSnOk@wASq6?J=yQd{x3YR4#)pFe8FNnSkQ)erjs1Wz z$hq*_%4m99MvkYLHl-lMg7V1hdx?* z#8#fr{Q3s(m5&eD$^#NyDBuy=8sBclIdecFmqPB27bajVIFG%<0yI-?x=BtYTOZG2OgRynF6aT|jjCTo*^MnaK1g^%UcQA* z7+wNho|KjV%-LH3z+0C_t|;~3asJVf(>~cSpeoXX`UoJS;I`6^R9p1^ax`A@$S^JLFs)K^3*cvxX)u~@cU z!sjJ@Y@YdR!smxSvJTUz8h*W4N8KSCSB2S@g8nGV(;Nzbad&q@1=)8rSFc=;tpoi$ z#!#qnE`g)G%C%wk`G-yATjs1Twr6$>=I)7!SWCwTl$}j9yEs#7>M2}Ye0*#uz0t_b z&`D*>3IJMWWg9tOp!$AoehoY}Tc~*9*(}6LvQXoP))w)A!8SzVH}a zp**+1-k)%=b`5-{pQf>Gx#(dJ;Hb{tS!cf|7-1gNboH?O1x9{H*iA9V@&wOxVgLIx zfGO^qFMl|2wfA7y^8=GUVo^amrGVCbncgXBxI10JZ`r;+zT0FE^uLuccb}ssa8dii zqC~L)AR@l*RX0Cdik}|$ctq12%F}a^zt{Ud`4kJ?`T|3gy?#H}K`1W1(LGads7Sq} zvczSyF4sCF^ZQV)2)=DCK>w9i16IHRKr@TL_w^q$37F+0<0e~&0vw{tr&pl=Ee*H6 zWC_l!I^oVR2R0*^M@$lAW7tisfQ1uiG;0r|5ceJt+dI|&@yElh1*X^<79YoQ`Wk2g zc)c#3H|s;qJcRd5ziDy*R}y2H@TK7DVTGp8R%Yfeh(%RS*jqEXsg7r$up(qlg(ZZyV4o5-8}{%weMU8Br&zS8jQ!LkIO ze!aS~raIT)WjCTSH(%AM{j`)*y)R}alI0qTvQT!C)zjp+4?}4dNsCJ+P#j~M{7$axk%AKX)%5njH0 zfqu&j@KEpXHVm_cK>rDh1r|=sa+FP#a~{gp-!Xh;rtk39RG{*`rD=Dky6kioS?NB@ zEIWNYVeDt0+#QCi%Y|hZ0adf~t=XUoStf4Ob{vcU%qUwJ4A7A6$ivF7Yb)`taj8LP_Z8F#-G6wW7Z|a28OOJ zE8{1(pq$@#^Ze1%{WT_2Y)h;34)C8jE>qZ^bWmw__q!4j%26b1@5p8BD3q_;^gN|Im z8?-kUeWQC5GUje5i&^448Pkbt0jk?7J@-%B(Ukjqp<W>(nEL|d~qvJqjPBD8W%3(@oqi}a>VBzlZb<;8Ofd`op zQn&UO4EJMoDZv0qQtY&st@;XEg57~DGij9eloq^VzyMM5+vKfONCDE;qPtv3D-_hqs@A=_uY+FrTonmRpS_ z7TuCxk{Sm%B#n(`_r8uI`^?Vh6@b9QO0cd;cmG@8GSF?)SR5XS%_WorJF^(bF|eEa1^6F zqiPTdpCvjugi-=Eq;8opxb5?5W_z8CwTT-iXYJSqdA99Y81RfZlJr=gH_prcR_Q91 z@wFkqo=tw*DtYKJroL{E>BqSDhp}DVdA3fbZza|vBGmAn<0~igOy7%@^+c}YX`oP2 zZ`fj>@rUdr(TB=Mo~S60PcX8cF~uv1@w2&yvYZa{0l7V6akfHqm%&WDKECRYv-u>; zU8dydGZ@W2)Mxgv;mpVlZTfQQUT@*EJZ!p^@@1b&JdV%VYxwzbnHXJj5WBbT$(tmS zehM4Cu6xh}-BU&B^MZ;X^XsAe&+mK8QxKy0)n!)^FA{} zJ?*NN@^0)9s|WhHD&fwiwY+H+CF{PCp+CjVe$0#EVo!~l&8nFtjXu3g$eV~U&#PCK9ySBgl&0lvUY2l@8{V7PO6D0fIN2Yk!)TMe)*ZDR z6RKOVksIMtd8(;Sw}~!Qe;sRCQy^gxRwyHdZ-m&AYCAaN>=B792)@|xOzo@QHn|Jm z^8Ck776zV?7}#q<(F?kkoN&xM1{B-w)YF>!Vn0uJ5Z?cO@5ck3;&Kgvjh0$AY*xI@ z{qn(K59a^_V>7=3%*T6}ql%E+wT3|3D1qbL`3`ThaZ_17p30Zhh&ZHry4 zC!^;2^$hagQsRGErhnyqlbaa3@mB1})brVy9n-W*qc;>n1|tg?3lL8>p3tV%WXI4q0M*J~NWD3%pD# zE1gyjbtIJSFc-L;5gvNDI96c_yJzXq_EnMT{r8{PJFRcbX1NbrHxNpkM?Qs7%0-7* zP~W_5&EMasYYOi2GUxYu=7IgyVK~_2s8wukum>?!9`m`39%jlgSrM>Onp75Dreq6f zqEEN0;S~<;53E0h(Mo)W8Npc7aK15W%doFZ*fhCRQZ&GJ!!73EFi+` zcVlH;Z@FEkx5cN}(>zFXK>_p{@>z-XcdH15@N#8^Jv`?+@V@4dbXs4%9=%Ec!+SMJ zf>9}ulfilfn;lP_o@TJ64so(S=dAqY1a^pEalAij_C`_M;loj{p!hK+cXo8d)zPS~ zZn5jaLjGtQ{o-Ph)l0c5tnQs**+WYb6Gv7uD4N}=gyinnd4p2ftN5MQ>cc#Uy?9f- zw}BzP{t)KO(Slfh3-pT{IWeE-xx8Deg70^{Japw84P+T}JBB^CX)?BI*Yk2oISlv6 z_4`MRtmXFK&r1$07%tFG+xKU4{tJuxuit89y6!#Ldf>5st(e~L`5Yz1-ISLSWZuPB z)@kncU3;hMANnsGZ1GF8*WPHJ?07@d9a;<`y*U8tKI!^GVxu^&>IAQYeT0%TRuTC; zCPnpp#>BS8zKS$~1x&+E^G0?Cx<*Spe(&#~h3PSVub%*gM2HTysDxFE zLs7t6d(Sz8ZoOx@x%4Q?Ra<&{vWo19#d62MN)d0FYlCUZk%P19_H00XPTrDB32Y4b zz56TZEI7xYCDt?<2cBr}j4pFvdpq|!|H34lH@l{fyu%{I0KI?wV$|=Z)OWdx-z%X&%y_+R+c^?Z(8N1DCHMxFShe8+Ort8@m~6zYHh zj2pRigbxbtNjPLHtXM4Qyy%e?WqrSD{gtQnxY0g2fuoVdOAlu&BD}Y-r4D9ZKYwD^ zJ1r$vLaMMy<~xO`C)4joK`pn?^9smW63QH`9vm>OHylVuMYaipC^T^BwyP4hC87f?9A?LgDEA=UDU*`^|JcQ$N@9AIX{%#Wl(7 z&x!?&uU@bpH0Ufp(KISM zi@9UXkj-iN*~a;+_vvhw@sS(S1jaJO%;3@iKl@|1uA&3kY~$CDeq}*b2Ylw0njF>r zR5v?+M|8$MTxqeqGABBq?KGx!+dQ_8pHJJ`Bmg`PIRRR7oA;2*q&%P5*8olO3tcTZ z#YeuqI_~}Tq;y(`IhI}$!a^>G>nPc995i~M&#&=l_Q>AR)2lMqPK=#t?@u^%s#w5D zo7ZN6AfO0JqC*wEIamG48)eFGah1rktbG>5pJh9BZ?h=3D1C6LcI&f%mc=vA68dv& zI%K-1`YfMRCK$CYl=nRIOqI9Q=rbfZR?Q{m6#CL4g4vdjxW`)q_4Me<*EM`5cgJ+^ zV7*?F07$*`!beUoJ8sT^bV@d$s%0m^ZK&TsA|NAVf6rm7%@9*^zBYS-jmh)8CaL_m z;&8s5Ap+)0SX0qMS~^wH4nkHrr+b<`UpVxVU3%VBagI63r3Pv+LP8;1qQEJ5&V>^S z{RX2qqi}v-c3RmS`A`|=X-(ofjpw-}AnC=Po(_l^^TGs~N9io=|-C%CgNn z=9U*vUx=T++uQOWE=P+&PW1h>*S7zKU^}_!?HS&7OxpB~;k+}|rhvn6BIZBC>I|z{ zJ}nyxBy~#6<}y4@S%5P#I$>2J*I3)dC-^~Z+A+MwEw?;BzdghNuN0F%^4nOPT>s!f z!Eq_LKl zc$q2tHO=ED`Kp6nSV!_uYJh3wfd10myThL?8f5y&zmL3(UC3`YTP(~C7?TQ&eu%d7XM`FFv|o45d2byf|Nx0d2gJ<3N)S? z>v!ODlfyv#1I;6`a!9*3Mya@5|Fc;5GMQ|3l;zdo`nn5q58iOBba`1#9cAQJp6V?Q z`hAQO&?1Jzrr86eEDrU&(TimI0bk8F*~vk^yJHd)2P!m(+uE=-v)HUG^9pa5dfJjy zVjjk-s_c;BT*SF;9{pk_C5Pb0Q`uDE$g}%2$#}Sf0Z5x>;c1+c`!=U?9PQ zviO63q=}2*h;Q{8%)c9w>o#@Rl@OorUN`15_MKe$Zf@R^UNTpe3V8 z?b>3ORrTRnnJEcC=b#QKGjn{yQ>|Mk+bo=(sf`TmC_fe1Y`V8^p-?lf*!t!&DA^@n zoHM3@{twS9GU*phh{t?;+7rIS^V}cie2JrEbz$;mKOElMOWw1t?{1Jc?BpSI?C`_G zBY)7pNBCGqm35e#KEggL!xyZ17);(+`X24^S@MGt-+1MqA^lF2Ea(xdF1w{kj9%

rCkLH?Kzv1y?6?Wq#%8}zsk9PSu;&I-~{lA^) zaXZj;kNW;@ujC60MS<#AubFXqLqiveo25$FBK>=$jJF=;0iph~A)|>xzdpHb2WXWT zn8$|oW9n6j`7dbgGFdmbfU1(mj|$A>T$vToXldo>-d;w?rYpzbK@HAK;VS!GI^m{_ z5YEYU2g{+a$E@DaxAbC0v-Lg@C{k$~!j!pc?2u7uzc&$k`5I%>@(<@ z)&t6Lw@!}oiGJ>1n#XSYah>HJDD|L287+6+%d@jP#0A}7vv=k8`_eKM%}$K;e;m{- zI1v(WeS6T9g<3GDDeSckG>~X3th>+o_H(b0bLIxpJE*`aJq=ztX`p<~q-3V|TzVO& zrMxEdht7Q}NQ7R=`otG?MSfS7e}cC<-t>F@Clyd*CEPSCmG_su^lUPHH)(VkBf=14 zV9lm(Y98M-7{4Fl`$nNZqA1!b->9pY-JrEx@$mYK^?r_(75T6tGdR5=r()>!HrFmy1_CZ6w1 z`r9SmvsEX(+NXEiY2A;GF0Zk^5gcNL*;pCv^)359?7e4Llk2)J8e|{}C}SuH3W5#` z(m|v{K%F)aL5egXC?ZNnIw1r>tOzIqN>@N22uSaQB1MoQNbkLd7Dxzb`~4EeTyw6q z&OX;XYoC4AzOIuWjDaNizV9thxu5%f-iA*$e)3a+BO&JpJ`()m%QI{$ZW4Pdsw59l z)sq|y9-0@aqI#Am0b*B)upJKTCoI)vW4YhuPJeDS`BXsBX{k&zsle-JJqK#)!fPMLY)N0~g0MQDMyp-B_adb^*(6kE_;7XWUTWky!S#*j6bZGjKdLTeSmX^S z;6(R~pNX?QDHu2A@@94GQ+d>-HrsJV6Q5uY#w02d zOwQf-vA!s4)*$C&A*GaUBUq5W?LS=Q(~jtAJS=WA)FZ!piK7VuL+fo2Os zSLKM0AHK9&k38`_eNpZ>{N#|3kADxs_{pLfvBJvLl$ht@dSUOSqj^euPW2_oxFotD zr%3p~ay;QC!SQr^Ii{k0u}jUXDaA8E)p@ji5Pj;)u*Z_5N)JKHN80`9E8OH)Z31Gu zM7O^D65nG9-$Xz~t9WI)4e&~G{*Qw45%xtjg{NY7!hBX<*q}BFb5M?VpdJr|i*45y z@iTFYQk=zMH>K8>%m{gFe&Fg{hZmz&8zcqHyK$mugSoPZ!HTsz35j}yaM#)7(UX=4Yxjka8N%=;(*@6h8j^Ca$jwF;4WvpUbE z^#fZkUKp@wxf)z_U5k6~=ly%1r!AP3FFbM*sY>kZxvnO1_4es^1}G_<@FRiM1GLt~ z84Di0cbe`Qc8OZfEtXxk#5nIKZtQciwP+#S>38lA&0G3-kc2$75?s}IcfbOS!LgJq z!Q%N*8$kZQhmhbXjwYn&&IYS4*xdJ-{uB-n_x&mgd5PLd{y9$8iEv3&!Szx2E)X0V zBCeLr)vg;&t0~QXLy5VB9d5ZNXdX3e%cUoE%+eE%5X&fT+`QQM{qSOxhorBCe>5um z)!kN$m#V|4`%GGU%pf#4;U<6PYo4Xh;KY*qWVdS5&0KuS50q~ZhBiPo(oqq z>d#(E?7U(_m*6-$r7$%=N~y}kjH$ds^=0!%Q$0asUdl4%pj}$IZ7GDf_+v11V@;)Q z*n%t@c8OYe-G@Fin)gFgP{2B6rNuuzY_q^19p$lUAqjfAjevYM2pl5E$EiC*O=tBQLaRn?J@cKWYgwN#YR^JB2Zc{u^5ittj5YrnFXyuW| zTiShZB&hWdmAG0Hq(NceFLnl#PGa>KpxW|)X_KFGa6cf?IDk%CF&@q9D?_Dt8X1!Q z^k!Sw!vd09nQW6KPpG^IgUx8!bQk^hP3w2ZqYE9TC&zZf1X0X&XSJh1G8t=*6fgHL z%3d`!o^u#cVF^gyVXQ2jX0l^Afh?p7kiLdC@kVvF_zSkCy{X!O0rGE*kR6uE0igG= z-H=z07$tWGLE)oqEUnGbmOjihqLkJlJd=T zrfRqHLu6K<42fmXJ;8xD=d8cvjX>m4V`b$>`Rq$MgH0^*@drR(ek;l^C zI`gXHL=LKf6B3*onof@Qy{LsmN~hZzn*O#7{x4P*a?l~U&1>%nPC#~M{pFFG4K_5s zS^%k*wVu#=(joMf>@A=6``FNZ`XTBGXZtDLIsS!*ts^HNMiQ6A8VwSOOMO+p5fE^> zXjIgcoKIv@e_uPsZzN=2%(R=`l5c*Nb;vb_Ppx|BozIWc2;CP0I?z4X zP`*c4>%(uvwPYO_5G)@7Wzg5~upcVMdt+V?H^Nm3wv}+zr)&K`6B%R1HJP8Rk$AK` zYyB__Y$*|dFfMbaI%tWM>1VBJXdCU4qoL0$qVWl|SM+)GB#HqMf)!Am`w@`O1s`eP zH~3=dgtRJnCXGu_eR@}vIeI>`HIbY@i7|rS=YQ?gw`{xTnTA)dZ#Lu_sWjg54*?G1 zwWYHq^7qA~<~Iu}JR|MWGfiwNGac}Nh-1rpuhGOtIIVfPkN8b&u@dw~nCs11w`?v7 z{ZDRxNjUK+Ie#Pr<(ZO4?$aW`s%y3wJkRQn8?O`5-9t2Kx-Y9BH<~2vcn&=dP4tyv zFwrAuDpL7?%fz8VhNlDX3OJzy0<8TXb2O-zjN-=MZ_ngV zW|kP-P{wzJ{s~N{(i6rK1s^6c$f3|*#?rUJ&fFgf?M$P}qoJjKyQlKUn0xQaPe7hJ z0t*$PvsaJ10|n9yXcn5E(;lbX1wMKGg)Apb5Y7}{D4p|P$C7>VUGx@uH>`0GOJ1Sa zx1uS+)L;e$6uMOCTWG@5{qV-KufQY9S&ZE;`HD)+!pP#UQFMkV!2qwnR%S zf@lFswGH|60qzGqAQ;YOU;;+}X{A&GvImt-OzH-h<%gX$-ck%kHC z(zpZa=0ObB3Q`52IRN@3@TBh#SRaBZ`7y&7mj{$@SR&xqu5Dszi3~?o{EMQvR0i6R8p({GH)!$BSol!-MI{B|wwhIK* zo#dOGS|dqQYoimb(HLdYEWLGR3QKc7XK=2Y&Kgj+xF}sUOxaMR(Ih%{f04S=p=L?b z7*=ck zfev4F^-JZ)f7VsovMwcN_$hdg*3p!&&;ACh-e89RKi1-NoaNE0Gm1w7lIO^ye#3sV zwnYK~$urJ=lU}h1at~3!ihfcJLI&p*J|V1sB5t5wgaUi@u)L3Yd(g(cO|>9|o| z%5R|+?f%Qo3JAXy{O+;zt@u&$vsPX7B#4t} zyI^ChOd;Cb>hdg|2tG-!SwW9bM%t;)`>JoQf%O0)6PW||$OwdA`G-Ff_qn+2U&yZ^ z3+-=v*ACsrMaE1g)e&hUnY+i7wnh|DBP>@MM@gHb&H+JqFOhAbjeZ#W;xTBB#;tTV z<3NnA#@u@(glBl-@H!aPTjxq z_yFR=o|i!nVq!0sx?jw!DW->+wwh&@-`QMfG0P<5GkoV}>9^_a3zqaviS2U#eXw7Q zRsf6#1Sf5<{8O5Q`Dc#5(LW0iG5@4d&@}odDPxk@KcOsoy#Hio(>WN`nVqY`4B7sb z%gTr`KbLeJn3Y_haCPtp%4J#Wh7j=Y>4!%0VVXFm*ag%4_LO$njH2TJ4=hB`k~K-e z5wv*#jfkULb4+soj0Nw<1QR7-dPwFZVcuq@uvRxs?l_Bdh;#hcD}C30;gB^l$`eQ+y|WEg_A6T!v+kHiw?jEC#u{bWZrdi;2BR=(i#m<1 z8tt0#nZ<7Vr*iKk@pFc-SqaL3VCt6`b1A0Z&A32K7te0nwbGcdZ7PVIvAwx>p7OeQ z^f3EMxpC7`7-p!LMyY*&_KpjB-`2W-$V9n@Uw$TP<)vw5b_;R3{rcPXnj1%W8Bq&DEaL+I#>0AlJ9jb&Ks6xocU{7A9Yp2Dz7B zp`NMi!o0|>Hi0#;OagUZ7E{=ibpI%F+xDhn5$(%hYPdJ%f@R5yMq@?<&UTm>G+M>W zI$qhMIQgxOudPG}69ZqUz)wud!T%6mTym>&-xon&`n=>Drj{$Zjd5I*&bM1ly=pXw zT&#O1J$!&2?cxkffIde?s%HNW&dYof==-xjP3RF}yX=X(YTNzHz zl>j|1^|it!`)PLO=if`>qQ$a4+vQPR=YQm~;S!yYA^{(5C14?7J=R4-EEgDT<2>TR z0`-kp6_#2@&bRV)g)XNN8j*twJt$rIdyr^wANPot^L6ZG&Sacyn)q~B`Q69hqlURW z*;+MO`5#oqCtX`@COM-V=ZA{3CV!a{b$GSJKNcS|Umyl)NK;ntaAXyFS!&a)f4X10 zh^=)H}By%UP@i*U7{ zLP7IEUL&EC=5*T->`cBzi$2ixCHXq`6P&IMrdr){eUD2U4E<()Wi+hHccZ_!e1=_o zuE#ta*BC$RztKNRDADC041XQlU}wuIb+}vHVUCc9Q_M|@4|JVYvy|ZpVM{yA$)6Fz znsyk>kKImN9K%wcvuLlDnfDbNpR;W|tQW0^c#Ru#)6j>4aFsnMHe8vkH7o4cXc%&D z#J+cr0v)co+Vr@`@l1#p-(5_V<6H?!81Xq5&=tZK;0gku$1ViyMMwk=bHCQz;?`9v zCl&JXZQ#<;9GsNNEsd41T`;Q>amA*nl#YR_i$~d7Vx%5Ef0Xk3(7V0Cn{}2W#+GOH zOoSb>4!S7y42B<>^5<@xq1&hycC&lF-eE}T~lUb>=_aNr`2+5^s1usX9L(iD}C z>z-u8*-ORpPn#$?-~H)2IFXgS!Y;GLyfdqNJCesEKZ`b_hoe%%$yNexYeRtqB$y7( zH-_KODe|(nH_O}9maZux%F_|&i>5wAhw>H}Xi9D7=Sanymb4Q-g$r6S*A`dEO@>wa z^~6AAU=o_Rn-T3RW`woFiO-Ap)r1$-jO%!f`6N^c8}vQkP>PICc5N-ranDz1U(v$P zwa*thQ%S+`2u^f-DNTfZ@~q(x+G_0xtneYA(dRzw`podowSR83SpC-j*3fiQJn_Roceb!a zbnu{7R-fKR+J*yde_B^6f8RR^nrDV7)>h<_1Al}=kLoZNeWt?u(mPli1x6j z;)m`bSYW#^I)mx%{IDtedr_rtMG~sj=Aia~^LRxq&c8B8J)q_ebJkBXw{G>}*Uh_@ zjT?n2-J=cP7NbERs;OcSE?Ih~#;0F_y7@!HH8psFsg^0Ap=u zPGZwxUg#DyThj&1EerF!gpf)j_Ne3($1Cw({vk1Hry71F988u@F!<^;@u|MQ_k^wk z2P}XVqmqjZmt5|1vN+4EK2qVsoYtm~&R#GBHfvq_sW=mik7Zd#FO<+MS%yDD} znE^+D2ZUcn+%{3BR*qKu5rq5og5bUQjL0XU%{$aSzXV88npe*k8K!Omi{K?`PLBv; ztI40DZ;gJg2a&;La7zhNn34haYwawh6Iywqx1&cjti~8i5C(g}bRxf=^N2|k{1?aA zhcr~$V~3;SRY?^v*j!FRpo6d^T0;m`w3^eDvVdu!r^s$wlQSI|)~IjNlXI3=3hg`l z6Sn)Wd0-+nF!{T;y8;6}If~J%ZG*Br`n<%uP%j{Aw|TgvZA+0CunLVFQK@1W1nI}G zGsc**7zCRF+f=9QD+`r;m;M&=jo)OHb_}oIj#FWUE08Gs$bL$ojR>&Lm{# z_vKBiZM8qk>oBjnq!Z!Gl@z%!A05h55G(cY%!4#*-48OD%=ld{wu>TqaHjP=w$pFs zS3twy%2Lr%Ul;wv)8@fZZ8F>raiGp)Qex$_fueN2Usby||J-11R zrBcpU>PA~Ki(wRV`GpAX+~f3VDYFB~rxOuhzks-dVLU&cy)!P%SAg#IStgo|a=`*V zhGSA`?t`jqE&B4^&XoR;GmTfejdhI!vV<*+^{AU*Eks%sV|~>En&l3Gs0bGDW+x%R z{AxU%DEzv3`0&9T#O<$Y!7X79{X7?Kek>{fbgA!VYq_!94}ge^^B)tjk-;77sjz`h zpTFM>O+%>YchHKl-1({2pOc2>aiN#V-wjv{*>}7V?J|@cY4V!p-MdzOH5yZ>csuu4 z1A^S2E?_X~NF68Bovvbv6T5tt4NKKGPmJoZFCA8{*sbYk2AFo|z%KNuSzwR9CAZTQ4gqUiGMrEZ!@PpV zu!HX(LUT+rK)hI=CjSKXo`fiy4jKIQ`mn$(twtm-0I3UC>lb>qf|Uk#MQ+=!b5naF zNL-7%J`Em6X6GaDe+54O^YOiXa_ipv0tU{3bjcy`<7&@O;^a@;(a;>f`*tOa?)IbNAZ7 zvNu_HSz6U3VHY7enXW%gD9XZu8P@90!wr|r1LDS7d`~2tFi48U6<*WzY8>1cxs+*Hd2V+@b zNu5HJ*^8#9y8U`@D;z&0uM=8zwWh?6R0AA({1w)8OQvm-QDcHGnvqvo2t@PICb1MO zzON3leUWT~x?qt+hHpn~zYWA;=a&E_lm({urE=2n3;p|Jrxs@u7t8A(T%6vC9i5$4 zys=Rt6+G>0&i?nslE7FjFfO;FNYBQqa_85N^%h)5Xyep=Ls3?bN^lmb7+b4<87_Y7 zwqRObAJvm@W_a(~KR9V6ue5P_(18S1D z;8E=Yg&^D>(hLe2^VuK$%h z{ePbHhA_}Gu{?0xT{ekV{MK)<6VG~K={kVW74l5T_e?Au9F-^75+w=NO=8vj+N)T2?N96%CS5K$HmL*`ofRB0SjGuaJ|LahP|M}DWuLC=n zDZJquAfDe1I}rg5iTJHAO+cm?U^n%TqX6s+8{-X(N8Jf=m=B-C@vq!ZFf*)$#dYUe zH|AwXH-rf%>acz+EcDO|H5Z-F9Rgve0uD3}@Wc&t7fN}dK(~Px06BPIXZP}PR2v*=xRdBs?UHYz;|-*eSd3`d-u|Y zvC2%D$6{Vi<#!GATU9!!mXIlx3mL|%UYS4iKeOzyHzRc`P z`|6cp)NP=trlT&pznPDH-c7%QB90(wscnq~p*Tv@Fl)slzV^m8guC-=x~L|UaGN^~ zDl8({KgFoA=J;Q?C`eS})wKB)mi@}^oO&&GCG3fxU~Sz5I_W=|Cm-sfe$?S0uAtLVj9JS&7fx5=}r3%H!P z!TiS48t)ToXGOozIxccYZqx*f)Z$9Y`PS`>0dL7`$2a}JqWT^cFPfBaVfLXG%La0#Qjs%eHll&_u~7t@m5IlO1JYv#ew6U&^X#u8$qBuoz!{ux~N zigm`m=Zk2@wr^X!*T@I9R{S*k2r}QFy6rT3BMhNpiD*l_K$s`rqSOR}=6^;$X}%J6 zF@l@clxb960fUUn`Mu$>MSgaKRE&?s&!sexE#-8J2W8hshG zmQkkGo$T*!;kO(Sv5VgqVdCO{{exaST5|}@i9rTqPSRrjaZX;ncy*|8uHS8!m6D2A zL$K`HcKvyqlyG-lqaOyBR>wbsb8C_;1ec_ZINtLayF%@Qa|Y97e5(vml|wE_&=ilD zRl;3=oc884s_z&ovFqIo*hY3z)Ng&Tr)|)}c*-_=NnTE&x+8M~TC5jyz>>h=fZcNO zgiAqN$S~5dTRyF1!S2*`>HuzyP=^*4vGhF-d-@8>V&9oNh1nT6=CA}w2B$_#n&0}} zPM7z4m-G-4wu@h`(+e# z=PVXm$Uu-91)5ehRXk}VU(S*=NBzBwk43}(wDc^O7d$e5*e zzs_pEu-uqHGZnwcns@uB8|aOo)j?}>|7w%O3G9qMdN_;zy%)bAg+>h^@G6HIDcJN;c=)-^PLBIa|O(YM<+YJL-g)&m8BRya}QfK>D!P_FdY zpu%?F@=X9Z5yj-!IZ?adT$bI4!q?CfZP~3Q059*)jM7i>V^_nH$D1=JziF#}Ld|ln z(VRz~b3Yk=d_=}>o#eVK?DuEGZM9-IK{6s4;IVq@`dj5CN4%YlzH3JY;_5$=@~@pI zfp!kCSuhu+4gwhAJh=ryd&HG;yPHf|*ic8wJZ{!L z9t*O`-v<%OLW4xXuwL#ek-ptj84z~5-kfZl?Bra`pS{IV(EX=1E7un@egUR{B{e$q&4MRX{k?M>i}GB7i1KKhZHV3#N6 zp7m4C2AGJG(TKq&-jEF?vuj-RI)c&*(?5nvO4V8?^+pQmvJe;E)hdX(N1P52v}O%a zOCW+ELv<&hND5pJn!U!67@esUmk@{pW@0{f!AGSXC`!tM3%cHMK1s`g=B;E)UZ?49Ty%iF1NBe-s(&)mmn6EDTHp96tDx5=K$w8oq`yER(_zaO+)jH6m% zV<(ss1JgS{+3wU1^IaAp^{vCAK>E7_o-=o zweoR`FFjgqHMV(-?!4D|F*-F*CZ`)w@&logaGJ?Do+9nifNUiE-S zm5&1|%lP1BZ6k`(#%9p2)CEx`=_y74(1G6Rb*ss?X;_0gmZCM2Y8a@yxKe>{%eLCG zVykuIodiTGA*hQiX2Ab6iFd>R8xtFwPi;5shx*13w=v2ve>pr@0EgKAd(rmb`Ppzh zCc542kU!6VS^=!Zp^K;Z+;yp1yn{fY^u4dp-uO_HMufY1=~pC11##O42>3x5HU3u_ zOYDrXvN}T9sIdzUyo%`qwY1dKQw-}5sNA8TsS=l2Frlj1=$@{@TcKw>k94WJ2HCq% zx=;bhqIaOszT86B^%4cNG34iB-K=3?pfHZV0vr=n!1rcohvtc`hZQUS-(Av zKN&m(I*14)Ql>=mHT{(DY}bTmt8R+uD2vWjfm4(Ezz!+4*J9b?amV7@R5_#g5V~vr ztTsvT_t4G5G>Fo0aaD~Zlbuwd!$Cz9OJ7iS*Q#^IU#U zY6Pd9;W%FMu@@T16G3#!GJi$NBr)Q`7&Xg1VLMXTMYmVq0mx?iLC8lkWbsc*!K{&3 zwr^uEV>Z-VEwF%-1=B2COJIZ9g)zcLJ)nGOatw2+KHXLZ|*%+tncK2&4 zVh#j*H3lZCo7SN4Yq4l>ia1dfiA)k#1>||&A%@{CLm^X|Hg6vGUsB=K#Njm8{|sGrd!ANojw--%c@R zVt43YL2$02j#_X!KDBuYl_6s(5jylB^;)w56wht}Vh?44_R8kcK64zr$2f_88>Tz6! zy1fjp(+r(;Uj~h!GA5vt4djF}Z>t;W>-LUBucE4WoOD5(?n)zF-C2tw2h*Co1h|Qw zgwYf9Y7IN5P!P|SF7?KF;>0RFM&6z|>5q5tGgy#B@FxSKRm1sm;5|8tiNze=pg+!e z)%cuW$9(+j*Y5$f!YQ1wRw{8~%zr?{_>W3y{Y|2|b7i4be?Mj<&5h4EO*ag!()K|p zmgf-~nBcOb_{2_rfJR8pI<3}Z;G>3xsj(N5LFe8Zal&#j9%z=kK!{65Fp8s1&<%-pSsw>O_&ub zFIa+{Uy;sQZUoN-&?gsp=&AIwwMru}CX?4Y6*6jlISN+5c^&pXDz}z%uknt(%KS0A z{eIWRJij^{smt2z_VFqn^I|8-`PrH4aME{O0-2S00!}xx7d84$gEl02Z2sBxe+%JDBovcKT|g zMWLNh4oZ9(;mm?Jbfng>3oqqPAf5G_s2`sRsZ16|K3b-X`TO%Sj||xz3N>2*FPW?Q z$9w_vUlvGlCBoxt`yU>;KCdSFg9;_2cZefmg|kH2;2tQ7)W5XB6R6u8feBB0IcJ;c zo**4BqLZ=hvtaFdX;W@f*20)0ojALuO-{oDk}w=>eBYkN(<1S5xY+IRT{uW&W)?jl zDJhwIzcuEqkOt%WZA)?7s%$VlxkJNS@vy5!YU@ywI2Q%LN-zyq!=Clw2uagg5dCWL zUC%Syxs;abnT;;hLpn9*B*68G90viM9Ir^+0z59VRjo&_MK5kh^q1xBQgx##K4$a# zIY=j+F1u@4ld*|4r&C-g7^BQQD?f}~qSzRt{@#I3W_s@c_(PD81K6M;LKiN|Q1rrN z0(NF203IuA{dDI%2H1`TWjqBeNo)s-=^PjskWa*X+9mS{LI?|hcEUjm@CYJwz#F@3 z|E(^gX=GaF{;-$ABofp?L;_%|Op2W>6hNrJaR)5OB#d|aE?8lj6!RL4pZ^*v@h?$A z{$B%UY8kd5{ZA0{?1f!E4VBeEYyz;;!~GQC3c$!G#W0?9_CH$-GU1^|RikuB3`Awx z&e8Gpqe$d(LiP#1`^*t3%V3H{VD})<1Bk1|O?rO);<4||e*I|JcagzvnG5^%%+SUe z!NIiihU@wh#+Ut{%4^?aH~N_#XGC*{uJwtQxb{WQMJU3N60FkG6ZlUJ-SK}giwPu zP>Y)EbuMVEy0}sg3g_HOY6hp{1Po4xz6{2nZU7**XOTUzx3yt6zf$2@keJt1AHD(M zDISl!!0zo34ffF2JZ+RwF&V0wm(yV^>Q@NzeFt#F!*uPfy1#)4b&E!xm`WIC(OcB- zpvKczxK$eqEM%v(5eBXCQXqPfegI)7$Ho#;$kUJaln{*;u5f$<9XZu+ZE)TbP-(L%?GrPV1mqb*?Ytj{r1l z$T-@_>YMh*cuLZBj>D*h>7I4?L^&Z6J{CalYAW=UF6fZ#RTVJWFt~FjrpKZ)C z9ox+>DEf;qX^W0kZ?9SlK73Q7ObQeKA5+KWGa&B!BTH#0VT%2Jl60uB#)y1k;4(n& zFl7eip$`2ghxT)sLzws*5e4=X^61dBjkh2^%O(NHL?n37fS0J%%(mj@xkBK(HP`P& zAJ;jr!2jobX;gw+VRawuVwzdQ?sg=iqrsMjL)42x&s<&vOU0eUM8VJWDj=A+O~-H&)dhW#Nk7h(i|O zOO0DY_Q`CBsY7d_BQqGvDis(Y-wA!^aRLBeJUQ1iGj4q`d80#mGGyPoHj6$Cs~gTZ zh;!YTNAJI!Z5XLOEHHZ=%y3LhOxeIgxMa&U7NXYEp~lw&d@iQ}N#>XkicrkLRVnNR zCl09IxFmm8L37&B&SACUS#!n=bVX0*727`4;viEq$90h+e*wt4)=Bcr>1kf0y zq02nuo=*eA$*ZfDi?J*+2P&K^1bzzn&V39dfJU6rf?LPtmWNU&OU?kQBe}iq?LkzYMSS`-*g49?Q zR2;A=4JU)}2+0+GbIY3-eHA2dt@hO&W>|mJc_grkpu73dkRTMd+7%ZR#JQ4d!u{c$ zm4;Ol3+slLeX)_`j*Hs~hU@CL7`43{$SWRj_SgILOd}y6;bR^Kmyi?#ifph{hHZMP zKJF=Yt*LV5i2%!GsT`Jz_P{K&;V5FbdVSa!GnM~}jA<)q*St1+O+$dhLcRxb(Tk7# z+oXm^XR0)+K=J$^6A76wdy5VBJsDyNu!|7uoi@IxiyhPGQvVKSF5mHGW=ZrxuB*hk z`a7Emf}otSXuUlU;T|>(XINybE#^H*j(cKWgsXxgM`z`uD#MRdhfZ~Oe;M`QsV?;! z99ZI|GWKTf-sltYz3S?ap{-sugz6x5;V!D(XV`KdohQcKZmKLS1jNRt7s^(exG`w~ zzM{k?kiT1;f3I$IOFH!cSu+NX@+FK{Pav5D%ctB>EhyklS~0*0qKHNN#V(!l0@NEv zfHWkjgD&%LgBI!sKU>QyDqcaPgi}DrQmqlFkB{kB_4u@m3{mJ#VEiKxWD;=4cDT%g zrSNp{5Y$PS8VUZX=2vH@e#ec+n;Un^AElr`4n=8Rw#|3wKg$cc27%X{kp=k4B?mAM zP~b@_2Wf-w7lEtwyyJ{NCuuOhc^2eVd(!1WsWl8_k?gQ)D_@WpS|{x!;xge-VXj&x z9~2Ol7QtyC79@d0{EzE;5(rk#zR$y+JxaE1zC40rM>#C!~~?mL|p5E@!-D z=Fl4qE*n@rrC|9$7tm(epppT_L41D(@sjTN7HHDPl)>!0a|yijS}hKyDc=VUOFFMQ zd?HL(1Ku1-aI~`%GuhFlR%i5fiETO>!( zY>L=2tE+>Z_V(9{%NGw)NiEQK1=ajLgsgu4=Tw{C?@lX;kJHa^YC5hTkx^n8Bu|jc zaXsPTxH_88W7mF-cgSGO!piF2wNd9$H?RcEeEuF)UVhJW7do)7cv^I-3eb!KXumtL z!!X~$p-%at2+VCoy_a?CqC*g-0$m&y@QASrI!sA#bhp|h9lozz>)O#oMH1w%7JFVE&~3mzl&X!y|W!n!^>so zd_!C_19d3{#+uYaGS02KT#z7E%4eMPM86gI9eYctBLd^KeFNg-04IK&2%gW#35r}a zm3zLJ9t8MT`wRfWq?nOAcsJ@K6dZPBl$I*TCTZv=Rc=W$BYp6<)Jz5_#{5#)zs605 zDvUA?ukHB{77yp05qsE56#n~{1?WSLh|7B4X0r87{PfLhJAos(kY>hCF2TGghIxRA zo)M^)bjq{H&&y~ zV9X0P4&G>ZrHWv#I&g&mGrfPIlFKMzR+jjUTw0qKpS_1jvyf3fvT(&K%iezFxiNiH zv!aNoNtqxGuT8Y|0{US3{}YOHfK$~LNw>aL(Zc-q2hveJt%+VY6^1)XsWo+1?$*`m z)<;Dh1;P_UsS;}2dG1oLrT(K3rPdhPfS@|&01h?LR`C*G2wp+NtMm)4&}UkqFinXx zkgc@V$$2xB;vaQlb24a@rZD1+Ix*l?rRT{^G+{~7kfodJRPwkxw7HpT`k=A`75#0= zlicqvO&;#KcL!V9#GB*Eo;9d<=zCu6JiSZHG=9=?Hs__^d%x&@c~zGNSD1 zceJO0XXTZIIr6i;gGIEnnY$4$4GSxa;nzu>lCG=l#N9B>Q>o!*9Pe5ytlVqXZ9Rov zZ)%Xvd?jpXUzu>zi74-pr;eAf?9G>qGu}c!_|Lf3cW>e;@6|JNt@@M0=wd?NQyCBJ z7fBiu;Q7LJbPJZ60@pIJJ_d)p+pk3qp$FFQRumP}>F4*rI%0WTq%UFMBkE(c{H?M0 zs%O1`6kcjyB|T0AyqM=F%(b{br-hTYg6UP}SP>~RK@aQ32GuZiL6ocCV*bxuTdzdI zwJ>vzf?4+AuDo-bnB~7RVOn?67byuIiT;G8nDK7*Z%uaxlasD zV_4*arn__@{H_VY79Fcrj&htZTe?HZH@QwH49Qmhl7@X|cOR-`b_T|i@ zmf(lL?}I|bYc*8@hvH~SWAf2DONV?HUxAeNP=SF=c3dOp)4<%ZbJi>;B3;MMO#*A} z2t|(k<8ajUP@pG>E~dN(zk6@2%}x}VXSWYb9%%sfqido*J_i(Kr?rpcy^0+|ziT@$ znB4-*$_5Kp4?&A2#mD7LZeb9kT^Et}G}xWcytHEKEFbTHwqyVDwHjf0My?v( zTN{ZL4sj~7z%fNM3@$Ilw3%k6^B*{SC9QgL%hVqKJETC*n{vik3!t^{~A*2?R1{34)D9AtC)K+ zu`h#cr(@2J4{gQfSp3R4X1@MIyOCo+^jP$Ezj1V%#E>oW=GFZ&3|b>>cLPA3lI}WH ztqo+8gsGD`pR%$}h-G~Ax1uGx-maUc_i6JEv%vWI({2K{^jdS#Nlc zPxe#sY$+4ZrFlAV4kW-akBc5v`eT%OhYtTeI?!Qs8_%hVJw#J+qw4N&kW&r2j7WKj z$D7HyYx|CR|=2SI5;1EM!xqs=D zpc=)gmqPL3yM(q-%gjA?2EDra2E;gH74+Cz1Xu5C95OXm|MdrTkt5F7{J$vbAWA>n zbj-Z1=uu6@;#>+lyuVWDdUMYjI8R?v)`$5G{Ce?IX>)^?Z!6!B z-@fwlBVl0Vq6HpW%AaOPxv4f+-YshQ(J+C8gi3bMcImO(!aWd>V`Io4ezlVkcYpb$ zI+EAs3Qx%<*dw{2eJ)e| zpHSJ8Y(ZA>3WV_uAQ=RJ({fYQ1w>&{Q3EI==aWD((-?ACZrA0vBVf*GWK`~o%ax5Q z$i@tblBit{$~w{K-tpYmCQlLPvyz412?p-0cu>#>@tjsvEzbTHN*MrkLlIf_TAXemh(0v%4f4Psw1L@0hxa`!xech0HnvySUx zR`F#}SylkJj$Y`7+dKcKk2DNKSNET|^dC6%sZ@GztxxbE)fa(;1=TT0+gG9RWqT}B z(UK3EJWV8lWC2)__EmI~g2KdX?>DtL0ot-gg9QTds3(aGZ0pN%)nfC_Rsqfn^o&R3 zgOaLXJ_i)VI7<*m(W}O20l@P;Q2kK!IXK~FA3- zGRQhD%d|A>P)_vj0ju~l zdKM1m&L-!~he{baJ6BNKw)&>JW_6Aeff`GUnjii@Vh=MtnHvE$=uWkuSLiAJLp zvY1N?gBFQ2QjmgDPbUPAkv|YiL>FGJift8QrpN7 zyZ#|#ZLFR9in4xpw_%|?+vM8~`J-}@?Os5`7)-{g{!u-~@cz3a7~u-!`S`7JaO%J0 zHE>)22KgPX(UEWg$kx6=M2yp81z|dHjRs2vtX2Pa^_<_hM7p;b_tt&k6cMmIZK>A` zVxCoPZB`L1gB+B(Y50#48&S?TyHX?qZe=rc4^ALvN{SCv2h(bHM|94!$bZ)~BcR#2 z1;}P={p#^AJBz$XowF=%;m&GL@Hqc&;d9fb$fS0L$c?A-C$V=kZV7ISEe^K_GP@1BA)-6cs+A##Sn8jJnrCJ(py8G#4?a&?g0uhDIKe+o!+A4P(sRdWmb^ZcYyw8TL{SAe`j2Jz^)z$i9)cX zfgfMW?Anasa;Gf)lhp}F7Y6B<9MP$gP9`qfIa9aY`k#0MscQoyI4&OSI;82r^j!ht zP;-%_zd^uJm;xOm{@VzEM{eOLeC@cG^ik~6D`9n7X0{_@s5D2sI-y9H4BrlG_s9aw zj8}D2?EA3-k!O)T1wwT=QTN2{k=Ud3b>AQU{$4*;DiSC!SLSm~J%~E4M9eQ&fe=8RDuGBR$A|73C z!eA}8$zoZca2eZ*P;qk@A;F&mSqOJh8Pl*;uQI|=cF`2bH|N8=+JFy^)giGEB_&n! zs=cK)P-KL}OKB;Zp`g-+Q;0o(JXCt)OqwV!4+Jw|mHOto7f>7RiI zSG}skeP`v?;EjB{XndorsQi|?OOFdOcVB$33vhS566L_Dfcyxp|CQRoz5F_eIBfnC zGml+V^IBlk7`eQ>hFq^`W_SYZCF+#x$p6|7zD46H~@U&y=Tq05*pXwNhs{`{uF4`rh)2C1&}u& zoE^Ox>V7nu65CKRuA9?5AgVM9lK&;(gG0`VR?~ny09qPt^RFR*k9S{Tni~WPI+`cG zj)+IxNihMkGJ?nELicb_*6q?fdv(KFNZBBY;3x)uMFCXL{*cix@QQo6siFM)=yqo? z8$*QTfS&fQ0Ic4(VR+DXpe(rWEl-s8V!(pUjs!je5WX}I>o=iViHbH|P%!<_K!i|Y zfqCGcQUF|DUZ*d{ySa@7*o8^gU@FM1-N(7+u1uYl*Y( z5-*?o(MY4_h!AyAC6!AH(pb*F#P28bw~LcV*4SAd!4i@(y){>2`8OKi70HelX4Q5M zI*#`u8+f8fU*SBDMcsp&HdUQtwcfI_+HEJJT_*0kjfkoi3(+U?Xmq_jB4XdW!Wk3< zp5HrvyU))C#>1Y4P%9n)O6?w+e}26ozQfY^UA$=$YLa4qpc1q|qD|;aaKw{o-x|k* zfM3A8d|FQE)NZ$rw=1q1?OS{olP;LeYuOzgA6?x2e0F`NzM`Z4Vmf7Io=O%Y;6&a?hI4RoDrfcT{vMHt=A%B zy)uCDC zPILeYeILg7aRi;~>?{MPon_S7c=9%)FC{a@nKrH1#?&`KB;ZXWV$fR?xUGTAQA|#804T$pvM7B<)e@-<5Ke%Q2N9r zNpiMWR7ct6QbO-T7Tdg>X>c1JgNJ>35Hrofg{{!4FGny|)>P;_U8w~H9RkT}G4V&I zQ{r%`ntFaY1K`wu1&6NXOn4XrYvVCEu5ge7R2LRT4F{I@fB{rAo_@|Wh~9VFEj|`k zGV^!7g|EL_HMJG*cEWO{J*_AtL4Fzq1Y4!}AAYX~=#Om_>rBD7f8q~0DHu>*D0&p{ z7xfwC+%4@3x2?LyR(M3PBiahM*QoT@q5-uvbfJ$K&h@bj+vzK6`C<#vxIZyufI`au zSg_WLl76od!SU!suD^vlA#qi+f(?850mN=FZB34ks4-vqdOxf@GnPIJ^JX&N@9f@we@EBttw zZ6)0*Jyib~x*EZ)J(tCE*}z06!;8uh)t@xAUWq6DR_^Ss@#8sz86j+t%G347A^Usn z^WLo^;58#t`12@!j*zi3vQTVzeayY{s7^EBAAQ5Q!SBg+Rzx1;ZVJe>BR^_>v6+lT zc@6Wql=Q?UBUSD#s9<-gFjWV$viM7e+Y{YTOPCwIdMM zK&{E9CMJ)M#JHV`EC)t)9Ml%!LH{Fy#CkR5E+xkj3Jd1)>*v-9^>c4(W9mnbnRH58 zP42d|G9!OF+FV{>XEnVNinICF0!K*2VGT}@(Q7J;Mw4IaJtiy^`cyQk|m{FG;!|Ir^v1 zjB&H+@!QMe!{vTk`CN|n^__Jk7&jA{dxN(vX3|C#?|hLyqN6JQ6NOQJg?I7jy9tp6 zdn(rsrGwwp=@WwmgCW=zZh1-@!!~79ECRXwnlpP4&Uc3e`_ISrP(ff4t2#Oc ztq!5a=jT_WRC8AsU)pW!8}aRb0mo;!wKm4T-?C7~3{}pujTQYF#`T{&7$bu%^0P|k zJc`BT*>cG}tFGqG@f*r62wpuozy4g$vvgm|7B}crQ;0k(sLTGnApq|1Wg6`e)~jr} z_>9${p~+)o!Ca>J<<)_#gb^PI+8>#=f;WAhTEGvOEo|`MT;8M`KlD5|Yrl&Z^)Ad< z%{z-AS`#s!!;0%^UiPw&H_6-pMPqay;E4d1f*wjro2F z_@FT4G0M-1%gPqtz6RvoeCRJX)0gI7O~h0XEfLn^bO2X?>udRgyW{;_Qj$_o~jk}su@ z^9O8k8d8nqp2GaMbyFx??3QdMo0jKMV!xA%;ThyUqt&c?XE-)B2U!yssBNuXUBBi| z1Kcs~YTG#h)HU(6^1XoT#VQRh)=N>!*Xi1t@22UvjlzGH0VD8|u?{Lb+#s*24&tM$ zH$Lq1PhX`O&UuR;i+k;E-(?Av2#JjWd_!unmGer9DC>agJE~n{D7TuWQk#sD{VXRY zck=)4H}x2d`~TA)D$ok>vr)Ts@P~1PT@u{umssk##haTGA;9|RdGSh7241^r92`CG z0)3$2eu=(H{%~%t)8D(kFvaczl82w^x4AvsmjT3M5+OwOpCPLIo5IwAH6!Sx0G}A# zh=`3xP3j)l8InE^s)u1rueol&bqLzZZ~cjAd&zH2i;pBH0;VBnf>!g>xwVzd_g~f; zC3X8P2EY)$pJ>-;l%BG&9b6Vw$8Gfxy;g3X%xZWd`q-E40Y4iW#ZYDN$!hgxm=;M< zqlQn3rY#`1G%fW<1M5p$fKF~c3HaZbTyqqCpbxzVd~Ya2owsg#5;{c$$L^vYQH5gz z%p>^j3OL8=K=W>`ojS+WRq8)gTDLq}DW+x_IXP|JrIBTLJWhAm~ajN0v31rK|a{ zy15dlG;It}f39Vg%T3|c;@_FEI*j3I`Yv|CkEyyu9WN>Xi5MXN2_HW#o2Zc7BzwRT zejufT(aWpa$mr#@mSn=n1x4TQeWnPd1w(MVye_T6jV4@pm$p)?BEa$I_2%<512 z&JhLoZC<%qXxKw4fvIXla!Zf9g||ak#bTOQ+P8as`zoD{=cs5>V8+^k6zE>mO{hf# zO4nR#C1~*XwUe3V0v(#$_QOtF4)o4{(%XvhCL{Tj^}+HWB#s4(fuQI*q5LZYVQUzk zK%gvE(-(%jK(=Bh6MM#W*^?585qc;0tEsWM$7@v~21_+cv*-x85~Ly0!NcTq0OEW7 z`$(+JCdY1VK+0;XT>4pK1)PFr&L2p_4akDB?x6Sv)$U=2YSTLv=Naf8t&K~(cGC-a}uSzYnzXLSJ_@De*0xIp z)o5Lj*|;RBmOs4#R`uIS#sRJ zHl!8`g8Dth5VG4)^iBwx^oys_C<5Iu_23N{5RLUOgNOdLc}T&|xecZ%E|{g5x=89KW}qN1G2dM5PMIJ%kuq49Jx!`*Io4hsHAf zAUJpemAq;>wDAny#eZ|Nsztyd%0YBy(7CFqtRk~w)asx$V#{}ZLc`j?Y8rLDcoc4$ z`j~-?A}g{s&IrC7>z97Kbwx!gDthH5yOeDP)@bo64&1DSB$E^2SC;kL`CKI(H|ooN zEbC^JDIc7gFL@)Xr_&O+Li9yFet$inh?w@GMbLq?iprz*^(kRC`d}gVeTq zJHGbEhuGvZ)_t2S=X*404iQ+vYNFX2o5_#5`Pc4J#1P#mZzeD*vld6OLb3Y4j@y<2 z!@q{4-uDd(q$X!0-?zBxCE(nxo99uqk~R1&=|6EK5V<^_L**@C@VL4ey;AyE9b5j` z^-cnrw)XtT>y95o^iTQ4p(Y$eW*`9bXZBvhg2Jh(>)B7SS^Hsij%Yf548-?xLl*s) zme!S96F8JF^eg$n&Ue~Ytw%a13%k#IZd_IdLbC5y!e-bGTqzrMr|H=8yjGBOW+ zcxB6jOAw~*qCj=vc#H0FA*{{VRFoaR4@p(Ty>T*g_fKD~V5V;GNkk&}=Z=^JM!nM( z(!TST=27-q#UN?55Wjs=&6<>zZZj+>JpyqaY|&6>h=y3|%U4#@{#_3>l+fYcp=!|4 z=ShBJ`Sh|lEJ_^C&L7K6l3$uQTc34U-OWmNzh61fgT%xFw*T|n9xAUE?k0h@UQHZt z`A)T4Y~Cm+MbP-$s4Zl{9W?(jy%U8)F5=f-j$3_716p9#*oBRe6@&xlkFe0mnz;uN z1S0b7d;8GljjKK*2EZSJJ!Q!*?h_6tHR9hM9f0URB$W=`GX&xXU+Q>4EAdVlSuj%=q4H3V))!Y4m1)6u1FGgKS9VApuHsOOjScZ!cF= zDQ$Mmz(1EuL7ZUb(V;s}Y_5$33$uLU+$ZxJlv{W@O@R*S&;Rz$uYd+*0}r0$)I5)P zGw<2R#;G4C|hL-u2$*Z@fog9y5=>xQW?GU#mNws>{)I)!v zppDHIAGk$@bsWMs_n`V=Ki!~p&#}B13;ODU(Y^EEOhJyMg$nWDP@1F;FO(`S>m|sO zQGLFX#MYAtRi&(Mi>H{{mTHXFVV(pD%nXRd-Q>`)w;6(}v>@ zgvqq`@=L}qyk>YId()lXsB1wc`TH9UUIsR-hs;&=M%9sJgM^<-RP{FygQMWIut;>E zQ#Vv72GS({%5{mmcSRxr#(zn+8!TVqUn&OQhH_7vlF~!l`P}mt`Y4yd0D9CN|u+&d7|$Eu=Gmn@E%JZ{zDm3M*DPP)^VII;swo zON|SVm>0L^z)1a>nm}^uM?+R9dZx#Nqb&mUvB{bEIZaIpd$ zc9Yu@`N!MriM)beiNW1#(OX8v#no@JSHZ-f%fiyOrv@8c{p``3sBy>iF~cUFQ|IHL0DjmzrxhM!XMjgJSoM z@Er;760%bC*CH-){Au>$yOHw1=>LTfn{n?h=7)v{_E|`U@bYVj9+p4YewiNB&lWiB zE3Ct4`DgsbMN}{HC?J#bKAO3tFV=?&HHZ~5P%!kL+5cqxdTuU%^Aq%g)Rz%$W=RSS zib;o;R5S~XRL{RyPn8O-ndjx+{t5fTkO@rOeykq5J zbZPocc@SQRAm~vY%-k$`KkH*nZI!A-`yH!g>GMm@xh{H^y?M(+MC=sp;*VHH8Kv|d zze@vssDRd2Z`-a{Y;%{8Z({~vYT#J^Lh-j1&;TrPPKRIVO>i4N@VjSBraJAmCyZs(X}h2$zm~ygAc>Aw_KXY zcO{0d*9wd?XL=*)<5n^syN9i$Yune;biQohL69TjupSDBYyPgOEYHnSMr4tr^$D}uqR=m z*NGv*#x-%jf6n>q+!$L#x5hxBSfXP1jz~WD)MSf}4mF1iJDuZUdOf~n6R(H5wqoSR zKDEm}uF~QQ3JT2MD);9#Xcv4<9SJ>~Y52krWQ2DP)4yzk#wK%@!2u{1I-T;Ah^4FW zh;ay)_3h@C#_ArAmONN?+Db)jZ#OH??U&XT*3kF2_XGtJi&YeljQd=n+i0PcEGQ_G zkQ8Pia_bH32$IPX((UVgW#ZZ#dSOO%DyjPAg0aI1r)wEZGWm^1qWxjty;0Mo@cRip zk=lY8*EO|}eK!Xp#>P$vOuhu-&N`G!$qC2rrgYL*U*FDOHoGZx?}DZK z-g0V)nQc3OG&YOlSv=63Y~s1>hKoAGzqb}j`hje9IfOT-aFmO= zUkO}4>lLnfwqKZCRY|5QR4#w*9doK4@EXBbM?ibUrNYxC_p+^}M9du^C4HDL!?!cz z&Tk`eugbP!s?*Za>Z8g{N;+tRz208tA|F)@r`|-35tp_dzEWsw;qh8y(#(5-&sVpQ zxHGsP3{^#M)IvYFIkkXlNp~p$emJKAycwk%Z|^R}1EUP1By^D`(&UsRp)tO}P{ zHa~<_R8$X0+k>54qCSjMX^av*l<`XT*olmo-R+4AkNQ$}+GQqCax)i7lPYMUz;^78 z&|(I*>Tu=^o5!;+E736DqT(H#Kq#qAl&B<*#hNh(-xAE=Xu=Al+m^!aIrinlT}Y=jjS>sAMl1MtOp0<#Gsf*=uKpQ-#R< znr9tNYEQC#CRw=It|gaAK8*|Q%ivq^l`xo>$hvsE;<~TrGUgE8;!5h$*=slEc50`+ zk|*@5|6MNK#fLdmc?I37&3)qyMn0+Z&AI0D-K+xXD%!lSD9V~6u7E|T1)?S!n^Uo6 zmNVUJT$atDeWZ3rQ`6LcLvu+nShS5BAn(f3ex*O~l2(6;UQFng{$bOa8hw)iyny_l zrTJX)N(U)!2(xU+)5$V4wiBbyFA{b2%WZhAX0vr&&rH9Qd;C^wC$8b^7tJ z{E62|2JKZ!BZ;bE*nx-606h>XtWUU*3eoI4;6)BuRvLc|Wvc+{Ouiw%iG~tekmcjU*+vV=1(DJu= zEg}c3|5v?l`$B>~9mkvR$ZJWy0edNHme|O``O_cuR@ywuvqgY0cZ_bwfn8`NID;fz z1=bW~TQ@I12DJP^ydgz6jM&x_Y?4X#&(T%YHN=|QWTvFB31|%X^uLI-EE0?rE~1qm z+7$4CzbzF#i@`jCYEn;I!5e*IT4Op(J9xaPyawwQk+Byn?KqD7u`c{dN|VKjW<|X- zbkXpZbHS0(A7)^>a^NNZ-7Jg1>N|EyPtv^SX=ErzA<|fwocz&F#L(%JOL}8bYY2ub z$|fA_YIBjopAl#88Cagn%}k>7@=Kk~f5yj?oFdaph^DfQd{r1+hWLwh@!`KqGyqHF zL7K2Cke<5VpG8A%G%086@VweP^EUd5@ybJ!@}@w~n?+EKo$1*C$P4meS1@VYn;WyE37&Rnz>G3nZd(hBz}&kAoSa^Q#fX(K;z<}qPLxr6xOI8n;qE1PEQ1<_hKQBG zY*M?lYLQc2C{f8(5BF>fhe;&$nb(8~T|>t~y_H-(wSJYJ$(cm2g`re-bfv^~J%;wf ztCesT%+Y2PGTzTsJu>P`lRx;)lc1|t8o@1xBD9@f$wBn>+|ZGlNXOaEFE>8J!ftQV z3p4hfz0>;?>y#dk!APG`Es&NzoqxYI&I`(IxC672x^8pT?V}C@-E!BT&~&P1uDR;R z2CFc;v0aIe5p8ScnjK?&LDmpt_h)s-T4UEK?J1w#L>vZ;Z?VlJJ#{&A zm139DE5kx$*aaS*H_U*d@Mwri)KwQ@`Tfc1S~l<1-RmA8N1bK6#9V5sr&p4EaCT*F zh_Dz^li1UDMlJ=2aDnfcC>#2k5?`Y&bXYLsH-O@6&-sjBOlcSd73v>UWY5>G|1KTS z?ZAtcnLROMU4eXz*HlSQ^*%i@($defW$EC@=xJi96cXgLNON23Jw$aWh+)LC49O6W za}brE%y!qz&%_ngZ-g)9-jvF6Rua}w~*pX2=B%>W1>ra4qtaj@#LAPpW7Qr&L$l~L zN~TVKL-DqJrsXYrn0(N5SHmP8i$a^6Fbc+gwgvTE)VZl7@)G3f=>1noae%jZ$z}x(y!uRnK)I;bf1B zhx9StMGJ2*W=Vwwqf1Z zUGwYJVsPPaZNv@zbR|rL?iR!hPK~#|fi3egLl_C+yj4AL4nMGQnL@nUNY?4r0S*v* zBKSV5E6uEv?btfmkQ{BnEwk6w0#yC6Y=vX%z0K|t<1q}Fp~717C_s=YiBVV->TTgU zO9-*QyZ^e{+_L40sv!mL0#&Fs_J{u4wk#%HiEGTt+-?85eVte$u%ff7s#jMki3 zpO0phU)!e=i7f-c#LZ-e`Udjy14@vGWF^>K$VDm*$t1BzcNqm#2F` zLBz7p>IEYf_`a*tw{EY6qc*jiTWDwWu}B=IO_2Hva_v?x-keaWaG!fZ+RkI?%2sHc zg1w=kVdjS~g67d2FN`^sarWIcD;c$sG7tMLi-jZy z`XS;)A9a-%5G_oV8XGCTW;vs18%L%7PG~J|GCBYzr#o+n>sGUsy=-L0-Gz?mXy3}< z*(dV}hu1P{pGFX}+pv>+Kk&@T{6eYIb2c&NB+lGkq z{K{|;ck!A@t!R(pgkUlabRkC)+vl80HRQ=h#M_;8GS%RatBXX<&Y@?+jPq}%sk5?N zk$kR4CHGm#?v}f^!!{{+^Y(+w=w0^m@@^ZYfYfEDcrejHR@%hGjdk40Z&@8%XXi zplLZYs;O){^EGH`KK;VH00&%_fij65MZRsS_oXe0&9bo?unTyjdyUqnjf2Y)DV^dgGGT3ViP$2yi7?jngXm{L%3Tgle(Zw~VJ)6q)x$Mhc z4q+C!+&>qJ!pp5&Hb#guReTbAUbgiWh=0W2n&;}7wbDPE9y5D>KC(u2!MWRrl2JrU zd=uT*u~oiXj@tWSa$;qHoclheTmL%V(nN0{w%-57(rAhjdFX&&k$_j+Z^wYQDEE35#*0KdIuW8TobA1Y(T>>4E zUk|CXJ^J}Ey!A-k4`gOdfA-a$tc@Cw|Auy$@96c5Svd2%>cX^z$N8y%^{ z(5EilB6zENEs~sZ#kXor$i$oJZ_L&5lWkUka?Y)w=g_HsGE7B8 znv@W#tJ&eILsIRYVfR@a3+Wphm|`3V_I(@xl9oQz?9VJLI>@RC`wZ3AxA166ix(#8 zH}vj3^jZo@7+A$yV~aFC(ZwfHJWH~&P7*;4iBMu6^vvQoIgKm28UIvt=8ajH3~X(| z+b8x9>(hPT%=G7TD>zvgk*{^@3CCzow7Zs4U$seVWwni+1dGy8rYc(2^d_w6Lv_U>T4JSk*L!t=;7qgFzD-m{Q9xkjqyRGn|q zEX3}&nvjwv7}ar|0$l_j5q4b21ye`_n%L2IRcgb1=$+lA^6eZ;+k&`+gb`oeG_bU% zO|YvluZC^QH^E1wB_39lZYoDG&F%8$szkG*Sh(|sbSIIfX=ir6K>AoC>gP#V&&+nu+- zt>>1dzj|G`RE$-1S(5a30>-_2hxk!St;9$u;eOvbiR5=7N= z-uxS}-Q_Lv#>!_UXUG=_))HK=!JxHM*Sks7R&H^%oc?*17 zvvHf+rIn%(0F38$v=LuuL{dg-%uG{VwJon3szRPr5M$CS|6FrojF$0I1|}3@7IoO% zoH!!NAv6d-yj(Wk2aeAdG;+9pBB|al5f+-OmS0ySAHw5tzvLeg{6rL=j``?+y zEtmg{?H?#w_Zp#nRigdDs@jcN1Dmjy+PZYmgDX~v47FPL<2saB3dn1%&&7q9Nm~m@ z%4EAw?m=sL+%#25B0p&qL_b`O7vn#l?2$R=c-$RZQreGm#0ilA;29=l8NQK}ai-|A z!%mT4cG)LKPmo)arV#8j$6+;)HG(jtJIzAq&inWS`(i$f_8z9Z%^9eC-ZxY{n`tIj zn%{=4v&x0|d$DY-SO+~4#y6UA0_P)pxf{r<-8qsogh<{PNJP2Jv>U@9qj5?k+H}W0 zB)|lnz%KH@i^z=idV0sO+3Jan`S;0%i+>g+l5Was;HWJcin3*VPMcjw7 zL&fGu$xMyctHjB^-7!S1y=#Z|Tb-TlxEk~F!s3?M05xtMYh8B8&^e_Z1{Dn$cX!VN z;x)OiNyxO^o&%gYP2%)is`k2wb<(yHW>oj1kpZW-~=SB3xX>rj14YYAzb8{8q0mNb02 z`~(Mo^G{3dCxIybxeMQ71BRa)+b84vXTrI!ITN`) zHA^ZVT;w7&)6LtQ_qMJ3JR23J4b%?DZDXaxFzKx}X01%|mpzLtGroii${bmLk(Tsv zOxEeV<=R9j$)CO^tNBJ)MQ*uEHez=!F*b$^5v9UEvk$&yw7KyW&oJA>flk z?~|JK0}K`#idt6qtQ`>=lIgybR%q?|yst;~krYdbKga>C3eB#vitdQsGKPeLW2c2n zlQw+U|B&8s;ET*kn-!BY_*l{5iRQbY=*I-Q=tC;+7GJ2Qv5nH*#;`VY*(ml58S4Dt z%23I*!tPNj5i}!m-QAlWcunM!*5zV%$$!knG&Oji;Ikk6Ll%Z(jv!?Kfi|ehwC31Z z9WID&cpI~uRE)iJZtY_pDoLD=Tn{W6L7|vpIe|A*JZ8=RJ-DNxWv$)Z=6I4PR4V>D zzi{+b!^&EF{v`6I^Y(;Np zXXm{OvoLqyco-s`go&Ho8eKAo7jbi9qKK9ESS((WP!{1?zn;D**bq&p-|QnHpeggD zbKAvjz0Cv6EbKl8Thc%KXXfpCpxN#!_$cIqBXurZDNrbkHn)w;Dzd1(&Euo@39hOi zk(ldU0HLZWUFqOnUf{1eo=SFCG;)L7qDd%pZ@=n0>1#r>q~i51XQTd%9{d;Oj*fuF zoP5~M@yp8_9&kjeLH*4jetE8)c~@WVIACqDJ;Xo~)AMtb%l`;QNV=BJ+`}{-Qy{^SV`d{LeR}>`&)OIK7^St1JqNMlnCno|T@`sA|MZ^wbrYpTZEN?9 z$}u*6OmADErB>|~V;xDB0{PcTJG9QumgC=lBOdqB=$9g0rx~9lw~JHRaub!!yAKn% z@twPs1GTr^uodzctVbt>F<}vk5(m}>C^Ea#W=k>-#1hp_u>iqNmD}I3)Md-1{0$BX zYVvzrcdC$sI#%4jJ>(UwT+BGQFc(9wI!)`FJ-s}C9U{d?rAuX4gSC9x(WX6ise*Vy z!nU6Xuenvco%gb~={OC%1o+IX$L(E0A`Gg?uho|yq>IiRVp-q1&Qm1X5hHHy^16V; z73QU*b1_}kebBmuN_;$?ekDeFDbj%T*tb5_M>G6qDb(?7vVHLlwg{c_FCDlJemBbx zCWGC?@xG1-FB{xyiM~L=?pH&a6<0^jhrT#BzU6zZ)ODiQqIhUo&*~9`Slk?TMvDc6 z#D~#-EDOfQn#AV6mF&!n?tnACp>%NJbG>Dtq?F$JOx7}w0)GisB+!zscap|g25{$I zfC%QP7dc?FZ6P~WV77D73p9&cn zeX>_;|L}>@-viH4U+|d25!4ltHf`vE#`B{%j-11S=F4leKre^&zMeiE)v05dl+x8* zFZegkY*8~ zdG}GlZp`DY;BhZ+M{j)asn@KDvtxe-_}BNHM0X9#5||--pGuTIsn)0Go&sW;AC})7 z(c$7R>8I$W3~*oEHMtdY^a`8ny<8`^;9s6DbzkCs#f_gM%eZTLyp{Cq`U>@!$5Y%2 zO^TGByt;lVUhRfH6hpcx!+Io53?V5@8u%+l~%c2$x#qg=nSRX zbs%%daSK|9y!;S{r&iGhgcrH)m(pW2hsUHy{=}=E+4c&nmHkACJVy&t#ma%0azgPi zjBL!se2Yb0@JM8Elfj&!x#fQ^(G+a06c zoEw?|&8!W5jP&7n^rj~8N#!Y{(YMK^!x>&K5A)4sg#PBlh$yojYKgGth`z_G<=>f` zk}F%g6cZZgsAdPNXKuo$MXg#k^LNi@D0Wa6WXyXm#5AM0IrYzi(aI5d%6ra5m!Z-oU-p zrdGuI5*`)_l{w0jBfxBpN0sFz1<^OS<1)|c_DB7a&riyRRG9Um(!sp1qA_o0osz|` z!LPoCUtOapmEpRUiX?Jr^;0uU?AyDy9GF926|HXR(+@*{YXNZm1PT^d?aYZ#?3=tS z!JYS;IX#l*kgY(6xAJLTxn(2tDSFUOJGFgHF0?=Y%6UxRt*6#Q8nU1!uKS7^de(PK zR?^OWZp81HY;&~WFb!`xf1?!(7*pRc+)PmOwbj$$!t0B#ov z!f=UI>Rl+yF_pH8D};P7!c$44N3tuxnneN5YRoImUEO*o&(LU}nOpgTWUwN%p&;4l zNEt0dv+l&Mm~uCWs>d`ji*Qty^M(F^=clc`mW-pWTxr#S|1qB_J#ju%RJvg3d}!UM zF$^0$hd%42qQ7t8Di5BUj3KOXAY=*^DY zI1xtsGT?nFJ@ms2h}&}Kn%73Z&{O^UP;P!V(MIEy)I^87>L==oS+O6HkE@=7NmdX% z@cSPhU@B!6*L~c2>CQRtBT@!69VcNfWi==h9|O(eZRMu^W%76PHr{FHW#uM$Xu=C6 z>B;<7@de!Pv(Mfq*bo0FfFqoVX?Ozp32*w=H43*zN|rRQwUSX+_jczB>HWj=QgjJ0 z`ZAZ*xoO^3Sxl5N`F{LVxtmlXy;pD71HuvAY%xs=0dRNbgR(6V4s_Yv8Wb>Zi_oI; z(;YRZEpVm!g~Y3O3*ia0cLYzRAUkTNnV7lG;y0{``Gesuz{)8HM@*h9oTK^nXZPPX zlkLRl0ZD<~7a$dR$nHd}FF#2SO!bH3jzz>0{q^zNSd<*FETkGW`PrQf+KP!SFWQz9 z{R;nkdq#w?PqQWUP2YGBx1JDtRYFbIti6RP&UFmS#Lfp>a{|5{*X8C=K6}JAiOYP? zS@iWfXOVp^V~3(TZR~@%pXh$y<8a9mFDXdNVwPG@hXz2@Zot(&~Jr zJsRLSTM5b#)uqP((UQYc!BQAo$Whm0W}AN^&I?6LX7wL1&1&lENln@18)C-v{wApd~p8Iy=&3XQV7> z>3A`r)Y`?F7^!B)P3wZpnAok*S76NTlzXr&s+Sj-5^HaG_ zp71pj4wAAgJba7jqVrbQ!H`gD7Qe z?^jHd3Q!X+`E~&fR0DBo-YbFoei`=%srLr@MU$(;6@r2a%fsA6p|H>oMx+f}oyF?U z)_o}++TD!sM!3vX%%jZ?Hf|&OIEQK(OevI6)Gt8ovOwh441o)GQ&n{rqGB;hQULfq zQMu~5gaS$J`NFm2l#HXMQIOU`tbGj16197Rq;@`{PahecCCluF_G{>xASv7~5xcAu zp)HaLdBl*n6K9Qb;g<#cZ4v6-u`&{{8ay5$L5wY*?;wR(G-+_L%OZbZHzZrPjNAZk z$pV4zein#TiDRU;q_q6@_O*5dQ$Cc`(O1Vu>wbK%u?t{&N zQqSdKeimgu?QQyh*UOC0S2x+o99xgA*Q39q;FX@?TK>eA8S~p;TiA(=c(5-6!b&*c zq^cWMe77m!w!>K4csi1vHNDeu<4otuH-JG6l7)0Tc0`t~CuM=}D1b`urHB15a?CYl z(Kjb0NGj0ws2nwie{^ikHxZ;nAtwOK%uLeC6C9-h_b97!#<#@eZUtAAPm|g@)<}eEUw2|xhI@}6EYhkqbJ*Pb4Oq?n21y7^EMK@I>y(AGR1N) z6xs-381Y}plkM=UA({k!YORG0HS|P%V?ApL8A`Rz6C4oBbeNsa}BOsN^oCKHm zO>zTVp=o>3tUu=B8$9t>=p7<>o^r2D>~(Z?Xh=45bnO`Qj6KB&3|PRe$%j~#)W_Vuft!6Q6xUAAZA{&KSj%x zek>nZW|@MV6=k=xz6&zTb4`Y+GBddswIn#NRq)l_fv5?FSk=Z|^53!sgPC@PXQIMe zW4$j@R^~^vmA`-orwqIJFipQ{g;3IwvDSG>b%;i9-CK$%d(A)H$c&@K{2< zNC1RLiE^2l8MZ&o&5scz5CKg%x4tpkbXVi>7x%-01u{-IaL1v3w6{pCHL1HS-||wW zjEXZIDwhzB#9#NEYYo-?6^F*fo?anIE}uc;VoS*)QaYxVRuGnZJe&Rx%Y$o-j4zVi zd9I!_HZiZWbSp7PNVr66(NRTCg5^&3Jafk9W~VZ4xmDyT83w0HgX}H|Hg}H`srXEL z2~i_ukP1J2s(%lgpmVflXR$9N^SF@+#jI4jt3p%8+W-T77wxrb5|v}wy}X(+xZE+m z9qdbj{yL33urr-9pxV~8$SFmM3LO5{Rm*(&6iA<6fMVk&X#w=nFu%_1=dY&HbI3WX z-NFST?L~c&Gx6ZU;uE`~b(!nDA%Nzyzcyx4wisJK;b`G7%EB<)OTr!{PhOBqlx5-w^vGSF)LrlT4-CKBi z8K>tQIz4O0ee%1h89q28Y7SyeA_ga7dxV_nb9`%8NHI`aC~IheO!1-#WU)4lalVja zJ&oS7#(b~-g`!PWZfH!`4t&mxGZcFu*LNtKgB*V=`-4E~;^8Ir{AxJ?N2#s&f|H`b zb#kS8Jn|zO(sBh+DxX*h|AR&pw=aIUp3l&!(v3$!)_Hy=?4*Oj`TEIApcOWi8MY5k z|LPf+H@5&5J5yJBBxhCD{k#pc8XI~W2p`-|X68zR-Nw7=TjlW6lapt_z!gd4AK|l4 zadS6f@~C6brsUo;E!$>8eU7CaPBXy+h*l8lJ82e37Y_E-4>9&MCiXcHS>#{-W}9>> zL8PZ~%6%8}>zy=8HA{ZnYfFbiM^9`YbgbY_R`Rv4=4(lYV~!>t4XgRbITr$|zn z{+cI%69Con2uNyUU5@KHrXG}G8IQq1Hth<~by)w!6-e7+3Gj$FR6a@b+Betv60|fm z83lIz0>szmsoAY9k*4oj+ce5^6&S;JDi;yR6Lc;sU7y&nCl>&JWs?W}f>$ogBCLF~ zSo}%s2{beedAT%O_N%vC1_-~;#BuN5X&f<0BIxIh!LVmpgp5{4-O!S%@bdo<0bw0RwenDL>RbA0~`MVXG z0p#_bY1diKN-9K;e)J|=Rub?VKqm%hM@$z{K_C5%AfmMRWvmrKalI^sXc;)rWA*;R1|JMt4hLyewYamb0%Z@G$0LU=6>+yZoo2soK%;*ESRpDEy!B+hF&1F zTW{d0*)1iq!$4nVbzLVX`|VG_VrrLIm@y%8Yw<>I!MGk{$wNOw#dQ3W_?gdI{eW z>bLD3dI53k?S&YAFqIyImp?_lR=&2ma2}p$!|^Pmg+r8geO*)A^5H3e!*(aS*luCd zPY*i%Uxw(w+OH4?j@}*7uW>25>)gY$fNx~ABEznn&M18uOS z*-;;YYO-`c!JQEjR)c)f5IWicB%lj?-))bOjJ}9hg8o`+RAd~SoiM2+nZ2WKr;NIk z{6QJ%GJMy{_ppPrtmv=r_x0|Bu8A7NxCUDaPk6upNNnLuYlm3+V8|t7tucp?J*vQ@ zL2V2e1a^oFd#UjHlUdkJr!JN)>i%~AM=OTDz$WdR%@c3a`sZAx?E2>wdz?kbjVR~7 zQ&4%UE~7pi=58hj8b{+347Ln=ZA#3*4_7ENIuqV-nU@b<53S|6ej*6!-J&O?fY)b) za)YdmiVr>Wf2*3iuB5=f-@LwXF(BkH_{IqC1HSi;(wAL#fckyBtmq&#{T$Hb+!rWs zYcqyz7VA_x)2l{8f+!MXL^5Fg=Pq)1##5_67ab$a&4VyEc=fC$p@%Q@`guxDl*&Vb zS<;P${p9d?3T|D<{|%%xmU>F$y9hM_An>0XVaB(i=h40Tda;8*6wis)Y~XhpD!kuU zD7h>~_J<`Vn0@CeG9ty%4(^`vJx41puSevLN zByt~CDfo16VJx+@Sau`n%t1>cO~r=@}$Y_3V)oF(MSO6+)nFCB)J z_GwV{a1)4VwgQXQKx^)hA*r){hylGitIB)XhKh~v4|2>fid8#X z;XqXw0+M)L0Fpo0WHQHUGgz-^cBI@h2(h45iDjV+=VWK@^4_U(5p@?_=|4LZ2rS0N zVqi_2=Pbxvt7$73o%AJUI*mCDG(p!>->OVtE%264W|!rC$>r)(I!Hr~64Ro!$>N2< z_s7e&%H5OaOfv6zcTltp5&(vsI`OZay2|L%QgtrQA6$Nm$mp=o8^!Wt2+ILrluyFv z2XOMkDA>UMJ}Fmi;r)8uHEUoc5ck@FZ)%WGlA~bitM`h6saWdP-5sa|a`!DbBeCK^z5pIe^U6}R03vr;rN=e$4Xy+5RGJ3f{%*bgP1UC8|iZh^nChctZ zXU=@%vCLv8yK`$n{k97#+3Os7MNlyNe);_g2UR(qfhKhr5XHX^XbGxClcIH1b#{3V zGW^1gT3l`F`Y@I^f0@Tz3Gy=O^itf&K#^w&7Q1C{Z z>~S~VH2}ZnrIMO)^ndGxs2YGKqVTJO-#oio{){gJR?fIJZ5Q+j-Eq2db4r|QYZYo3 z_A5sDaZ~2HGu(2lkjPZ^=|~cLlhr3?zlF~!BQD#EB;-t94l!C%j&@^FOA0!ETq#Qx zuL;hIOBEXl3hu?L(WS;#>g05m&|SVA{4NGsH>VOtmoh3Bjbrc$$qsr`ZQEtD-A&=) z_u9=(gY&OxurFoy4Z<%y&SDB~GOk(XYH>OYA9B+Tz}*s+b;DI=}dKq<;7EnUYcn z=22EcSWE;>G}}`Psy-aEif9B0&tm|le}fVQONF()?m(>}0O(uv3$A%aG`oGU3if`z z_*qchhU&HL&8tF~bbf3J{m{kC-)4USN(=ItE!(DMamV4LH3cN?rZ||D@AhBtnyfAu z4yg{ecI!f=JE?iEg%N!?GF}tXrRLWB8g`Sy0qx!(D)Bjy;C3Z|O8ApWCi?U_3){U#RNyFdLHe`5^wS~E5Y5b3J@ny#m zTrXCTSz>3Rjo^6;!mrKe=<+$a4zKcbp{piqCABbXWzyHHi^64DZZ+J+b3EKI+}763 ztuZXF>soCnK0q)Qajv+IvCyHB(6)V@a~~V@_yD$Vd|?&>paQ(u{|B?%9*6H|NUng(vb#tOeW&XHan#29cj_2JGR??&e6ImmhLr5P6{vGz5vP z97Ti31@H_gJ_7YNf^D?aGaGjk;y7k#g1FvgRB}ygUSOESy$b=nl6eQdMOgvF8UC6F zFwQ`AGiYms{zl=QAC(eEeY%?Cp$b%KuPWR>(mwXoibSho!c@F@xs|bl)akJKbOC;6 z1gXiX_;-qI1My4;>T{Vc^NmSEuEZ#t-klD&$ox2yul*ttMe4V6v&VL?08!(HnLa5i z`;6bqu5zQB7cGmHDh9JzCz)c?5cr8X^a6P>m}9!@dgzJ9CxAK!@BB|y0ntK==*q!$ zWzgK1uToKBGDg(CFO37eZg54NGxLzarR%Tdj&?Oj_~k-O$CeoB`fK1;kK==vJ)SWN z9saw8>KKj3pMH=k{DMCa>&YAa$zp;HL=j^bOV`!+J~yQtE}WbHnAd=n2Om{0R+_}R z>_#Uw-Sb1JFsZ<0&SZuh2{h+_JOqZ}B19TMYC1o*TKW!jSBSp4W@<_5>p>)wchWw? z8Uro^CW9+NQB!%#uN{7L|MC=~wC1vh1EjO?0y8-~*22$O`z|j*YvH+!JByiMc&^=4 z)p6*X670z+-3;^KXUG3fdv6{OW&8IJk2aT5t_y{PN+q%{AK%V&Lm-p2=)gB`z#0GwCDyKh#2tTxaAq|izNIy9hA=6COcB_V9<=C>Ic z62QX^H^5-(OOrk(&iVlG{4|c~vX8V{4r)@4rt_*;GM?2u2DK<(FmY1TC9PFi3;af< zRe23beU_e7?e+BfuiI8ZTCu}mhjg+K202-M#bNmoRx&8yfbcN1Lk}IIva@s#klZ4y6gM4f&a)^(O3M zusz1WHe4v?Hh*cKB@&~`0QsByUH$X3mJm{m)i}iIkX7V7kn2&ms9jHk=eGvP{7piD{Mlo63969N3g zpP-ynCkvpE`c!*>1rshL3=7Wha6r4|-_7O`Lnd$2M=u0R+LP02q>B{ z&jH!%^(K4$Ea=UdL|T>++aj+a*bKaDfOEy=DbRD{8E|vB6wh%H2Qd1ec0$=MbZdNT zTT!u$MUNZSL%ctAJTndK@HT3VXsRD0mc{JMe-1t5ZR!#T>No)6{s)wqt*@_N28Aeb z0yR_FIgm#Lg@XQRbSm{)dyM8W{4E!ax5t4P`Fhx;IZa>hWR-9IoKHNT(SqDkfx9!KAEIsj$%SiR&G;qdFC}bWN+)KB`b{n9wiuSBN@Ie zp^VBUG%4|>ig+7HEqD@od<4A>@;(3sX}g*T06&l~2BgQv&v;p(*>fN023tFf5-Msy zIpE}A+n2#bARk{3rUSU}P3ke3O2te?=e! zk2V29-iQ*4(LGAuP^s*S#KTde3cqU(s(H6T;I+O;obUFH$$;m=+o42D|Kbq*8Gdbf z`uCdz|G2~&z zQcjBm)#?bLB_lu?TA3e!DO{F2K<-gzemxWa1=z_pdj|r#K;|H0F6hGO1-V@Ri{qXS z2}YBnT$UA_cuKA$xaG?FRqqUK3X~lwPODMh@1N61p z$Vl48ZO=mVs4x#uXx~IDyfxPw|5C1J*vK^CBSfB|*rK|dl$UZs3yk-##){icf}-i4 zkfZ#Ruk{(I9d9pna>ZiX$AIwoeI0CK9qkKZ6~I9kx+LKY%57yK=qE_OPR}hdN{W5# zre1LTUc0ak7I9%T6fS_Yrs&s`fRRS*;Z*nL%_cy@Y)CQIIe@AUI{SuGK0MP)WP_E1 z1FA&{_vB&QX~M8r`)|(=%R%L)%b*|-7#pwFt3z3S^5frS?=!ekrSmqjI4s*MG~`YL zumgmcm>l$CfGE*F%4E*J0@}5@bmDpGEynvh2@0YLc~{t|Jw4S9gui1BN0p$M!+{sh zj+TK-hk;h#y)g(c4?@A9#&So;4FUfBE~H={94amzaU|u z;3`X&RlYL}0O}lAEuK)B9A_w)zFPnbf9X7A-E2JOXecW{bk3Os#To1!feq-uoQsix z7`4HXqSSh;oD}Hvsb5Xv9;7No(!VeN%o*P^)CXnKpr{U1X$KfjSrK~Z(%@4pU1$ib zBjDtZuE>~QyJ8wpkp58|4B(k}8*AdbBx`ZXf}mNc2jl&9FbZdiiwQVz^iRPKbWPvj z-gdzD4Adf!tLrV;;{ar4Jm~3T{Mwf(#UH9blrLy?>;hDwqtFf3d87wa_FxP2?SUlk z;|<{Kq~?%eP}N2!%~4cVR+&$rbHnM7Q4LV}uoo4bF-IC`AjcV=;;DNDnR}p3z(@!t z`b|eD?B|gANF*h$UWGxq;Qq657`8HAIj3-|1;~WumAo%oQ7azd*-8AdO~6IaPlq@I zWPfq)rMA(WGeNkr{-I1p}G|kC>BJ1LJjb}!T67^MMw%QKW`9*`DvvCchZ$?RMhFPH0_#ccSm4%~f zACYwI#aBD|uM?i-MSk97Ub<9_S2Kg?QU~UX=ZW&~6hk$YSn{68a z`Hg}!2z_K_A%JKrGYqKq*ilNj&`<(|>P1g_B1>8wTo7&^Eu92q2elml0nL7Vn6H64 z4d@(iO#?XPKbS-En32RcRd_qVz&HnnCvbYICg;)kH9%-`0`CD4nsj8ng<=P*P;$;g zil8w7Ru7K@ltL`uS#10SDk2K)>4B26kg^%twvt!rG2=Y z0C+7y;C=23pr!XC-)lIy)&LLm&A15SK!ix3c z&x`QDV`18PJuEhrD!_+v6b;J!*7x%Sa3e?Os-BtZoK8@ys_~+_w1vx*I(bVbz>o3V zAxk_QG9E5dRA2xyiMgi)9|+e7BKT8vK3ulESQi=iDrw@asCg(S!Y<;Eo%TeXrorWjU%Yk#4cDHFR_0>y|R)jr)DtS~| zL9j1TmYP9k*h7$&otM}DZBd+FdCp7TN<+dJW&QK{$K|JE-%kT zn&p;SH)`iciZ6K*1wtb36R~7=!@VNj`<^^dtLDKs0@{wuD=gX$ebo_w^J39nXu1wcWV zI?h(>=C)c4C}gJGBIkj~_3 zvj72T#g;6%)H`z{^H>hI%mWXrlGjDZQ;h!|RS{_rcWN#w7XyAyiXRhb^b^iyi+<_s zu;+Fqq$iM{!xPRPe13_wGPz&6fyh>L!~=%(rt?{5znDc{J^BtKxJPO=j2*@ijfFNnVPh`&(m-&V=3~k zx=qmFv%z8~&<$8Xd9>WPw2S|&=ClegAdexcPGDi_SD$!xfIu1^I<=f-BeJu?|3_Ma zmcGdbV6IVbgXoT#ryuZD>Z&_6bhQ}MgqUIG5~ht@vQ%Bs4ib{zJF=6)4y-V;_s?iJJNJ0uX0*pXj_#Li~*I|bLy#4 zy>knHdjyZpD}bB>v^`v|d(Z^5Nt1|~W&E%&kSrUj>D6`UCDvXzdx0oY+;v&N0g@l! zphVVBLP3_k-QFRyS|clJE*?l)~a-*LA&_chGcl zW2ojKuJxxU(|yCqVPnr zzJWq5)?~9_zYm3Uqw-4vM|$qJosPu@bb(Y6 zJZL^0BGLQ^yqDj@1LJpqrmOC{!z1Q!`EEOB$B{)qI-2Q+`rDRz^_G=bE}QvG0;M`h zSda!%P1~@vUO7Q_efUX0vSkwrRZo5@S+0jpPFQaz<)BRVMti{q*~lBM=`+Z|!}kB@ zIeo17LDiuO6b*s3Ie{$rN05^rWD!>YToqfD7tR^|6%y?NBj9NF_m(vlf0M*O_- zzv0Qz);#e0^^QX2h%niopya*!?qnA@W?|#!)sSrpJIf33JNN%4!D)qtg8x7WPT>5% zWvc0@`X^J(tOiV?J6cpnURyqBb@_ivBfn%f-0Nu*Hjc)Qn8Fd(c z33!CqDX?-_&CMHHM78;c0L+DZ<24loA+xsbB7nUeY9&u99gTHrL~Jljuzo0e*&Z5- z&=i28*m5O_*8`9^(SJ|ES$Sx!SoN!d8Cri1h$XPd5QA?LOh;C(olJ)aa0Wrb__w?e z9bgTj?f)W91KgGW8NZ>$AU}4EMEg{<=jP$n>@Iq}RP%OPtOwM5 z;rF^w?Y8?Pf4!qW3!%bK2^kaztTy~+M&we*4(%BLOV=S%XTIrS*6_%wx#B>+AU_ib z6S~-^(|{ZOlI;40F6H`V4%qA;<1L?5H^SSh&o#__QX_wP95-^B-WI zd9;5_U;Ga=wH2bPI$Ho@98;Or zzVtA`utk1;zd)|wrWZ5Lgx2JELBe#KAY2r@BUvOO^29DL);kJbRg!DdK%U|p|9E$( zAu%HJve%k|ru%KzlON4Q%|!YAUQ*ivw#9GoHNZqe0bWD5w2B-em}dANS75F?qlx!^ z_9AKDR9piQoEa2l!8f#zGGiG?@(8oM0W+^>I%|3Br=3g0y`K5*yoNOMk#@bv#K9;U zXTdHKw!f?e`RK=6B5Dp2qlS{0KQMoQhL>h0DM9U{gJW%mf4YRFd5%q@KyhEM zow@YGFGf53ew4$Xf#P74*AUmRpW3$1(C~jukpYZXJxQ7?pLdL|mK%I2OKEs1Qx&Fb zX%XjF6NYw)7w@zMMk(kj8urN&y1BUBsgKB5m9On0E8#>+V)aD z(c(yyup3i1aMp!fM+Ag?se)v^<+anzuE5Xv`CwA~wkBhNIbJlHn(wO{zE|z|Fk(7w z;@KM<>KOpv1r+PA3|@Yv0iQ@6PftVR)>VA)t@Y=0C7zlQ4^amWeef{1OIUQ8@_{AB zxo2busmF7XyjNa?NrQ)js^iL2A!+uk8g&2hE{rOTZGikoTyc|M?to*R*_W3!O z{n*ZYW_8Du_2=p29phEN*_ylAkXD#WXGD+l|Ixrz&8uTUzqF`>-Daqc`2$)2VDp}1 z$&QbJ=LNp}{lTW0MX;k}`Te&i8d!LHRu0gxu93wJRx6-7!~HIu`D6|``w)O&fnr-6 zQe&>BypGGst(YqM6Zc7oY4=j4K-r&IyO0?~A?ekUmT@v)?~xog^PkB5OLks`%m#ZE z#S*};z4$yt;6Z^WEnAY5j(L+c2kwBU!WYjo1`y(wCHgM3b6a97=x zpa7aq19tRuv!ERB<*2F^&-l~5Uo$C|8ieNu){7A!j0j7*P80!_tQOc>^d^XLZI_jA zPSslOpf5PJp>w4w;MTjMn$^o%wHgmeItJxOfp1RYKhLV5gO-rh80!|W;O(6yYkYE( z4Bh|2uLK~pQHlx;j5olFy^s>%!xH^_f=BHyVH}1@RUH^D|+^i78)>o zm6V$e->AKPUHl{|_|xGjdz^iRSj5b;5@kU(^jhKaJI`|X*{gctx`i$?-f*3uwKpwu zC@}O^N6XGGB5=8XU6CLlM$n{65N!#BL=Bkc1Ha1TWC6JUWwKAukl1UfZS7?#^lVUM zf1g#W09Yd9fD4)^=!z_qOA?`>?8C*IojG zx!x~zkTn499lzMHq?3V&lD89QoScH)8Iq9C?iRI58_y$9;oOzWv&SCJw(XH`_8DGY zS^iRkP~=k=Y;?9%p(eY}J(KaCu|C^LeA|Kj+RQ-8;k$Y@w)Jn1$nh+T1U=j8=KXu! zg~Fj^5*P+8Rvlf+$av6^UQY&^A92&YITgMZ;~q5B07>8bH1WY8U*aem^lU51t>xuY zzVvhz@7eUh#WI3HxE!DPbB;W4!h3ODMa_uwo2f4Y%6!G71vT`5(pVg2;iJr|xgzsj zX$dYXg)X2_c0d{NvugZKK+aq^JwcWpcPC)M&ixLCx_KhiF~o6;Xyn4M9~Uf~^VckC ztzc7uG(j-0jtb?G+Cp%VWN<76O#ATGuSeRYoJ=(4i6YRJ`ninL8_JD2<=UOQDpNM; znRBE*#6-CP+K}CGdTi*x2Cm~@T^W-rD(-K~aMrr_(2r4Ns>(7C+p>wdPbhJyuLEYw z71ZdGwQ+-*VbTeEktIupz1E*HB!fpg%L#jb?ETa@TIn;q86b3^9SeiGoh9fe?Nf@E ze#ArG7tTfJ&j%%=Mh;wh&KZbKuu{b$rk_=3XH{hH?}+_uCIw$x5y1G_HTcMbDnPbk zIitP$rY@R7ZS8u#Lvtzi^(m(T=V`xXYI|v9 z&&r8~dOpbIZ>i*caY3t+E8sf&`BtT$J;dCJhTBMl5_k($O^Gw&CEe&$vVbPEiauFS!I>+NsP5wK^CQvwYBwcY|{3de{E}_joR{Fq-N|a zMrTWxzkPSSXK|$(#RP?@(|6@A=jZm1o&Yhx6sE@RTg@{&j*jhhe-2jJ;|0bc0)k9~ zhy>S%3w9-{lShp2B2;(vy6?gd3Q$!~Z=1#R$d0mu|6`7HUNhHM>n8%MXlF#}y zfbS$*SzJXcRLMu^Eq5EQbq|{@vPU->%mG8zB_NLQt4=2 zNpGSmG%znkOTD-2?u=|db>SGkMd>qmeuEzwl7-uU%fj^{x*f=e^H6wo8xGP8BoUWz zERNjNnv|9&x`79W`Fc6-V(AkGzv=4?SqhDE_fR0}V z>@E)@%Q*@%q53I67^qplenV>4|I1aike4u}#^FF$Dt!i@*DQ1|$tZdy(ZSrWXOi(Q)sR zRCBC?w#SPM7pR6dCA6(!Hpk&?}!p?^OPGLC@wx#-}S2WqClIZY4wl`>X}FkDWnGf_oo zRCgJ&|6sKzaW6$`jglDpL?0*Zlmn)2kC>=iM) z5qMNns18(X`J&nAzY4Kn`-!V_OP#`SHKK>O;c*+rRH3vF(46-t9~Zhl-i*VXl`Ai) z^{zAztlh=G@Ap)NDz8T__&15mYOZu0V^yOIu`}uQn(WO+wbc?UGD>JPm^@JWnL!=F z3HEwrW{3rikE;|B>2_vfTl=AH`}&5_2z?3u<)LRyVzT~dn76ZJc9z%tAk+BM;>QPi zY@AZRjb+j1chGRcnyzgxAv1?HIze>*u(KXB-*aSAWtS@gU_-Xy=A>IQd%d3iUNao0QhAc|yL`rQXI?-%HQd0(A@)wF%2HhS}hul5qa4%fV|PpgOu1r+gx82OvaG%FAQCk_v5GxAXrI=7WSEQ4TEJ|Kd2q$nqPf zh}XU+TqE!oi9Rzl9tF0-K=SmmKEcDX?L%^P&^Wv@#v~I60YcLCk=03LjkP?^;xPvd%w&6t*Uns0{JNSGTx((z^dgrcY&>BthPkyOmU_#yq`Bu zW0gJ!OdyM%d3#HCpFlCn-CWVyZGVflF%<$jWfL${SqB0fG8Jazz^rEP)NDKZ++es$ z6BhcwayS!bUwVFLj`b1cySw7Ql+`$z>ZKJ@)xvmBU-(gwd%4-cYv`(b5CPM(;=lU+ zLg(;&p~8&V2Ziz1p(?Is2p72h5RZ-;bpfbt`k>&;0XuLWK+`kFx>>^BON`JJfMXS5 zyrkmu_JMeAaFZM;_F%Q9>lu%W@pg7Q!I|X;&~+6_ZH>#Z-kG}fr zYUn>r_t#CiUw^XsN7@?%oC+YQmq6kvCef{Qs_Z`L7Hil+pnQ$UxyTn5;ZV?z7tZINR7jRYbLo zV-Q+soyWoCxd7xcgNyzFFob^cs{QiG)8_!$>QQ4>fgO|y+i0&i|5qk%2prz$1zTm} zD$v)}a_Q>dFDROS<2J!vG7k&iQsMr|NYQ!sxdyGok^{u29qiBj3U++EGtKv0@5w<} z7UjU7C%OMz<-UY)FnlhuR=^65$n}gvma&yXHSOz^?|A6nZ>60yaD4 zk)T{ye$~qdu-ez_Yp;HphaDvjtN7GVHNvLWIBEbl{=dE4_h%+%d#%gt7rshxeS;Bu zR zld_z-Jzqm}iBN44+Q{mguPewGQ}#|NvBC0B{OVo*!eg;!)M}2UG)!$k%u?Ng60|b8 zDc|T&BZUVj^&R<3nhRe&@uPIOCF?FIl0WM%0`vd4%aP@=rwvV`mMT|Z-mfD?0y6^V za~ihS>c^aHjbV@EwIZs|EqdY=h=isnKiA+7=piyVu%O>R$4w6gd%tb{MZ`51S}mnf z%RAtvFz@GL)o$+sDe>)lf>WjjYUT`@8SsUtTl)h!B7+!wNW*LQsN4EaX!}83=`%@p z+yt{)UVots=!J9+Pz_Ma{crZ#YaDzH-5#eQg4mgFgqWT)c(%zI zPBUg`(UuwQyRB%Hz`LpVeHWsnEb}&zcjnVVDZ}8nh*tCy3^1T(H7GxHw!`w}EmpCP zTlZJfQ;c`OOo@?<*$4AAOcMD8R}gjN1#28pbGG2Dv<HxmtJpH;=_J~l(zONAF@Sa zL$);ZWZJ(-X4yXiSSf7TcrMN5SApb!5y7jZoLG9Q-+1DDY+hjcKFz>V$y-mN!Dod4!QnI6cxIkzg^J|NY+%_=~k z5LP?&E20`P9JtU5hA@EY@@oiRNomcxBI!6hlz0N;WGB43+L5M>U!EJq_ZnN0u1F!o zq}C^S4>S+2Vtj`EG8a6_Llws3AG4dmwoVwE{ZaQOj5S?c>q7`#3EJ<)IdK%7PM-S5 zP=oJk<$v+l==__3gnrr#)kuOSgqXZwDPaI#TWlfVRl~SMq<^gp@ZI0HFwmskRt1F0 zJ^8*t@r3C(s4uJwNPyx3SO|6;_rW`kNJ9)OehaP2&1&RIg%w(wc32Y@i+y*)e-pmK zegL`@2FsURx5PT?e$<8Oa6xYfS}^{`NwWQCx z{u_x;?EByW7;ic;fXYW)CsG)iFYTL4$_f!tm4%-D> zw_xcFMc99rBN?4zY|K$}Brp}36F{Abr49#>qX`z(fqq5dS3FUNV}CBJPOZ`wHqGR3 zouXObcX7r`n?nY$`G$1OpR9j~8rXA(zS&d*)2 zi`IXy6RY5vks8b6I56-!k?uq%X0G^w=YBbdgw=iXC7TZ-3R}E6wJK!1u@tuaz4O$D zk^NRlU@$Z;S5+At)%a8t@-sQ+r^`?|1Vg%L^UwQUj?EW>nUsWRCtc+=c&Q>c=cDIZ zId?WsqM4&5bLy6`38V9k&IOTHZ%VZH+soZp>|A9Ja1(xyc=_ z+s^>&BU@#sSwwQSKEN?pDHVy4^~+7K@R5kMW;jCI*(LvK3!=ddpHy6BNq9I%c_Z<% zoMy9AD5X%ta1Wz?S&7vUl_zfN(3i;2dkbH6qGy+~$07{CMPArFWm7 zvOTj8x@%$?*J-1{ zQHE0WwC!$i8;F?3P^#~s#ku=(aW(HK{CBYCef4D?_$Fbr3-PkaQE-}s*EO~bdaeslC;k#`0T+M0?eF6p=j8fO6%zLWEP`cUDCSC@F>r@As+o zz48j+RMHnR#*g?>J1cR|4gDw=j#RhpjikiBLeyuQ_mbL=zr`{n5(vIIQ*$xZ11;xQ zCYcv)CsvT6el8J@EAv_c;vZFd503GHg-Bl)5uAn?hwt$=>d%|l)oYvA)sJH1tz5B~>2681P**!q{+ksx zCHlycR$ug*iS`!~-VR47)5g4Ax@}foU9Gv|ZwAM3{L!5qLsb%=9dt5s4ybTd7)CJH zsO(5g7M4sJbsju!yKf}Wf}$PKD;;xag&)HtSqGSnD3d$-ip|TkA3*3B&R;1XQAG9* zN;KEo1uf+LNm7*GeHh0Pr)yiQvxkS*1V@(ZwMDuJ51b*neZ4wdnOoiY{2dAq*KZtW zPq=$^=Fdav%KX|SIgseh7=g@}V68a`D#SJNzo8|C*j5bAIdq-q z7E!v0>ToZ-;oXM;B*B#&u?FRDj6c_!1RdFPCGqY{QX=mbm$0_X52DRAU^zZ`++uHO zOj^2as&H+e@^L|B6V(IM=>?mu9||M9zx&-t#^Qu&D>MR1WXRp=UDx=yuP^ra*^1W) zidInHYE8&^S^S7{I}MENiU_*hBfNwTZ!qgqm??E+?^&pRPOi9^+D^m~vzcPi4E~>E zK)&}&t!tY8Ju#=o%hCf1_kOqi#@@@(saPjXnsNmj-D7MooUPYA_BnCr#lf_$E#;1- z0mB^c1auS|xJmA3s!_Xd=vkErY>6yFVBdZZm*T$T5>{Lh;mZ9eH!pd&Vnld)(q#@L zcA>D9gD(?>i!E&^b~X#vBszsoH%P&q0a3x!!FK0d5Gc5YP{So;|Cl6fNfad}U40fL zJW0BHTZre#!y@j-A;9Gku%4u*r)OpwtbMkH)s1ulluzl zu1>I|46)t4le60n{+68SY@irf6M`)iQKo}47Gc3I>xNkWk)^tcj1ZpjEDHM37CS5v zX!_$ixobSa`hWO857FbP)N53_*SoZ|)LFyvzVGCMtz%dN&kK@ALr%CWR%;?$E-8(m zoAiUSr8M(luaQ@|`D9h|>ENPcTB{kl)~~!p-geR7=ezafyBoJ=69y<-mh85MJN8%8 zDkbd%M$5eOYaEkbo8MG#7MMRY<&E?js8QuhBDh9;wTXCxTSG1BZAUBP6C915M3fUV zKI9&w=MsZJ7fV97&j8^83s;2uwuhCQYYtk323}8rUGQ9^RX2zA=N!c)TImaOY`!wN zu=k>g_lQh^Yj>Ni)q%W}r8H#9+m7M-m6aQhJ#Q>k+a@Qog_W;*8@|0zG3C*n>y2;1 z=H~9+vw*d&&8}j2i;VejTm+ljo8vkm+A%%k1rFmsT6C;ZEWF$#_G4kHcQR0N155Zf zj)UPgNk6cDr`ozD9vYJU`P9ssLS#~Jk(hm0qC#TYg@@!u@7o%!4kL-@ zI&2PpR&1?Byv?SnJ3EXVmK?q3M?RHrUNBNoq@*?9n&i}#dR?x)%(%VcL|cw^wMj!D z!T|Vop=Vg(gWzae*Z~m-H2nJTMUI_{+9I?QY2S0T?%NEs7$Qr=MM?~IpnFWe$S4%W z1Ub#%Bo)x+WQlvxw#m>jfpYt!yzt&j-6bDs6-9^dJ){J=pv$DzuF$ia=1xe3%jGbM z?F%oZ5lCRxURvsOCmOs;7kK~ZgC-z%3eDX%L>#L#8z~kuj)*yVH&@lOD%P>r#LI#I{1_#8?>0!L^<(|L{TF9Vl z*W~%taMv7rpJV+l_NJcqwd$1xFfAvx6(U-l&EobYw^CXZ%3e9726)|Cd|$F1y%|<3 zOJY@w<+pNQyi?&x&>wIb%?@@A4XjPA^~Thm*-28Y+p8UaJ`6}RQE|VexTndlcwn@sgu);yXu8&9H1oR^&TIn{ zD+!(34O)r$&LfIB#Y5mYobJuSB-xhAURwFN?`0-cADbw-d3o@jR7x0msgF{&bv3HD ziR5fvB1c#Mv9Kl4cIZTPr2Cp>or02+e6BeM?IlHSTLv| zhM5`toDErkCZ?vQ*xS9{@6fI%Rh=ESc~^uyjQ_aP#Nb0nO5TEN{k7JQ*Wzsym$FW2 z5|sw>T6NQCnLY6_z_?~)w^@wVt% z&rNI`?<3W!7w!dZI?BN9DjKR>`hT1ZOh7L^v;#( zcbQ$O;94227F~V6U=9K@ww$1hq)ed_?{AiT3fhA$Yc7J76xV_ecO7Clb z9%wMAXz!xNWS_G2OZ1I0^jFA7)dqaNQrL^{bt5*+d6Rr?$^42xsx=`(&Tl)Y+V{FaL?W z_qPNBIDiLO1@@!FRq3m}3yu8}Jdt7QGXvoZyRPfiOTzN~*A**&NVSNh40qePhZBJb zH3G4(jm~@&;B2Jm?EnJak7KeY_^a(U?>)V#k2($q3e)y~6sWgnALNT2eLcV&Xa_Er zo}a#j@n&N2!SVMTe|niGE17JvYMi$)8DaNvRQWSO6605vnk}E^7Hw#ftE?ct2&@&Z zwbiy1wPcT~%J;-slhG7E?awjUE_O~anr%V_;M@b{mGS|GZftqxWH=<4}or|e7(;{ zns?QW)iE;sB>V|}wEZ;#hx)-R72vf$=dvYSx#+rWYyoSt_0Oc;vxP_kNAp-2MPLHKo=6wZ8muZz{gJ$fM ztb;?l24xBhd?jp^rRdV9NY$in_QFjw(KdaA^qM%;AH|WBgq-H%MZLN`S4%!_`-<+8 zucHl!4TP!#U8=g5tP~j;p3HsP^6p469cdDC4cIHa>v6Q&{flcb&9tAnH=hRnf#Ukc z({YEr!*S~un=RT{tw%+!!&Ag!hhd3x327!;@@s)VzdXJK`w0RXZ;)vDck;PRLadch zKw|f%84l|fwZ~vUlpDP+d!D+D`Szf&s4lO$e7L39dcox+&3{;;%N{46tJ|QN2nuF9 za;y85PDgR&&_k@}KlxP5o8AAzr0@03WD5IS4)+!Ev77N*E?{vfD7^cR&kxxTFtIhs z0`hmzqV!^Oyho=^N%7`67;N=phz0K6AQ$HM;c}MrU@pV^zmfMKDBoKA7I}` zN_v{Gt$Mpv4qwX3vGqkh-%>yv3O|U08+25dd9J6^TI(n8ELI zzWR9?*w7AGRtCTdhShpTA$^ON5~&uu(rsa|pv|bp;tINt)gOKo^}V(zJA&hp*y(85 zZpfF85P@rMuXe3>CIEww%u|{`m2*yX&fc^McCl~Q9|Wu{=02iou3nG}QPWZ}8J;|w zfyKd{HCp%k)bA*ih(u$0i^79k z*vASZa;@XM>3kZ}$=1C^Y0cGbp5-CsxY77r`upsw3u01vdEq?C;{vG6$m7S43kQ;= zO+kzm`^#$**Xw!Io9$r zD$r9hhS8c*V@sm1R#%Z0t^|o>BI4hf#Bfg0I=#5H7p|X2`Rt6z97!fzT5%loeb-)w znPK|txB8Pxoh{!c!NL2jQCP9te%sMaoTgX*3K;aCPb;nUfM-seg#@l^VCmEK&;xTe}Y88wDGnq&aL%k3&>O^kv7_QmgsbymsfJ3sT+J$9t zxt}Hzyroj|iSLOGTka%#=wWkz<( zk(98>9D6N>cSm*E>N(jeM8ueqs!vjbNg*@SIbaPDG528w4kGDRp400_{Ikn)`9j_n z^&jwPBen0T4xS6yv3rQt*Hms6O75k&p07FdHX7CpMI1O@qjO{_y}RTkJ%Qgokrz6c zx%HMODXzl-5gtQq3dyS&WIIZ{*pH43aT41);YhDHckB!H99e36j&E}?t{^)k*FU6* zIqO^`KG1b`WXHczwNI0x%WBQIH=F@)3l0qanC~<&9+KBE^vxbSXF~Tg`7yPKFFmeE zPtOXit9a+bpKuqQV?ww|!IUC~dVDr{np4zq!o^JVR0KGmrFQ%hIPVvVviDXl`4-2b zxm~Z-<=8&FZEJ7*xaGwBfmQWpy@?tVIoY&lA9gY9=0BA(?9b0u3rMPfcxxu<;&;)j zOP8}go)@u6c^ayPT|-sBq$ZqK1N&{EL;fmk3+%dCZWec~hTr^c5W71+(BD51*zhLA zm?yBcct{=7$I)afZ}Z`rM*Eh=Eq8gg8<={UtCEU2dXIe9aHX%DtLTa+Z69$SU3qVw zQrTSYAQFzVG;t}>XwR{Zb8k<~xK`OtEJS7K%?hEbTce!YR9-c^W2yZw)AhIO3T9mW zlGjTk2vK{ikNR9q?j?I^EG!~YjoNF%KaQ7Gn6#z8&na=nI(FyY_=YTO*8o%OxE@-| zcjnH%gFKgFSbJ^TW8Bp`o{QIuu%=iPUJ)%tOw9B*SF6l_|Gi$lcPyEWtjj%bPr3Pd zhxxIq87Lmj>)sES7Ljr04>URKTLfRavY+E#0eALu=+N+}igQHo4gP=$^V63=0xCTz z^&k16mVEY(!e007uzSl=Ti+PaxsxnTZ|e8!d7QPh;&Uz8L8UA-apC2~D=8UeH3i72 za`_nnbOfdJjpIbAi;=lbiliCNu))!E_bnF}AC0pWl!Zgx_ouqCZoso(Z?G&h=n^5x zIguK2v1^(${Ou>YmcO;$@$Aklg46_a*GL6_%q$KQvQLmsI(gNm_RS|0?FNQ&q3eu_?z#q!uNl z@Pb*GOc$Zd7PW-+zDhGQqM9^BtyFCLMh`9Ki`5*M_VO7(<7_JEBA}Z$Slz6B)nfD` zsW;}k+h-g{Kx7UU0iw`SS;MJbnL9_b(K5%ZP*YK@q?VdY1C;Q?_nFSt_xF?bQ(hC! zoPv4DYhk0muMHI1iD|;y{eabQVo0;vd{XYy?3IoSwaB>fEy36}X*TK&UALq~Zj@*1qR~|@ z%-3rMK8$U(4ozjm)vf)iQ^j`|=pw7%*;6c$_@>yfYRlNERoJxIKm4QX=RVhxUd^j> zd#m`&n31jgKDV{bdRx+>90#<jk_zAP9l zv}=!8Ge6b4)ERe@TCkF_tvLDKjKs}Ycjt5cftM=?CP5c*ZRfrpj@g$nsYctshMI~Q z#UB4)?#FOtQe0h$A3*{Hm#(3C-c2Lsw3wcBTS~z^oif&MGkh3e9)gFo*W(|@%|CzU z&;r}}*?kKUqETcQ}~#-$OvJL^2J)jirRt2 zqMJ9qu1#mY4;YqsY7!I|0MK(DU|PenKN#FFSkWX-7H~Nz(cX(Tr}l+8541yC`wk8l zJC5^kI&{$z1KgvE&eDnlO5{zk?icD|WzsbudGtlMB3UV#AM`MV^zT4if_qgWn`o<0mXG32iQKw&on5_&T4AU zK<@Z`0wHMJ6JLm;-DdO7t7IRm`u#P`I|%?TuB#%6#2P~jW|;E!e6_VM9Z>3}HUPNI zMFJ6{p^n1ALth{$3h+Y&HGTrn&l|9ZYYkb@3a|l!cQ5|zBs9Tke9Y|Cuo3!$P1Dj@ z!;IcYP|@aH;4^|i|DKn=52pBeeDj+;gOn48B|#rKpZrGdUDxGfFfh$V1{xN@L!yLL zB41F}?@re0L&^4I5?5a$@uo6+tfHwlolk3_j(uDE7hS9$1eaTBq&Ek?J|4 zboZWj%@#j4swS@`t>JV=MkfKN0T1GG>5*q5GS9RPu>Li%>Yrz*&L9qx`4A%tEQrid z`PCJbyAy^GvB0D#xs_(x({OJy`&qJ=Y1J?gBk}PT{#lE20R9mRNsQ_h#?Z5BmSSqL|%6xvJiy^HbkU{=2G;+QG$_(pXEe=Grr2&v5#0~tvRe#zA)UGLXDvL zk|){%8kkH~SpE%Yb+h};O?bX(Ag|7lOFIu9p6*q?6ZcpJfk}2I2`ZZ2uHx7) z#jR+1Xtvl~t8h!+%C^>Aiz;lu=c^R=ky_&;$E3Nj(-p&jr-_<+G|@|%Taj21S>@x@ z>R;v4(h#8I!|Jk}2w7;zj|_udgLveoPjb|6Z`jyS`3}PLSy2e21e$-smEtP#UJ<^m zxBdX2)TJW(hxG`W0EZ=KAGP2$g z7=OtB$KkL48Iah23%u_C>G1l}`)>)R{y&rR|C7lHVX{x}S4YXoYO>(`x@YuH=bo~< G|33iV^)}}K literal 0 HcmV?d00001 diff --git a/docs/tidb-logo-with-text.png b/docs/tidb-logo-with-text.png new file mode 100644 index 0000000000000000000000000000000000000000..111465b9fc84215c349480ed24fa24fef6517fb7 GIT binary patch literal 14207 zcmd6Ogn7Ig0B-F7T9n!qaoC$SZ2G7@R7@&iH6^{KfmN>#lo(4 z@h7~8s+7@c;Z0f=vtqBsH5ZFs2)SZrS~^+se&@+lvvhUR2l!oFd?B*_8bX% zD5;w1;T5&}U>=g1E{3tpl|>1z#-1_~^C%NW4o2helF}()x-zaWnk#A)c0xHKL&nI! zxO6PCC1lk>C&|U({P#-4_&_iiG_hBeGX+cQ4?K5ed4}j52!7OB#|$1|+38|#fMvgT zOrXvf%+n5m?UqXXTqOl_f?|>Cx!@rB+#4aEx;XP)QHq(r?obhDLBK4tW$CcETUC*B zBnZ@4%!g$;@PNh<%BF1&=#mVFeKQ1~!(?7-#)FTs@qrm8!Gi_Xo5T&YK{+lAzXTK5 zj8x^WjluJ8bwXJRm!-dW=~*7dB%OSV8p=jBA{kwm+3CO;s%VgeQbxihSkP)bYt?TzB=f&be z4dSoVRQ@{o8lbMw;-{@PJA91+MFqchrjZl#8L&(i8D$$ISpUO}Nd8(Cam%8|TW;c~ zi#f9jecUhX%HqWQ*nMKif-W}bc=;cvC{@Yr-SbLuMO~Z`73d^=U10j(>`1A}C^ zqW-_(7$mv*Kf;@5Rak@#be=r$01t`*A3LF}1D@*N{-ZmVg)Ro>MwfR5B^k|78H+8r z0GRmm_~44K$Xi|kil|AhiqSo>6IR&8JUtCqh3t(%x|F!Gc*2t>l}V`)D2|=56Na!* zhE#wh+9!72b(z&5+W(`7iH9>9Nu(6xV{wQ7p*dSswT7I1n#zMdiON_Las;aO@v$(r zv`lcZ8G;3RCv6|wcVbx|o)COLC6AmaJBih%4Rd025$!-0A37iNqVBsAX=(fu4Im{0 zp4ebl)c!vq`TY*1DMzGu&ej{1|B=Jz(^zgcsnEd>Ia|nF>UP$>%o1UC1^PB^xd_=iLTukXP z9dH`?^f5p$G_%@LC8+~T`1|?ua72A%0#J7AF=fbqw8rL$ zqTYKO9P{msPKhd!Mn-)WfJRj17HdI|PF4@kf{_3&C<*1?;J;N{mU;wdc%8 zG+5mdXmk8_kSZ+5ZK1`${qQ(OKl&w_P>m3?!NTva(Bae63T ztV_k&pS@+-E^~dJhhIxFUJf;Gb$RdqMtwNi8d?=n5i1ijUs4b=BuX8PxaKiYfw8%> z$QQ!seP<{0Qqd)s1y;hXfh~7qA4Bh=y4>2;XpSg*hkRh}_>cM7@;aWp1*pj-SC;qJ zo~T-HENxK_cm}$8TsDmh&VOq#tQ2U-rYi$DiX`Qus0+ z16RCy!bfE@ExDEA8ioh+v>l(#RCY$}zV-l1Hv#B7#q0QxRrqbPg)-Lmgo$q>_=&s) z8rE9+@`}3&`?DGY-`$ih(?2Uih*hI%WnWbf1PYqDax7IgLP^JZ5r0ECyNffhxjU^l zR&AcMXzR>!m(+T$Ye}Zoa-%!*y{Cxwh$Nk3g+bcIa1Yh*A0)YW&3(i5fFo4=eigv7x4)g- z?y{udR`k@F`Ce*4`}xW77etk8%8X1vx(s^GDY@spXMUpkX6^AbA!_-45Pq~^+}7~# zdswv|nDMmYe0Y?q|J)SSo!M>9UCl3hE;==cCl(DP~k znUn+to~UIYvGl;$(&7EK>Hkq^SvXYnM7?G&-XSTOEa-^qiWEvmx&9t`z+CNOWPHcF z!}YqEGmwQ^-9nr7L~+AlI$Z>+n{kI7Xp$wxJ))c{0gm0v?wbAWY-Ktf#egF{ z@nk_x_xr{RUxj24twqUj7|^M0<0Efn!usK~h`FN&57%K{X7JO~eOkggZSW2Ws^(nF z`h*Q{KGe+tWoxf8J%L{;9u0B1cl926C5U}{$7R!h)X1INo1c6&%JhnL%kXo$tCOfAammo3bbTsFGHr>4o_CNe{-LK#EdI@n?K#bUx7Pp@1oww|bUiOVo4`8fI#Sn~= zGR;4+p=$j^;e(d-<%`gpj{Q}H8W|en;fDNidbhyR%OC%}>;Ug40NN6j){k_~G+1*Ig$KtT< z&Rwo-B0oNwf4c9)OpY8?BsFCQQV~s<5taFt%JQDL(ctdF#c1QbOY!GPpRZnsi&0JG zq$Clf0^T0j+J*2UqoG+@|3nFyyJNl^uA*o!eg6g`^B_I)baauKVM5 zSzGH3#90Hli$%$ckTbUO50xy3+yg7waA8yZtosj{f^7cDl=NwrS-qTEa*qfXCzV-%XmFvUYCtaMn7IQ4V9#Z zIJuz;pTq*PL*)K`x4)cEG*sc|bD74hDjo7%H-fPyQ4e&WgWpE{^!wB}F(tR?v(Fhb z|Ew;^31IBK?ypc;e%RiIofo3A7(co_`f!_PC%mRnAR}EvoF|S3!g;K+hx0%U`%YYn zQjPv=7hukau5glf_-SweB>m6AWbo70A92j6`BmB!J-Z>bue}+eXu#I~5T2axUN<&( z-_>i!CcE5P!f^R!=n3d#*a9t$*k`T*+9>>>W#;RpsQK0IyNchHYp6-EXw+hWEAU7` zgNLgIfHuB9hgom6WHdHOnt+OzkLD-8h&#&5WTF)}j;gB99m-GE7yE3KR6S1jT3vA! z@Q1!MVzMK_n?UjH4sRgX%f<9N&0AsaP%bFC+(cz zGoQ_}3x@}?K5D>|^iH0Y%fG$+F)Xtp0c?yU0LXD(JnLk#HCF!{0#EOOxyqT z+|Pk{ufLaz7KL!zXMU}%rNeyOH2nW|R06Yu4f7#K@Qo;*f(Sm-Mk9R|jSE3~a)!vE zG?g=HlAMtK)}dGSian3S0>p4}z84^D2_r6_@7@{kJfE#?|;w~q6nJVp$pCjx_9JNW7ebiV}e)m$EI>QU$ z1Dk=lS&N`)3L1(vq)8Stu*F30a=9!01vvhOwPMe=7vu=_3n};cI|nMwFMc;n=XcsA zlT%cc6O8{~;qICTqzoYvAeO{w&6ywH{^+N3@Hn-p!NV*)feH|)n~23AO>jhG^);_s zq?AFBRiC!Jy*wx@gr>j(F3~Ckc|!(e3waHq4r1WcKHcz9f$+z@u$cs@SI)Lb z^pxsZXKjW*L*5ud+1_|Xr^|etTc7HSUH5MV=3bEcG4$|T*E=dmEGNn50m=WRzS`zg zkoa9-;d82}NSjvPpJCRX|51_wVn6w4AK!$x4$XR^LzSZOVSa4^E2f-T}f(Gz=R+Lj1|*hjGm zu1u$pdQHqUcXog`kU0t;-ez?6f;5#&0f`7Jd712TH5Dg@MN=kM z;IPvbC>~Oc3D`<{*9=VUqp>6NmG0|hU)_lwslu}UQTRK4h;tY@G>~Zif#G$TPj2J} zpL+Q^aG3_u@)YQ@Vvjn1fLK--KV#7-x>Q4T6K^%3n8_hx!ww0&dpV!|KX>}7NG3z7 z@o&ZQa|q;2CJ-WE4t?nh+hCSJBbfrTr)oI8Nei>V`?_M^}+k!J6^#nxCZ6%ar znIvc+&Y|R)t&@{76-V>bJFP`N;lSm+F?9=C`$(HI8p4)Pbu;?UUv+XIJql1ZLt2K@Q<(~y>swBZ>Sa*aXat70lXe%t|!5G<;?j_k$% zc8H{qGd!&FOa^X>Ii5o=m?6kL5qHWq!17PP9iPuV2iZspe-~*>j%YC)bA>=~-4jqY zqKhgB=knDj)GyzMKsbxbo<~dWCn}P1JZL6qdWq7KgVnkk0K+fzN&=L=q_!Pk0a+NF z(-Ac_57-EA7#jqejM9*kbY%f&hr9EF2u25fj<#Go6r4WXntSW}nK6iEcOqmT?jV+=|o|D}6rry*?l6Lrx(4DTa>LOO$p_0QXV^31(o*|}Q~ zNQ7x5Jx=wPA$V(ws*1{lCXO1?bjATV=?}|nmTmfFMq@5uibu*mIXMIwgE3bgxO-bn z6$ep#2?hkiF;I(~gAi;I_I?9IP?(Me(v;7>7jo%J zuJ%yrVIuE#>`2lmngP5DX9usU=V3B64z%MRWiWb~8+bkU7khe&%mfBzgp>tkR?v>; zM6xJbXS7U(m>e)vA0BuQt~3@fe#gix9XL+d;-^owpF-Mf^fWRb9dsL>rnS=Y*)CkB z*#||{8miC3#3Tm9K(5Tn#{G2!=wfK}ly95sc~IbJHemsk9teb9ffUqVASR~7lY;8% zc}imS6B$a}8w4UK1Z4w1AlyNKP$2DZi9r(oe8UKc1pfX1GZ`yC4EBrM1ESv-m&El^ zhNTcbW5K=ihYP2pU&ILlxKFfr0vLBJ;nzz5lQ?t#agi-_ppAz+_{6whmSI}*f}KL$$=9ZqC~q9(=rE$P;^QXq3&7F_&0 zdOM|t{zT?-*$c<1GhA8~b0)*&g0N?@qW&Ar_;0WEdwsfK9e!)6jHRusr%Kqp)l7=y#=bQE8T=e^x;;xE?lK$XC-JCPmd@f)u$I)Y< zgqvx}lBs5KOHqPfKm~HQi6yVpq~NQ!<}$H%TW-Knm%Ha6OMst*WUnyvCc^UgpxUqP zL42vn{o(#4Xgx@C`)2D5=wEx*ofEl%58NqjRiLjw3ya)eNqLuKt{KrdnV)=<1XFq4 z*S+K_NCdp8HltfTYs#?}r3y{0@ zw{X{IKv^fJ7+ox;xLHMCYr$#?R6mW1&G$APUI>&YC2gv(S6o&PKliLA3?h<0F<-(D zw~K2)_zyuR8GDSJnr0bx8uP|R*Mbg5uNJR`VJ8zjb<$?Z&zs%7%-7Tk%uOxTGu$Yz zo&3Iq065x2U@fVKTS|%HH(_BOdA|}}bLCx6B*M{nV}~!Jw#A33=WAc3ceJn3;Cyv< zeD0SIx|P=rtX|Y;sV>Kb)l=Zyyp`bdKI!hlfXaYF)mr2I*vjQN87eD_HDv*h{8DpP z-Y8B%EYBJe!UBw_A&A5EhM!?y{iRv9Y`xfg|0JK$0kTz!ZI4Li8h5|;#{CNV*Ye@5 z>m%gsoFZeX$>rUfrsyXPfU+-)G7Lt$T{Zi}p%sT?>0hNtfaC2S^0$~HRL=7-P~*rz zEPjia9uv!#T5Epl_lC?yF_}uMjdb(ggZ+u1%2K9FU0>LT8|X(g7aHK7RQ9c#=i4px zMRa2@=KFQJe{n*^<3W6fiGHu6C9|4N34CeFgX!~Ka<^volzrAobyjt20{>)CbwY& zZzG;@u>O9n`|*#%%YCKYn=i*f*2!N>s1I7`YO9-HFFEL1FPz&A_!|idJhm$3-p#W= zDNx<6p7*7kK;9&RO}@Enh6Wya8yTtx6ykaRCjYHCh}g7AR>?kN>!HjP;=DgSUZ zd78`F=Skn;tlYF&x<<^WCI6>-F{AT57I-Dt4~n!ptWfi^cOCt*1nRS%n0b_5WY;T~ z&tIO_fU|ss7Gjple*?_$h0{3Z364TKY}SE z8_KhJzS*1Sj5WY}^&H8FQpgsna!-k$io{v(ZmEISywVa-20W8`a-;#(6}uVeoV|g5 zV)Y*|UkY!|zP!&|Tlg&NwBV^o%K?PE z5R-6)R%IRA)Pg&yl@>=3oaR-!`uPl8nGYNnn0c)io@30kD(GB1GXG}~{Rd&ky^V6V zdB0m`p_Q*9LG?)4V~tE%+VWnrFIDhi{-b^9S)~i^smqZWD_c)=e#-VYWJruju|C6Z z1=J`%$~bok*Olfz1qy8!bGM%J@)Fi`CkfGN;`thT?$u}W7Ru`SE2}s;*WO8Sd7e7xiM{ z?K~(ewqUhudy4qpd2r8CiDeRHZ`!|p?{`vWlJA~c?JBLxW zRKV>_CgdiLUNhCULI0{?AN%c9IBaF%87MYusy4;*)kdaDD;(CnzD;l(nJ$B^^6y>C zhOSqeVO$A+rWZWz2cBqx5~f9w{8`ck7kc$hLcLL}`{vtS8)pODlj*p9#5v&v;g9bWn9cz1VX{tBhH?q?6>se=l!FX{`E?P`+d zOs}Nxj|;!+-hK`0VyOd2inK$^B6BY;wsfU8_=?~9jk~UeqqnGaqIZ&g!d`8`eqt>4 zBd5cyZ}(&mg`j+4Y?Dt*J-Y5LPz6!q&^m zy`r=+zD4AjKV4IooUz+i{i>{G^NdynIti}3rCeK{wj*~gS!fp5N0l7VUGqNwTXJt# zYDo82+H-TSC?OlP2LZF|Y`&|cabT=gWTrjEGqt`mpywK;CmOxe4dQPO!(zd$3L7|ol;O+ zuwgZB%mvA>9mo%c-~VU;d$Vn_=(~6+L#vI*ybTG;&W?!UfkW+U&eGNFwe5k4yZY9R zcYrvyNAM)5T1Y1${Q~?DZ>)C@ z#o4&4l=S#6ym(EKF5v?9aZ%Me%v4yUx&W3F2$z+el)$RUz*wBDqnRK9-p6k zVG(Hh*-7<)&oR&j>*tBcA+(PMtVNpTO!8*Hd zOq>x3Hzag>6wv$#^c87w3$~m_?_wlEjl(p+(kw0~0~ zYsNHU67r-}cs<*xrIhyFw|wsC_1g4sipkE)7I7I7%F(r-e&V9f3JcAaYDqm?YP|%i zc=SXy0hfLiyB#St<40|-cYY^t=}ncsex4rPeqb(~w^)6y6j)fHyD1VV`m}dEeQ5&m zonoHt(Gs*a5hbe*70Bf(#zecfnWA2e_-}0w0((+oRCj~izjw%9S!R}L*Wy+^kDn8m z*8WkqQs%|0nj$p6>uI}ltGGx*D8Ft-4YJZ~hte;BR zLBL}P)XfAH#snyhtsIRvQRw{%!H&eNI4*h-?6ZMGgd=n~dRph5PfJN8$84F8i2W=4 zT30EyCn%ks8SnH^C@q2dJ%0@q+dX2G74F$MW>uj+Ot6D3r(U})5aC3L=4$-gM zKqaokbv|vk-22y6PJ^$CXi`jZfDs9E9&EBBlUD0djS6h3h9gy{Sl|-{iuWbzf$1Ak z6l6KG^;$C&!8?%_^4+>QB*=LB_q%v9s;ao!k+O7S5xu>O9d2B#Y2Cji#x?a|t$Bj< zOyAUptoF#r*hb9I!@sBFs;wUm9!eP6;_H9AT_nMmmi%$0cx%l^QZ7kY6yd9J@n?zA zK>Z93jv9BX%^y3APuzo1>W4euLf!PBVxMYuY$<90^-?K!_uT=%_bumf8}UrqDSJZY zQV}1zHw&)MzhCf)Ro#uNPCa#*D@wRzsQd|4vF4cBXt8@_mJ(M$A$7{tr#Wj}A~SCF zf71A5ZYwg0QY_zlp)jT3b2&aYz_<}#heyYx#S`FvA|XyKkF$B-b~g{E11Gp#(CK1j zr$nnQ=Lv#;yr%v@fXg1%gMVf3JkBS5T&hU9)fBnvg(zc>f0XQPYhDKvn0#^7hrNK2 z`$qP;OQsgPUxx>MmTcmpJvzQ+es8khC2P#nO>{z3>Ion~>giKvq@T21xg^{AWwUDL zP0U9>!@DaC@L;cd5M__G<1Z<_v$Mzgli#u+BV^@vc8If^$Cf&pa;lqjb=Du*{%fNq+u_=-F{z{}=d}2_nr%68 z{-X6Xhl6xGi@|vhJ3Dxi_a$*)UB5#FazL^iwguvCfm{R=vNhQz?m>jH`hFY-D`3Jw4`f zeLBtiFg(v$FvPy@N-;1+xp|Kd<7H`vXZq$Tk5l9vulE~npTG0yR~n;0yL#ATP~>1J z;u)*Dxe0@BU8?~h)^8^Clde&*@Hkr;o&kmnESk5)e>e&FwZ{61y<)i>90T$?QFLq4 zpzNN#T}by`P`=)t`dNm~hDSfD6vjPyydt#lQVNFWcxgPGbr0#L<;A?biV1iM9og11 zO6YcXLf2voy8P`+*9O0Dq}CUgIM%uud-ysI1EM7UKeauYND#Ai&>$ZD@@4C^m8Mkf zxm$0<7oTuIugjUpX)= z*r}OiL(v+)sPT6d?$2Ho+yvBOkFOJ}(R_SUn1`a?9dA_1L!MY@p|>~v^QIRc2zq5o zIGksU6XBX7uw^CFCc{uJl!Sf9n15fwW5VZ49kB6naHBCD?=M`Ec|c#XW8;TLyk_zf zUvYxko;ypBocD!kT|kTF8Mfw@fAEd|xa#zd-KJzYv+`Hj(H*l`tdnHF>k77=FjDf< zDQ<0dbm7{vxai-xP*L=+Yy_SD;9>Xp2P~|8Pda;S%Uf@%UFW-Bl+?IUIl`-8Jn2!^ zDROPAbrsnMTe;bAm}Q_$$(Cg7@7jRH_9<@sO+KTmg6Ec@h#PNf5`fjBK*jfC_wflN$uq&&(Mom~Zil8%_OA+!V4m<5He`Nd(vB#5{NP<9@$v%sZ)&Tpkz%M%v z3T`)q4$u9_`3 zpOR>b!#P_oyEaNa+LY~Gg=t1^vTR+w=`N4k`d#EDNLiqKQO)ZOq@c@bv2>p``2|ZS za69fZer9sD2P3m#(+7l1th@4j)uwhWbN9OS&Wf(Lc)J~25CxN!d##`Q%T3_2lt=?| zoq&rO_`BH;z$!xMR{M64at2v83x;G(8aUlC`Ng zL(k%%?i9m?-O5VQ3C8^tg?wI{x%gj9WXgZqZL9vY3cq;cD{IAJD|WLzR$dMe3Psc${Ai`)Mqwy zq&}$fehONZ-yc8g-iO~r()as>h#B7C9ij9xz`5q^6_^;K^8;4s%=D3 zxO^WOx|hwVk&hrRqUqi`Ip{F5+pu0zp11l8)`@^mFHBJnAe&I&BB}gfW*J~8z61Od zL$W7T!%~IdT$_$)BR($oi)kA-@W_x4Q1t zgDU5948OHC#@e{<1}acfmzd{e#_+xlWkxs0VAD$Is>}mJ4r!IrO`A%ten(g~$wBwg z+MvTb1VzY4_8WG){zf=xmT{z_0Zzs+@%Hl;J~YCiW4pJz%_mBDX<8$TTjY+i&gQkh zrjyxn6I)dmAKC@ZJKXf)OKD!4g`l(fQQek0HR8ohA5^ptFm|%LSN4WQD!hiK%iXiX zHVfa6-ycq807r84HMQCPyH+7<;O4DUTR*kyG=JyewQarCuv)(Lb8h11uq}nJlkkhA z4ZB=h`a0%QgaQ(wN^@A}6;yZW^lRm5G1mRcX8%Te)>K8=9@N$eY-OQG_9$)nzBGUc z8wMjcJoFxJfI2+_fCb|%8ds9NFH!r>^kmofAT;i3)jf-An!@+h5G-IXynV-5Y)`E^ z)!%xs-gtd`jmOS@UBTN*jM>FojM5iAn=;^Fxjitegum)lXBjEagP#riYGu$Fw%|O- zyerrmA-HM~d+l_P%+xWWT`i6X6yBqD4<=!eNbH>%oZq?J8dXE}iv-}-trQ-v5%)v{ z3*uf6KQDxQsZB<@tUw=cZL(aVA-M+bjfuC^WGYm(R7!M|ZRbam;L^6o;7G==4djZ% zkB2YGb_(p@@mR?Lz{?_mRGD9r7wKaD*s0wlB6Lp>nu?!ANES!n`B}e=|Gpw2-f4r2 zZ>a)mc9PHvSGebrG`NJ|TTD4#x@?n`pMs2tHUZyT&x8e%Lz4i8En4Fk>#4|ppR})p z2x9fOmfvVd(x57U!P>03rY1ckfgh zU??L5l&z#Esk-?IK+b`C4_5^qHfFbxsSg0@_p2v#R=-ZahlnpRo1~&_8!$+&UhaKP z#Qrrw12yF&!I>pIy9>i0EHd8r&dFYnK#UmC#pG6SY0p3ShjWZfMS`Sa^}AY)^b0d* z>(m`~0HM$3kM}si0spuQrBn?rpuV9d$*h;*JO?h%y;dqrGn?^oNcBWf;=LOL_cZh0 zJNlt@8xqfnc;Jn}&e-$gYNWyp4s8=V)+ZRxiV`RrGX|E)7qoie7XUm0VD4V*l7gyS z>R3`jMi*!w_|Z_p&DK}HAM+veoY`bggk*6{4*;{c0@%p;9UnRxo-tug10v)A+zcVU zr6XNN_G7{rG2#iq+FG_7w$B#!Y3O1?z4f^FtWTh>R{@N6v3Q4_LCD_mdUR?B5#I1} z87#?dsgPBxbAsROx1XU@ZPhfbxGv%%u*1&&PnblC0Y}YOFcxRAc_-LnGAqgumm+Y0 z#ndu3(-i<2BtkF&sAJPGnB3fcOju#*(g~cH2f&G=j++-~-@~AR{~)C4MCzKA+;Sey zI7a^?t59L&nPx=LIb0EN^dDMz?=+Dp92M-^CMR%Ixu*aR%`v&0lz4fEod`5u0MuI> z430r6ni_C#0B{4i9AjI{x&_YKjK8Ght9t!(H1i;!91-^f5N}opl++808Uw&BMKfFa z7%C}y#|Hz!CZ!H-1D>}}5Z`J5@lBL`oOz*gKmWPea;|uffq!6d(|DvR^+51bHzrEU z`~P=ElccXVkEv?`&z@8cxKhGRR1XL@N78@t;KW2}YOC-t3S9j{knN$a#|rTsVBED? z1K2PYbkQe$6S(i{(Er%(!1?*2T_<+_f!nbh*S$rNXEqN7KWZti_vq;qZdd6%hO}?l zxh zfWARuurW0!dT-KLt$M65HYmlw{g~16TiWv{ssyR~u5+^Q_J}u1zHRm+G5=W>Ie!2Z zRNbwy_ytIwiU92a49BX^_6D>bNUjvuD*+6wxSenX3;)S@RkhafB3D2M0qBP?K{5$v z7>FJd8Tm67xeX-MqL<%p%)TAUa?CJjKChCA%UW(WXVAYyYs1I#JVR$=d}s@G>j zY^q4M2*aM>`Q>h_%8{Ok`+BCmYR9pD3VH)D>Tz?%@%}yR!9GtuZXykym@g|FH`17A zm0Q&4pC}h{gM)<92FPVnF15s>Sloy~@(p3fW0iu;s*nnQ0HXbv8;G{~9VX$>)~w^k z1VITX8!f=BU$OuY4OnI)0@aeSL<_qyf;9a$>6olw(VuwUqroK}0UfkqTR43?3V8>9F=C^g--X@DdOyV-ppS`!Ei=s9*M__!Sh`a;}%&Fe(gk&8;CGaQIx`CEHQCF{s#oZqhrodU8a1DGW3t2#&dmYw{Z{UmfDL-MD2RjLh1DLZ9i_94J ze?krkR3a6A4YuM5Iuf!z!pse_y8aQNg^98)p%gF}K7TE!H|fg5$^}7U%NZ7!EMgB7 z=q}-iFQnEZ+VHo(-GHhJHlMUj5v{{F!(%$wM|nztIYh*ZP#Mv;oS$TJ^=-po+a4!| zj8lL|Yrs>n6VgTfMKK)CrPLfaro!5!jJ_Z1jkuQ@b*GDx%nyJMV$ed zy=Om$AN1*ry}3)gkOz%i*fU^)QQt3EUIkFq4)Wu1JUF!w(TFd)bSwO$GeGBIuNwfZ k8i*k}AVy-778`t@V4dLWsfE7M1pb7;l{6I#@0tYsAKq>Y`2YX_ literal 0 HcmV?d00001 diff --git a/domain/BUILD.bazel b/domain/BUILD.bazel index 4b575f4dc63e0..97fced3ad05d4 100644 --- a/domain/BUILD.bazel +++ b/domain/BUILD.bazel @@ -6,6 +6,7 @@ go_library( "domain.go", "domain_sysvars.go", "domainctx.go", + "historical_stats.go", "optimize_trace.go", "plan_replayer.go", "plan_replayer_dump.go", diff --git a/domain/domain.go b/domain/domain.go index b900cf3eb8d3a..0f0425178f06f 100644 --- a/domain/domain.go +++ b/domain/domain.go @@ -17,7 +17,9 @@ package domain import ( "context" "fmt" + "math" "math/rand" + "sort" "strconv" "strings" "sync" @@ -117,6 +119,7 @@ type Domain struct { planReplayerHandle *planReplayerHandle expiredTimeStamp4PC types.Time logBackupAdvancer *daemon.OwnerDaemon + historicalStatsWorker *HistoricalStatsWorker serverID uint64 serverIDSession *concurrency.Session @@ -1106,8 +1109,12 @@ func (do *Domain) closestReplicaReadCheckLoop(ctx context.Context, pdClient pd.C } } +// Periodically check and update the replica-read status when `tidb_replica_read` is set to "closest-adaptive" +// We disable "closest-adaptive" in following conditions to ensure the read traffic is evenly distributed across +// all AZs: +// - There are no TiKV servers in the AZ of this tidb instance +// - The AZ if this tidb contains more tidb than other AZ and this tidb's id is the bigger one. func (do *Domain) checkReplicaRead(ctx context.Context, pdClient pd.Client) error { - // fast path do.sysVarCache.RLock() replicaRead := do.sysVarCache.global[variable.TiDBReplicaRead] do.sysVarCache.RUnlock() @@ -1116,6 +1123,24 @@ func (do *Domain) checkReplicaRead(ctx context.Context, pdClient pd.Client) erro logutil.BgLogger().Debug("closest replica read is not enabled, skip check!", zap.String("mode", replicaRead)) return nil } + + serverInfo, err := infosync.GetServerInfo() + if err != nil { + return err + } + zone := "" + for k, v := range serverInfo.Labels { + if k == placement.DCLabelKey && v != "" { + zone = v + break + } + } + if zone == "" { + logutil.BgLogger().Debug("server contains no 'zone' label, disable closest replica read", zap.Any("labels", serverInfo.Labels)) + variable.SetEnableAdaptiveReplicaRead(false) + return nil + } + stores, err := pdClient.GetAllStores(ctx, pd.WithExcludeTombstone()) if err != nil { return err @@ -1135,32 +1160,48 @@ func (do *Domain) checkReplicaRead(ctx context.Context, pdClient pd.Client) erro } } - enabled := false - // if stores don't have zone labels or are distribued in 1 zone, just disable cloeset replica read. - if len(storeZones) > 1 { - enabled = true - servers, err := infosync.GetAllServerInfo(ctx) - if err != nil { - return err - } - for _, s := range servers { - if v, ok := s.Labels[placement.DCLabelKey]; ok && v != "" { - if _, ok := storeZones[v]; !ok { - enabled = false - break - } + // no stores in this AZ + if _, ok := storeZones[zone]; !ok { + variable.SetEnableAdaptiveReplicaRead(false) + return nil + } + + servers, err := infosync.GetAllServerInfo(ctx) + if err != nil { + return err + } + svrIdsInThisZone := make([]string, 0) + for _, s := range servers { + if v, ok := s.Labels[placement.DCLabelKey]; ok && v != "" { + if _, ok := storeZones[v]; ok { storeZones[v] += 1 - } - } - if enabled { - for _, count := range storeZones { - if count == 0 { - enabled = false - break + if v == zone { + svrIdsInThisZone = append(svrIdsInThisZone, s.ID) } } } } + enabledCount := math.MaxInt + for _, count := range storeZones { + if count < enabledCount { + enabledCount = count + } + } + // sort tidb in the same AZ by ID and disable the tidb with bigger ID + // because ID is unchangeable, so this is a simple and stable algorithm to select + // some instances across all tidb servers. + if enabledCount < len(svrIdsInThisZone) { + sort.Slice(svrIdsInThisZone, func(i, j int) bool { + return strings.Compare(svrIdsInThisZone[i], svrIdsInThisZone[j]) < 0 + }) + } + enabled := true + for _, s := range svrIdsInThisZone[enabledCount:] { + if s == serverInfo.ID { + enabled = false + break + } + } if variable.SetEnableAdaptiveReplicaRead(enabled) { logutil.BgLogger().Info("tidb server adaptive closest replica read is changed", zap.Bool("enable", enabled)) @@ -1546,26 +1587,45 @@ func (do *Domain) SetupPlanReplayerHandle(collectorSctx, dumperSctx sessionctx.C } } +// SetupHistoricalStatsWorker setups worker +func (do *Domain) SetupHistoricalStatsWorker(ctx sessionctx.Context) { + do.historicalStatsWorker = &HistoricalStatsWorker{ + tblCH: make(chan int64, 16), + sctx: ctx, + } +} + // SetupDumpFileGCChecker setup sctx func (do *Domain) SetupDumpFileGCChecker(ctx sessionctx.Context) { do.dumpFileGcChecker.setupSctx(ctx) } -var planReplayerHandleLease = 10 * time.Second +var planReplayerHandleLease atomic.Uint64 + +func init() { + planReplayerHandleLease.Store(uint64(10 * time.Second)) + enableDumpHistoricalStats.Store(true) +} // DisablePlanReplayerBackgroundJob4Test disable plan replayer handle for test func DisablePlanReplayerBackgroundJob4Test() { - planReplayerHandleLease = 0 + planReplayerHandleLease.Store(0) +} + +// DisableDumpHistoricalStats4Test disable historical dump worker for test +func DisableDumpHistoricalStats4Test() { + enableDumpHistoricalStats.Store(false) } // StartPlanReplayerHandle start plan replayer handle job func (do *Domain) StartPlanReplayerHandle() { - if planReplayerHandleLease < 1 { + lease := planReplayerHandleLease.Load() + if lease < 1 { return } do.wg.Add(2) go func() { - tikcer := time.NewTicker(planReplayerHandleLease) + tikcer := time.NewTicker(time.Duration(lease)) defer func() { tikcer.Stop() do.wg.Done() @@ -1628,6 +1688,40 @@ func (do *Domain) DumpFileGcCheckerLoop() { }() } +// GetHistoricalStatsWorker gets historical workers +func (do *Domain) GetHistoricalStatsWorker() *HistoricalStatsWorker { + return do.historicalStatsWorker +} + +// EnableDumpHistoricalStats used to control whether enbale dump stats for unit test +var enableDumpHistoricalStats atomic.Bool + +// StartHistoricalStatsWorker start historical workers running +func (do *Domain) StartHistoricalStatsWorker() { + if !enableDumpHistoricalStats.Load() { + return + } + do.wg.Add(1) + go func() { + defer func() { + do.wg.Done() + logutil.BgLogger().Info("HistoricalStatsWorker exited.") + util.Recover(metrics.LabelDomain, "HistoricalStatsWorkerLoop", nil, false) + }() + for { + select { + case <-do.exit: + return + case tblID := <-do.historicalStatsWorker.tblCH: + err := do.historicalStatsWorker.DumpHistoricalStats(tblID, do.StatsHandle()) + if err != nil { + logutil.BgLogger().Warn("dump historical stats failed", zap.Error(err), zap.Int64("tableID", tblID)) + } + } + } + }() +} + // StatsHandle returns the statistic handle. func (do *Domain) StatsHandle() *handle.Handle { return (*handle.Handle)(atomic.LoadPointer(&do.statsHandle)) @@ -1777,7 +1871,7 @@ func (do *Domain) loadStatsWorker() { t := time.Now() err := statsHandle.InitStats(do.InfoSchema()) if err != nil { - logutil.BgLogger().Debug("init stats info failed", zap.Error(err)) + logutil.BgLogger().Error("init stats info failed", zap.Duration("take time", time.Since(t)), zap.Error(err)) } else { logutil.BgLogger().Info("init stats info time", zap.Duration("take time", time.Since(t))) } @@ -1863,7 +1957,7 @@ func (do *Domain) updateStatsWorker(ctx sessionctx.Context, owner owner.Manager) case t := <-statsHandle.DDLEventCh(): err := statsHandle.HandleDDLEvent(t) if err != nil { - logutil.BgLogger().Debug("handle ddl event failed", zap.Error(err)) + logutil.BgLogger().Error("handle ddl event failed", zap.String("event", t.String()), zap.Error(err)) } case <-deltaUpdateTicker.C: err := statsHandle.DumpStatsDeltaToKV(handle.DumpDelta) diff --git a/domain/domain_test.go b/domain/domain_test.go index 621f0fb2c431f..c117ac2244b2e 100644 --- a/domain/domain_test.go +++ b/domain/domain_test.go @@ -17,6 +17,8 @@ package domain import ( "context" "crypto/tls" + "encoding/json" + "fmt" "net" "runtime" "testing" @@ -247,7 +249,29 @@ func TestClosestReplicaReadChecker(t *testing.T) { } dom.sysVarCache.Unlock() - require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/domain/infosync/mockGetAllServerInfo", `return("")`)) + makeFailpointRes := func(v interface{}) string { + bytes, err := json.Marshal(v) + require.NoError(t, err) + return fmt.Sprintf("return(`%s`)", string(bytes)) + } + + mockedAllServerInfos := map[string]*infosync.ServerInfo{ + "s1": { + ID: "s1", + Labels: map[string]string{ + "zone": "zone1", + }, + }, + "s2": { + ID: "s2", + Labels: map[string]string{ + "zone": "zone2", + }, + }, + } + + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/domain/infosync/mockGetAllServerInfo", makeFailpointRes(mockedAllServerInfos))) + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/domain/infosync/mockGetServerInfo", makeFailpointRes(mockedAllServerInfos["s2"]))) stores := []*metapb.Store{ { @@ -304,8 +328,77 @@ func TestClosestReplicaReadChecker(t *testing.T) { require.False(t, variable.IsAdaptiveReplicaReadEnabled()) } + // partial matches + mockedAllServerInfos = map[string]*infosync.ServerInfo{ + "s1": { + ID: "s1", + Labels: map[string]string{ + "zone": "zone1", + }, + }, + "s2": { + ID: "s2", + Labels: map[string]string{ + "zone": "zone2", + }, + }, + "s22": { + ID: "s22", + Labels: map[string]string{ + "zone": "zone2", + }, + }, + "s3": { + ID: "s3", + Labels: map[string]string{ + "zone": "zone3", + }, + }, + "s4": { + ID: "s4", + Labels: map[string]string{ + "zone": "zone4", + }, + }, + } + pdClient.stores = stores + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/domain/infosync/mockGetAllServerInfo", makeFailpointRes(mockedAllServerInfos))) + cases := []struct { + id string + matches bool + }{ + { + id: "s1", + matches: true, + }, + { + id: "s2", + matches: true, + }, + { + id: "s22", + matches: false, + }, + { + id: "s3", + matches: true, + }, + { + id: "s4", + matches: false, + }, + } + for _, c := range cases { + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/domain/infosync/mockGetServerInfo", makeFailpointRes(mockedAllServerInfos[c.id]))) + variable.SetEnableAdaptiveReplicaRead(!c.matches) + err = dom.checkReplicaRead(ctx, pdClient) + require.Nil(t, err) + require.Equal(t, c.matches, variable.IsAdaptiveReplicaReadEnabled()) + } + variable.SetEnableAdaptiveReplicaRead(true) require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/domain/infosync/mockGetAllServerInfo")) + require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/domain/infosync/mockGetServerInfo")) } type mockInfoPdClient struct { diff --git a/domain/globalconfigsync/globalconfig_test.go b/domain/globalconfigsync/globalconfig_test.go index c7dab0064dedb..d6013f2887693 100644 --- a/domain/globalconfigsync/globalconfig_test.go +++ b/domain/globalconfigsync/globalconfig_test.go @@ -88,19 +88,23 @@ func TestStoreGlobalConfig(t *testing.T) { _, err = se.Execute(context.Background(), "set @@global.tidb_enable_top_sql=1;") require.NoError(t, err) + _, err = se.Execute(context.Background(), "set @@global.tidb_source_id=2;") + require.NoError(t, err) for i := 0; i < 20; i++ { time.Sleep(100 * time.Millisecond) client := store.(kv.StorageWithPD).GetPDClient() // enable top sql will be translated to enable_resource_metering - items, err := client.LoadGlobalConfig(context.Background(), []string{"enable_resource_metering"}) + items, err := client.LoadGlobalConfig(context.Background(), []string{"enable_resource_metering", "source_id"}) require.NoError(t, err) - if len(items) == 1 && items[0].Value == "" { + if len(items) == 2 && items[0].Value == "" { continue } - require.Len(t, items, 1) + require.Len(t, items, 2) require.Equal(t, items[0].Name, "/global/config/enable_resource_metering") require.Equal(t, items[0].Value, "true") + require.Equal(t, items[1].Name, "/global/config/source_id") + require.Equal(t, items[1].Value, "2") return } require.Fail(t, "timeout for waiting global config synced") diff --git a/domain/historical_stats.go b/domain/historical_stats.go new file mode 100644 index 0000000000000..04d50608c58c4 --- /dev/null +++ b/domain/historical_stats.go @@ -0,0 +1,63 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package domain + +import ( + "github.com/pingcap/errors" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/statistics/handle" +) + +// HistoricalStatsWorker indicates for dump historical stats +type HistoricalStatsWorker struct { + tblCH chan int64 + sctx sessionctx.Context +} + +// SendTblToDumpHistoricalStats send tableID to worker to dump historical stats +func (w *HistoricalStatsWorker) SendTblToDumpHistoricalStats(tableID int64) { + w.tblCH <- tableID +} + +// DumpHistoricalStats dump stats by given tableID +func (w *HistoricalStatsWorker) DumpHistoricalStats(tableID int64, statsHandle *handle.Handle) error { + historicalStatsEnabled, err := statsHandle.CheckHistoricalStatsEnable() + if err != nil { + return errors.Errorf("check tidb_enable_historical_stats failed: %v", err) + } + if !historicalStatsEnabled { + return nil + } + sctx := w.sctx + is := GetDomain(sctx).InfoSchema() + tbl, existed := is.TableByID(tableID) + if !existed { + return errors.Errorf("cannot get table by id %d", tableID) + } + tblInfo := tbl.Meta() + dbInfo, existed := is.SchemaByTable(tblInfo) + if !existed { + return errors.Errorf("cannot get DBInfo by TableID %d", tableID) + } + if _, err := statsHandle.RecordHistoricalStatsToStorage(dbInfo.Name.O, tblInfo); err != nil { + return errors.Errorf("record table %s.%s's historical stats failed", dbInfo.Name.O, tblInfo.Name.O) + } + return nil +} + +// GetOneHistoricalStatsTable gets one tableID from channel, only used for test +func (w *HistoricalStatsWorker) GetOneHistoricalStatsTable() int64 { + return <-w.tblCH +} diff --git a/domain/infosync/info.go b/domain/infosync/info.go index a2af6c5dfa58f..c501d7f16d695 100644 --- a/domain/infosync/info.go +++ b/domain/infosync/info.go @@ -282,6 +282,11 @@ func SetMockTiFlash(tiflash *MockTiFlash) { // GetServerInfo gets self server static information. func GetServerInfo() (*ServerInfo, error) { + failpoint.Inject("mockGetServerInfo", func(v failpoint.Value) { + var res ServerInfo + err := json.Unmarshal([]byte(v.(string)), &res) + failpoint.Return(&res, err) + }) is, err := getGlobalInfoSyncer() if err != nil { return nil, err @@ -316,20 +321,10 @@ func (is *InfoSyncer) getServerInfoByID(ctx context.Context, id string) (*Server // GetAllServerInfo gets all servers static information from etcd. func GetAllServerInfo(ctx context.Context) (map[string]*ServerInfo, error) { - failpoint.Inject("mockGetAllServerInfo", func() { - res := map[string]*ServerInfo{ - "fa598405-a08e-4e74-83ff-75c30b1daedc": { - Labels: map[string]string{ - "zone": "zone1", - }, - }, - "ad84dbbd-5a50-4742-a73c-4f674d41d4bd": { - Labels: map[string]string{ - "zone": "zone2", - }, - }, - } - failpoint.Return(res, nil) + failpoint.Inject("mockGetAllServerInfo", func(val failpoint.Value) { + res := make(map[string]*ServerInfo) + err := json.Unmarshal([]byte(val.(string)), &res) + failpoint.Return(res, err) }) is, err := getGlobalInfoSyncer() if err != nil { diff --git a/domain/plan_replayer.go b/domain/plan_replayer.go index faab592950c64..f20db239a6ca4 100644 --- a/domain/plan_replayer.go +++ b/domain/plan_replayer.go @@ -370,6 +370,28 @@ func checkUnHandledReplayerTask(ctx context.Context, sctx sessionctx.Context, ta return true, nil } +// CheckPlanReplayerTaskExists checks whether plan replayer capture task exists already +func CheckPlanReplayerTaskExists(ctx context.Context, sctx sessionctx.Context, sqlDigest, planDigest string) (bool, error) { + exec := sctx.(sqlexec.SQLExecutor) + rs, err := exec.ExecuteInternal(ctx, fmt.Sprintf("select * from mysql.plan_replayer_task where sql_digest = '%v' and plan_digest = '%v'", + sqlDigest, planDigest)) + if err != nil { + return false, err + } + if rs == nil { + return false, nil + } + var rows []chunk.Row + defer terror.Call(rs.Close) + if rows, err = sqlexec.DrainRecordSet(ctx, rs, 8); err != nil { + return false, errors.Trace(err) + } + if len(rows) > 0 { + return true, nil + } + return false, nil +} + // PlanReplayerStatusRecord indicates record in mysql.plan_replayer_status type PlanReplayerStatusRecord struct { SQLDigest string diff --git a/domain/plan_replayer_dump.go b/domain/plan_replayer_dump.go index 195dae7b4a0b1..575d0bc35264e 100644 --- a/domain/plan_replayer_dump.go +++ b/domain/plan_replayer_dump.go @@ -166,6 +166,9 @@ func DumpPlanReplayerInfo(ctx context.Context, sctx sessionctx.Context, zw := zip.NewWriter(zf) records := generateRecords(task) defer func() { + if err != nil { + logutil.BgLogger().Error("dump plan replayer failed", zap.Error(err)) + } err = zw.Close() if err != nil { logutil.BgLogger().Error("Closing zip writer failed", zap.Error(err), zap.String("filename", fileName)) diff --git a/dumpling/export/BUILD.bazel b/dumpling/export/BUILD.bazel index 08cc7fe2e664e..c9aebfb577c8a 100644 --- a/dumpling/export/BUILD.bazel +++ b/dumpling/export/BUILD.bazel @@ -49,7 +49,6 @@ go_library( "@com_github_coreos_go_semver//semver", "@com_github_docker_go_units//:go-units", "@com_github_go_sql_driver_mysql//:mysql", - "@com_github_google_uuid//:uuid", "@com_github_pingcap_errors//:errors", "@com_github_pingcap_failpoint//:failpoint", "@com_github_pingcap_log//:log", diff --git a/dumpling/export/config.go b/dumpling/export/config.go index 57504e4e20882..741424b049175 100644 --- a/dumpling/export/config.go +++ b/dumpling/export/config.go @@ -4,6 +4,7 @@ package export import ( "context" + "crypto/tls" "encoding/json" "fmt" "net" @@ -15,7 +16,6 @@ import ( "github.com/coreos/go-semver/semver" "github.com/docker/go-units" "github.com/go-sql-driver/mysql" - "github.com/google/uuid" "github.com/pingcap/errors" "github.com/pingcap/failpoint" "github.com/pingcap/tidb/br/pkg/storage" @@ -103,7 +103,7 @@ type Config struct { User string Password string `json:"-"` Security struct { - DriveTLSName string `json:"-"` + TLS *tls.Config `json:"-"` CAPath string CertPath string KeyPath string @@ -219,8 +219,16 @@ func (conf *Config) GetDriverConfig(db string) *mysql.Config { driverCfg.WriteTimeout = 30 * time.Second driverCfg.InterpolateParams = true driverCfg.MaxAllowedPacket = 0 - if conf.Security.DriveTLSName != "" { - driverCfg.TLSConfig = conf.Security.DriveTLSName + if conf.Security.TLS != nil { + driverCfg.TLS = conf.Security.TLS + } else { + // Use TLS first. + driverCfg.AllowFallbackToPlaintext = true + /* #nosec G402 */ + driverCfg.TLS = &tls.Config{ + InsecureSkipVerify: true, + MinVersion: tls.VersionTLS10, + } } if conf.AllowCleartextPasswords { driverCfg.AllowCleartextPasswords = true @@ -653,7 +661,7 @@ func adjustConfig(conf *Config, fns ...func(*Config) error) error { return nil } -func registerTLSConfig(conf *Config) error { +func buildTLSConfig(conf *Config) error { tlsConfig, err := util.NewTLSConfig( util.WithCAPath(conf.Security.CAPath), util.WithCertAndKeyPath(conf.Security.CertPath, conf.Security.KeyPath), @@ -663,14 +671,8 @@ func registerTLSConfig(conf *Config) error { if err != nil { return errors.Trace(err) } - - if tlsConfig == nil { - return nil - } - - conf.Security.DriveTLSName = "dumpling" + uuid.NewString() - err = mysql.RegisterTLSConfig(conf.Security.DriveTLSName, tlsConfig) - return errors.Trace(err) + conf.Security.TLS = tlsConfig + return nil } func validateSpecifiedSQL(conf *Config) error { diff --git a/dumpling/export/dump.go b/dumpling/export/dump.go index 7e5a81e0f3ce1..291b02b30bff9 100644 --- a/dumpling/export/dump.go +++ b/dumpling/export/dump.go @@ -95,7 +95,7 @@ func NewDumper(ctx context.Context, conf *Config) (*Dumper, error) { }() err = adjustConfig(conf, - registerTLSConfig, + buildTLSConfig, validateSpecifiedSQL, adjustFileFormat) if err != nil { @@ -1264,9 +1264,6 @@ func (d *Dumper) Close() error { if d.dbHandle != nil { return d.dbHandle.Close() } - if d.conf.Security.DriveTLSName != "" { - mysql.DeregisterTLSConfig(d.conf.Security.DriveTLSName) - } return nil } diff --git a/dumpling/export/status_test.go b/dumpling/export/status_test.go index 14c08c7c36ba7..7c340b06dcf83 100644 --- a/dumpling/export/status_test.go +++ b/dumpling/export/status_test.go @@ -48,7 +48,7 @@ func TestSpeedRecorder(t *testing.T) { for _, tc := range testCases { time.Sleep(time.Duration(tc.spentTime) * time.Second) recentSpeed := speedRecorder.GetSpeed(tc.finished) - if math.Abs(tc.expected-recentSpeed) > 1 { + if math.Abs(tc.expected-recentSpeed)/tc.expected > 0.1 { require.FailNow(t, "speed is unexpected", "expected: %5.2f, recent: %5.2f", tc.expected, recentSpeed) } } diff --git a/dumpling/tests/basic/run.sh b/dumpling/tests/basic/run.sh index 11a738805275b..51e33de43fbcb 100644 --- a/dumpling/tests/basic/run.sh +++ b/dumpling/tests/basic/run.sh @@ -114,8 +114,8 @@ echo "expected panic 0, actual ${actual}" [ "$actual" = 0 ] # check stdout, should contain mysql error log -actual=$(grep -w "Error 1064: You have an error in your SQL syntax" ${DUMPLING_OUTPUT_DIR}/dumpling.log|wc -l) -echo "expect contain Error 1064, actual ${actual}" +actual=$(grep -w "You have an error in your SQL syntax" ${DUMPLING_OUTPUT_DIR}/dumpling.log|wc -l) +echo "expect contain error in SQL syntax, actual ${actual}" [ "$actual" -ge 1 ] # Test for consistency lock with empty database. diff --git a/dumpling/tests/e2e/run.sh b/dumpling/tests/e2e/run.sh index f5da32acc33e0..73b580ca594d9 100644 --- a/dumpling/tests/e2e/run.sh +++ b/dumpling/tests/e2e/run.sh @@ -37,4 +37,24 @@ run_lightning $cur/conf/lightning.toml # check mysql and tidb data check_sync_diff $cur/conf/diff_config.toml +# test e2e with compress option again + +# drop database on tidb +export DUMPLING_TEST_PORT=4000 +run_sql "drop database if exists $DB_NAME;" + +export DUMPLING_TEST_PORT=3306 + +# dumping +export DUMPLING_TEST_DATABASE=$DB_NAME +rm -rf $DUMPLING_OUTPUT_DIR +run_dumpling --compress "snappy" + +cat "$cur/conf/lightning.toml" +# use lightning import data to tidb +run_lightning $cur/conf/lightning.toml + +# check mysql and tidb data +check_sync_diff $cur/conf/diff_config.toml + diff --git a/dumpling/tests/e2e_csv/run.sh b/dumpling/tests/e2e_csv/run.sh index d80e321d9294a..9c5afaca469d7 100644 --- a/dumpling/tests/e2e_csv/run.sh +++ b/dumpling/tests/e2e_csv/run.sh @@ -24,6 +24,7 @@ run_sql_file "$DUMPLING_TEST_DIR/data/e2e_csv.t.sql" run() { echo "*** running subtest case ***" + echo "compress is $compress" echo "escape_backslash is $escape_backslash" echo "csv_delimiter is $csv_delimiter" echo "csv_separator is $csv_separator" @@ -36,7 +37,11 @@ run() { # dumping export DUMPLING_TEST_PORT=3306 export DUMPLING_TEST_DATABASE=$DB_NAME - run_dumpling --filetype="csv" --escape-backslash=$escape_backslash --csv-delimiter="$csv_delimiter" --csv-separator="$csv_separator" + rm -rf "$DUMPLING_OUTPUT_DIR" + if [ $compress = "space" ]; then + compress="" + fi + run_dumpling --filetype="csv" --escape-backslash=$escape_backslash --csv-delimiter="$csv_delimiter" --csv-separator="$csv_separator" --compress="$compress" # construct lightning configuration mkdir -p $DUMPLING_TEST_DIR/conf @@ -67,18 +72,22 @@ run() { escape_backslash_arr="true false" csv_delimiter_arr="\" '" csv_separator_arr=', a aa |*|' +compress_arr='space gzip snappy zstd' -for escape_backslash in $escape_backslash_arr +for compress in $compress_arr do - for csv_separator in $csv_separator_arr + for escape_backslash in $escape_backslash_arr do - for csv_delimiter in $csv_delimiter_arr + for csv_separator in $csv_separator_arr do - run + for csv_delimiter in $csv_delimiter_arr + do + run + done + if [ "$escape_backslash" = "true" ]; then + csv_delimiter="" + run + fi done - if [ "$escape_backslash" = "true" ]; then - csv_delimiter="" - run - fi done done diff --git a/dumpling/tests/non_exist_tables/run.sh b/dumpling/tests/non_exist_tables/run.sh index 78003069cce9d..180db04407f3a 100644 --- a/dumpling/tests/non_exist_tables/run.sh +++ b/dumpling/tests/non_exist_tables/run.sh @@ -21,6 +21,6 @@ rm -rf "$DUMPLING_OUTPUT_DIR" run_dumpling --consistency=lock --tables-list "$DB_NAME.$TABLE_NAME2" -L ${DUMPLING_OUTPUT_DIR}/dumpling.log set -e -actual=$(grep -w "Error 1146: Table 'non_exist_tables.t2' doesn't exist" ${DUMPLING_OUTPUT_DIR}/dumpling.log|wc -l) +actual=$(grep -w "Table 'non_exist_tables.t2' doesn't exist" ${DUMPLING_OUTPUT_DIR}/dumpling.log|wc -l) echo "expected 1 return error when specifying --tables-list with non-existing tables, actual ${actual}" [ $actual = 1 ] diff --git a/errno/errcode.go b/errno/errcode.go index 60257be0b76c9..7439a85f33d25 100644 --- a/errno/errcode.go +++ b/errno/errcode.go @@ -825,6 +825,7 @@ const ( ErrMaxExecTimeExceeded = 1907 ErrForeignKeyCascadeDepthExceeded = 3008 ErrInvalidFieldSize = 3013 + ErrPasswordExpireAnonymousUser = 3016 ErrInvalidArgumentForLogarithm = 3020 ErrAggregateOrderNonAggQuery = 3029 ErrUserLockWrongName = 3057 @@ -892,6 +893,7 @@ const ( ErrIllegalPrivilegeLevel = 3619 ErrCTEMaxRecursionDepth = 3636 ErrNotHintUpdatable = 3637 + ErrExistsInHistoryPassword = 3638 ErrForeignKeyCannotDropParent = 3730 ErrForeignKeyCannotUseVirtualColumn = 3733 ErrForeignKeyNoColumnInParent = 3734 @@ -1034,6 +1036,11 @@ const ( ErrGettingNoopVariable = 8145 ErrCannotMigrateSession = 8146 ErrLazyUniquenessCheckFailure = 8147 + ErrUnsupportedColumnInTTLConfig = 8148 + ErrTTLColumnCannotDrop = 8149 + ErrSetTTLEnableForNonTTLTable = 8150 + ErrTempTableNotAllowedWithTTL = 8151 + ErrUnsupportedTTLReferencedByFK = 8152 // Error codes used by TiDB ddl package ErrUnsupportedDDLOperation = 8200 @@ -1082,6 +1089,7 @@ const ( ErrPartitionColumnStatsMissing = 8244 ErrColumnInChange = 8245 ErrDDLSetting = 8246 + ErrIngestFailed = 8247 // TiKV/PD/TiFlash errors. ErrPDServerTimeout = 9001 diff --git a/errno/errname.go b/errno/errname.go index 8f5fd8542bd1a..9f9025e971418 100644 --- a/errno/errname.go +++ b/errno/errname.go @@ -783,7 +783,7 @@ var MySQLErrName = map[uint16]*mysql.ErrMessage{ ErrInnodbIndexCorrupt: mysql.Message("Index corrupt: %s", nil), ErrInvalidYearColumnLength: mysql.Message("Supports only YEAR or YEAR(4) column", nil), ErrNotValidPassword: mysql.Message("Your password does not satisfy the current policy requirements", nil), - ErrMustChangePassword: mysql.Message("You must SET PASSWORD before executing this statement", nil), + ErrMustChangePassword: mysql.Message("You must reset your password using ALTER USER statement before executing this statement", nil), ErrFkNoIndexChild: mysql.Message("Failed to add the foreign key constraint. Missing index for constraint '%s' in the foreign table '%s'", nil), ErrForeignKeyNoIndexInParent: mysql.Message("Failed to add the foreign key constraint. Missing index for constraint '%s' in the referenced table '%s'", nil), ErrFkFailAddSystem: mysql.Message("Failed to add the foreign key constraint '%s' to system tables", nil), @@ -840,6 +840,7 @@ var MySQLErrName = map[uint16]*mysql.ErrMessage{ ErrUnresolvedHintName: mysql.Message("Unresolved name '%s' for %s hint", nil), ErrForeignKeyCascadeDepthExceeded: mysql.Message("Foreign key cascade delete/update exceeds max depth of %v.", nil), ErrInvalidFieldSize: mysql.Message("Invalid size for column '%s'.", nil), + ErrPasswordExpireAnonymousUser: mysql.Message("The password for anonymous user cannot be expired.", nil), ErrInvalidArgumentForLogarithm: mysql.Message("Invalid argument for logarithm", nil), ErrAggregateOrderNonAggQuery: mysql.Message("Expression #%d of ORDER BY contains aggregate function and applies to the result of a non-aggregated query", nil), ErrIncorrectType: mysql.Message("Incorrect type for argument %s in function %s.", nil), @@ -887,6 +888,7 @@ var MySQLErrName = map[uint16]*mysql.ErrMessage{ ErrMaxExecTimeExceeded: mysql.Message("Query execution was interrupted, max_execution_time exceeded.", nil), ErrLockAcquireFailAndNoWaitSet: mysql.Message("Statement aborted because lock(s) could not be acquired immediately and NOWAIT is set.", nil), ErrNotHintUpdatable: mysql.Message("Variable '%s' cannot be set using SET_VAR hint.", nil), + ErrExistsInHistoryPassword: mysql.Message("Cannot use these credentials for '%s@%s' because they contradict the password history policy.", nil), ErrForeignKeyCannotDropParent: mysql.Message("Cannot drop table '%s' referenced by a foreign key constraint '%s' on table '%s'.", nil), ErrForeignKeyCannotUseVirtualColumn: mysql.Message("Foreign key '%s' uses virtual column '%s' which is not supported.", nil), ErrForeignKeyNoColumnInParent: mysql.Message("Failed to add the foreign key constraint. Missing column '%s' for constraint '%s' in the referenced table '%s'", nil), @@ -1029,6 +1031,11 @@ var MySQLErrName = map[uint16]*mysql.ErrMessage{ ErrGettingNoopVariable: mysql.Message("variable %s has no effect in TiDB", nil), ErrCannotMigrateSession: mysql.Message("cannot migrate the current session: %s", nil), ErrLazyUniquenessCheckFailure: mysql.Message("transaction aborted because lazy uniqueness check is enabled and an error occurred: %s", nil), + ErrUnsupportedColumnInTTLConfig: mysql.Message("Field '%-.192s' is of a not supported type for TTL config, expect DATETIME, DATE or TIMESTAMP", nil), + ErrTTLColumnCannotDrop: mysql.Message("Cannot drop column '%-.192s': needed in TTL config", nil), + ErrSetTTLEnableForNonTTLTable: mysql.Message("Cannot set TTL_ENABLE on a table without TTL config", nil), + ErrTempTableNotAllowedWithTTL: mysql.Message("Set TTL for temporary table is not allowed", nil), + ErrUnsupportedTTLReferencedByFK: mysql.Message("Set TTL for a table referenced by foreign key is not allowed", nil), ErrWarnOptimizerHintInvalidInteger: mysql.Message("integer value is out of range in '%s'", nil), ErrWarnOptimizerHintUnsupportedHint: mysql.Message("Optimizer hint %s is not supported by TiDB and is ignored", nil), @@ -1072,9 +1079,10 @@ var MySQLErrName = map[uint16]*mysql.ErrMessage{ ErrInvalidTableSample: mysql.Message("Invalid TABLESAMPLE: %s", nil), ErrJSONObjectKeyTooLong: mysql.Message("TiDB does not yet support JSON objects with the key length >= 65536", nil), - ErrPartitionStatsMissing: mysql.Message("Build table: %s global-level stats failed due to missing partition-level stats", nil), - ErrPartitionColumnStatsMissing: mysql.Message("Build table: %s global-level stats failed due to missing partition-level column stats, please run analyze table to refresh columns of all partitions", nil), + ErrPartitionStatsMissing: mysql.Message("Build global-level stats failed due to missing partition-level stats: %s", nil), + ErrPartitionColumnStatsMissing: mysql.Message("Build global-level stats failed due to missing partition-level column stats: %s, please run analyze table to refresh columns of all partitions", nil), ErrDDLSetting: mysql.Message("Error happened when enable/disable DDL: %s", nil), + ErrIngestFailed: mysql.Message("Ingest failed: %s", nil), ErrNotSupportedWithSem: mysql.Message("Feature '%s' is not supported when security enhanced mode is enabled", nil), ErrPlacementPolicyCheck: mysql.Message("Placement policy didn't meet the constraint, reason: %s", nil), diff --git a/errors.toml b/errors.toml index 31a56ef6b1d17..32b8d40e902b2 100644 --- a/errors.toml +++ b/errors.toml @@ -66,6 +66,11 @@ error = ''' restore met a invalid peer ''' +["BR:EBS:ErrRestoreRegionWithoutPeer"] +error = ''' +restore met a region without any peer +''' + ["BR:EBS:ErrRestoreTotalKVMismatch"] error = ''' restore total tikvs mismatch @@ -456,6 +461,11 @@ error = ''' update pd error ''' +["Lightning:PreCheck:ErrCheckCDCPiTR"] +error = ''' +check TiCDC/PiTR task error +''' + ["Lightning:PreCheck:ErrCheckCSVHeader"] error = ''' check csv header error @@ -1191,6 +1201,31 @@ error = ''' `%s` is unsupported on temporary tables. ''' +["ddl:8148"] +error = ''' +Field '%-.192s' is of a not supported type for TTL config, expect DATETIME, DATE or TIMESTAMP +''' + +["ddl:8149"] +error = ''' +Cannot drop column '%-.192s': needed in TTL config +''' + +["ddl:8150"] +error = ''' +Cannot set TTL_ENABLE on a table without TTL config +''' + +["ddl:8151"] +error = ''' +Set TTL for temporary table is not allowed +''' + +["ddl:8152"] +error = ''' +Set TTL for a table referenced by foreign key is not allowed +''' + ["ddl:8200"] error = ''' Unsupported shard_row_id_bits for table with primary key as row id @@ -1336,6 +1371,11 @@ error = ''' Error happened when enable/disable DDL: %s ''' +["ddl:8247"] +error = ''' +Ingest failed: %s +''' + ["domain:8027"] error = ''' Information schema is out of date: schema failed to update in 1 lease, please make sure TiDB can connect to TiKV @@ -1451,6 +1491,11 @@ error = ''' SET PASSWORD has no significance for user '%-.48s'@'%-.255s' as authentication plugin does not support it. ''' +["executor:1819"] +error = ''' +Your password does not satisfy the current policy requirements +''' + ["executor:1827"] error = ''' The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function. @@ -1461,6 +1506,11 @@ error = ''' Foreign key cascade delete/update exceeds max depth of %v. ''' +["executor:3016"] +error = ''' +The password for anonymous user cannot be expired. +''' + ["executor:3523"] error = ''' Unknown authorization ID %.256s @@ -1476,6 +1526,11 @@ error = ''' Recursive query aborted after %d iterations. Try increasing @@cte_max_recursion_depth to a larger value ''' +["executor:3638"] +error = ''' +Cannot use these credentials for '%s@%s' because they contradict the password history policy. +''' + ["executor:3929"] error = ''' Dynamic privilege '%s' is not registered with the server. @@ -2231,6 +2286,11 @@ error = ''' There is no such grant defined for user '%-.48s' on host '%-.255s' ''' +["privilege:1862"] +error = ''' +Your password has expired. To log in you must change it using a client that supports expired passwords. +''' + ["privilege:3530"] error = ''' %s is not granted to %s @@ -2726,6 +2786,11 @@ error = ''' Datetime function: %-.32s field overflow ''' +["types:1525"] +error = ''' +Incorrect %-.32s value: '%-.128s' +''' + ["types:1690"] error = ''' %s value is out of range in '%s' @@ -2773,12 +2838,12 @@ TiDB does not yet support JSON objects with the key length >= 65536 ["types:8131"] error = ''' -Build table: %s global-level stats failed due to missing partition-level stats +Build global-level stats failed due to missing partition-level stats: %s ''' ["types:8244"] error = ''' -Build table: %s global-level stats failed due to missing partition-level column stats, please run analyze table to refresh columns of all partitions +Build global-level stats failed due to missing partition-level column stats: %s, please run analyze table to refresh columns of all partitions ''' ["variable:1193"] diff --git a/executor/BUILD.bazel b/executor/BUILD.bazel index 6a300dbeaf654..7b1a4d603f993 100644 --- a/executor/BUILD.bazel +++ b/executor/BUILD.bazel @@ -121,6 +121,7 @@ go_library( "//parser/ast", "//parser/auth", "//parser/charset", + "//parser/format", "//parser/model", "//parser/mysql", "//parser/terror", @@ -177,6 +178,7 @@ go_library( "//util/mathutil", "//util/memory", "//util/mvmap", + "//util/password-validation", "//util/pdapi", "//util/plancodec", "//util/printer", @@ -267,7 +269,6 @@ go_test( "delete_test.go", "distsql_test.go", "executor_failpoint_test.go", - "executor_issue_test.go", "executor_pkg_test.go", "executor_required_rows_test.go", "executor_test.go", @@ -277,6 +278,7 @@ go_test( "explainfor_test.go", "grant_test.go", "hash_table_test.go", + "historical_stats_test.go", "hot_regions_history_table_test.go", "index_advise_test.go", "index_lookup_join_test.go", @@ -356,7 +358,6 @@ go_test( "//parser", "//parser/ast", "//parser/auth", - "//parser/charset", "//parser/model", "//parser/mysql", "//parser/terror", diff --git a/executor/adapter.go b/executor/adapter.go index 3dd0e0ce0877e..5f01aa51e0378 100644 --- a/executor/adapter.go +++ b/executor/adapter.go @@ -198,6 +198,7 @@ type TelemetryInfo struct { UseFlashbackToCluster bool PartitionTelemetry *PartitionTelemetryInfo AccountLockTelemetry *AccountLockTelemetryInfo + UseIndexMerge bool } // PartitionTelemetryInfo records table partition telemetry information during execution. @@ -215,6 +216,7 @@ type PartitionTelemetryInfo struct { UseCreateIntervalPartition bool UseAddIntervalPartition bool UseDropIntervalPartition bool + UseCompactTablePartition bool } // AccountLockTelemetryInfo records account lock/unlock information during execution @@ -467,8 +469,20 @@ func (a *ExecStmt) Exec(ctx context.Context) (_ sqlexec.RecordSet, err error) { if !ok { oriIso = "REPEATABLE-READ" } - terror.Log(sctx.GetSessionVars().SetSystemVar(variable.TiDBBuildStatsConcurrency, "1")) - sctx.GetSessionVars().SetDistSQLScanConcurrency(1) + autoConcurrency, err1 := sctx.GetSessionVars().GetSessionOrGlobalSystemVar(ctx, variable.TiDBAutoBuildStatsConcurrency) + terror.Log(err1) + if err1 == nil { + terror.Log(sctx.GetSessionVars().SetSystemVar(variable.TiDBBuildStatsConcurrency, autoConcurrency)) + } + sVal, err2 := sctx.GetSessionVars().GetSessionOrGlobalSystemVar(ctx, variable.TiDBSysProcScanConcurrency) + terror.Log(err2) + if err2 == nil { + concurrency, err3 := strconv.ParseInt(sVal, 10, 64) + terror.Log(err3) + if err3 == nil { + sctx.GetSessionVars().SetDistSQLScanConcurrency(int(concurrency)) + } + } sctx.GetSessionVars().SetIndexSerialScanConcurrency(1) terror.Log(sctx.GetSessionVars().SetSystemVar(variable.TxnIsolation, ast.ReadCommitted)) defer func() { @@ -591,10 +605,6 @@ func (a *ExecStmt) handleForeignKeyTrigger(ctx context.Context, e Executor, dept if !ok { return nil } - a.Ctx.GetSessionVars().StmtCtx.InHandleForeignKeyTrigger = true - defer func() { - a.Ctx.GetSessionVars().StmtCtx.InHandleForeignKeyTrigger = false - }() fkChecks := exec.GetFKChecks() for _, fkCheck := range fkChecks { err := fkCheck.doCheck(ctx) @@ -624,12 +634,26 @@ func (a *ExecStmt) handleForeignKeyTrigger(ctx context.Context, e Executor, dept // 4. `StmtCommit` to commit the kv change to transaction mem-buffer. // 5. If the foreign key cascade behaviour has more fk value need to be cascaded, go to step 1. func (a *ExecStmt) handleForeignKeyCascade(ctx context.Context, fkc *FKCascadeExec, depth int) error { + if a.Ctx.GetSessionVars().StmtCtx.RuntimeStatsColl != nil { + fkc.stats = &FKCascadeRuntimeStats{} + defer a.Ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(fkc.plan.ID(), fkc.stats) + } if len(fkc.fkValues) == 0 && len(fkc.fkUpdatedValuesMap) == 0 { return nil } if depth > maxForeignKeyCascadeDepth { return ErrForeignKeyCascadeDepthExceeded.GenWithStackByArgs(maxForeignKeyCascadeDepth) } + a.Ctx.GetSessionVars().StmtCtx.InHandleForeignKeyTrigger = true + defer func() { + a.Ctx.GetSessionVars().StmtCtx.InHandleForeignKeyTrigger = false + }() + if fkc.stats != nil { + start := time.Now() + defer func() { + fkc.stats.Total += time.Since(start) + }() + } for { e, err := fkc.buildExecutor(ctx) if err != nil || e == nil { diff --git a/executor/admin.go b/executor/admin.go index 1a0f5579281cc..a0484ce957b30 100644 --- a/executor/admin.go +++ b/executor/admin.go @@ -265,10 +265,11 @@ func (e *RecoverIndexExec) buildTableScan(ctx context.Context, txn kv.Transactio return nil, err } var builder distsql.RequestBuilder - builder.KeyRanges, err = buildRecoverIndexKeyRanges(e.ctx.GetSessionVars().StmtCtx, e.physicalID, startHandle) + keyRanges, err := buildRecoverIndexKeyRanges(e.ctx.GetSessionVars().StmtCtx, e.physicalID, startHandle) if err != nil { return nil, err } + builder.KeyRanges = kv.NewNonParitionedKeyRanges(keyRanges) kvReq, err := builder. SetDAGRequest(dagPB). SetStartTS(txn.StartTS()). @@ -737,7 +738,16 @@ func (e *CleanupIndexExec) buildIndexScan(ctx context.Context, txn kv.Transactio sc := e.ctx.GetSessionVars().StmtCtx var builder distsql.RequestBuilder ranges := ranger.FullRange() - kvReq, err := builder.SetIndexRanges(sc, e.physicalID, e.index.Meta().ID, ranges). + keyRanges, err := distsql.IndexRangesToKVRanges(sc, e.physicalID, e.index.Meta().ID, ranges, nil) + if err != nil { + return nil, err + } + err = keyRanges.SetToNonPartitioned() + if err != nil { + return nil, err + } + keyRanges.FirstPartitionRange()[0].StartKey = kv.Key(e.lastIdxKey).PrefixNext() + kvReq, err := builder.SetWrappedKeyRanges(keyRanges). SetDAGRequest(dagPB). SetStartTS(txn.StartTS()). SetKeepOrder(true). @@ -748,7 +758,6 @@ func (e *CleanupIndexExec) buildIndexScan(ctx context.Context, txn kv.Transactio return nil, err } - kvReq.KeyRanges[0].StartKey = kv.Key(e.lastIdxKey).PrefixNext() kvReq.Concurrency = 1 result, err := distsql.Select(ctx, e.ctx, kvReq, e.getIdxColTypes(), statistics.NewQueryFeedback(0, nil, 0, false)) if err != nil { diff --git a/executor/aggregate.go b/executor/aggregate.go index 771d928c9bbad..30b86164ec371 100644 --- a/executor/aggregate.go +++ b/executor/aggregate.go @@ -244,6 +244,9 @@ func (d *HashAggIntermData) getPartialResultBatch(_ *stmtctx.StatementContext, p // Close implements the Executor Close interface. func (e *HashAggExec) Close() error { + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.isUnparallelExec { var firstErr error e.childResult = nil @@ -1131,7 +1134,6 @@ func (e *HashAggExec) initRuntimeStats() { stats.PartialStats = make([]*AggWorkerStat, 0, stats.PartialConcurrency) stats.FinalStats = make([]*AggWorkerStat, 0, stats.FinalConcurrency) e.stats = stats - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } } diff --git a/executor/aggregate_test.go b/executor/aggregate_test.go index 1868802d65d8d..bd6366d6d115d 100644 --- a/executor/aggregate_test.go +++ b/executor/aggregate_test.go @@ -1088,6 +1088,14 @@ func TestIssue10608(t *testing.T) { tk.MustExec("insert into t values(508931), (508932)") tk.MustQuery("select (select /*+ stream_agg() */ group_concat(concat(123,'-')) from t where t.a = s.b group by t.a) as t from s;").Check(testkit.Rows("123-", "123-")) tk.MustQuery("select (select /*+ hash_agg() */ group_concat(concat(123,'-')) from t where t.a = s.b group by t.a) as t from s;").Check(testkit.Rows("123-", "123-")) + + tk.MustExec("CREATE TABLE `t49`(`c0` char(1) DEFAULT '1', `c2` char(1) DEFAULT NULL, UNIQUE KEY `c2` (`c2`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;") + tk.MustExec("INSERT INTO `t49` VALUES ('0','0'),('0','1');") + tk.MustExec("CREATE TABLE `t0` (`c0` blob DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;") + tk.MustExec("INSERT INTO `t0` VALUES (_binary ']'),(_binary '777926278'),(_binary '0.2136404982804636'),(_binary '1901362489'),(_binary '1558203848'),(''),(_binary '1830406335'),(''),(_binary '0'),(NULL),(_binary '601930250'),(_binary '1558203848'),(_binary '-122008948'),(_binary '-2053608489'),(_binary 'hb/vt <7'),(_binary 'RC&2*'),(_binary '1'),(_binary '-1722334316'),(_binary '1830406335'),(_binary '1372126029'),(_binary '882291196'),(NULL),(_binary '-399693596');") + tk.MustExec("CREATE ALGORITHM=TEMPTABLE DEFINER=`root`@`%` SQL SECURITY DEFINER VIEW `v0` (`c0`, `c1`, `c2`) AS SELECT NULL AS `NULL`,`t49`.`c2` AS `c2`,(((CASE _UTF8MB4'I되EkfIO퀶' WHEN NULL THEN `t49`.`c0` WHEN `t49`.`c2` THEN `t0`.`c0` ELSE (CASE `t49`.`c0` WHEN _UTF8MB4'%' THEN 1035293362 ELSE _UTF8MB4',' END) END))<<(`t49`.`c0`)) AS `(((CASE 'I되EkfIO퀶' WHEN NULL THEN t49.c0 WHEN t49.c2 THEN t0.c0 ELSE (CASE t49.c0 WHEN '%' THEN 1035293362 ELSE ',' END ) END ))<<(t49.c0))` FROM (`t0`) JOIN `t49` WHERE TRUE;") + tk.MustQuery("SELECT /*+ STREAM_AGG()*/v0.c0 FROM t49, v0 LEFT OUTER JOIN t0 ON ('Iw') GROUP BY true;"). + Check(testkit.Rows("")) } func TestIssue12759HashAggCalledByApply(t *testing.T) { diff --git a/executor/analyze.go b/executor/analyze.go index da74d8248a90c..28a0a44066c62 100644 --- a/executor/analyze.go +++ b/executor/analyze.go @@ -267,20 +267,8 @@ func recordHistoricalStats(sctx sessionctx.Context, tableID int64) error { if !historicalStatsEnabled { return nil } - - is := domain.GetDomain(sctx).InfoSchema() - tbl, existed := is.TableByID(tableID) - if !existed { - return errors.Errorf("cannot get table by id %d", tableID) - } - tblInfo := tbl.Meta() - dbInfo, existed := is.SchemaByTable(tblInfo) - if !existed { - return errors.Errorf("cannot get DBInfo by TableID %d", tableID) - } - if _, err := statsHandle.RecordHistoricalStatsToStorage(dbInfo.Name.O, tblInfo); err != nil { - return errors.Errorf("record table %s.%s's historical stats failed", dbInfo.Name.O, tblInfo.Name.O) - } + historicalStatsWorker := domain.GetDomain(sctx).GetHistoricalStatsWorker() + historicalStatsWorker.SendTblToDumpHistoricalStats(tableID) return nil } @@ -325,8 +313,9 @@ func (e *AnalyzeExec) handleResultsError(ctx context.Context, concurrency int, n handleGlobalStats(needGlobalStats, globalStatsMap, results) if err1 := statsHandle.SaveTableStatsToStorage(results, e.ctx.GetSessionVars().EnableAnalyzeSnapshot); err1 != nil { + tableID := results.TableID.TableID err = err1 - logutil.Logger(ctx).Error("save table stats to storage failed", zap.Error(err)) + logutil.Logger(ctx).Error("save table stats to storage failed", zap.Error(err), zap.Int64("tableID", tableID)) finishJobWithLog(e.ctx, results.Job, err) } else { finishJobWithLog(e.ctx, results.Job, nil) diff --git a/executor/analyze_col_v2.go b/executor/analyze_col_v2.go index 68a02485c0048..1d9913d5f23e3 100644 --- a/executor/analyze_col_v2.go +++ b/executor/analyze_col_v2.go @@ -32,6 +32,7 @@ import ( "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/statistics" + "github.com/pingcap/tidb/table" "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util" @@ -187,7 +188,7 @@ func (e *AnalyzeColumnsExecV2) decodeSampleDataWithVirtualColumn( } } } - err := FillVirtualColumnValue(fieldTps, virtualColIdx, schema, e.colsInfo, e.ctx, chk) + err := table.FillVirtualColumnValue(fieldTps, virtualColIdx, schema.Columns, e.colsInfo, e.ctx, chk) if err != nil { return err } @@ -199,6 +200,27 @@ func (e *AnalyzeColumnsExecV2) decodeSampleDataWithVirtualColumn( return nil } +func printAnalyzeMergeCollectorLog(oldRootCount, newRootCount, subCount, tableID, partitionID int64, isPartition bool, info string, index int) { + if index < 0 { + logutil.BgLogger().Debug(info, + zap.Int64("tableID", tableID), + zap.Int64("partitionID", partitionID), + zap.Bool("isPartitionTable", isPartition), + zap.Int64("oldRootCount", oldRootCount), + zap.Int64("newRootCount", newRootCount), + zap.Int64("subCount", subCount)) + } else { + logutil.BgLogger().Debug(info, + zap.Int64("tableID", tableID), + zap.Int64("partitionID", partitionID), + zap.Bool("isPartitionTable", isPartition), + zap.Int64("oldRootCount", oldRootCount), + zap.Int64("newRootCount", newRootCount), + zap.Int64("subCount", subCount), + zap.Int("subCollectorIndex", index)) + } +} + func (e *AnalyzeColumnsExecV2) buildSamplingStats( ranges []*ranger.Range, needExtStats bool, @@ -235,7 +257,7 @@ func (e *AnalyzeColumnsExecV2) buildSamplingStats( e.samplingMergeWg = &util.WaitGroupWrapper{} e.samplingMergeWg.Add(statsConcurrency) for i := 0; i < statsConcurrency; i++ { - go e.subMergeWorker(mergeResultCh, mergeTaskCh, l, i == 0) + go e.subMergeWorker(mergeResultCh, mergeTaskCh, l, i) } if err = readDataAndSendTask(e.ctx, e.resultHandler, mergeTaskCh, e.memTracker); err != nil { return 0, nil, nil, nil, nil, getAnalyzePanicErr(err) @@ -255,7 +277,12 @@ func (e *AnalyzeColumnsExecV2) buildSamplingStats( continue } oldRootCollectorSize := rootRowCollector.Base().MemSize + oldRootCollectorCount := rootRowCollector.Base().Count rootRowCollector.MergeCollector(mergeResult.collector) + newRootCollectorCount := rootRowCollector.Base().Count + printAnalyzeMergeCollectorLog(oldRootCollectorCount, newRootCollectorCount, + mergeResult.collector.Base().Count, e.tableID.TableID, e.tableID.PartitionID, e.tableID.IsPartitionTable(), + "merge subMergeWorker in AnalyzeColumnsExecV2", -1) e.memTracker.Consume(rootRowCollector.Base().MemSize - oldRootCollectorSize - mergeResult.collector.Base().MemSize) } defer e.memTracker.Release(rootRowCollector.Base().MemSize) @@ -544,7 +571,8 @@ func (e *AnalyzeColumnsExecV2) buildSubIndexJobForSpecialIndex(indexInfos []*mod return tasks } -func (e *AnalyzeColumnsExecV2) subMergeWorker(resultCh chan<- *samplingMergeResult, taskCh <-chan []byte, l int, isClosedChanThread bool) { +func (e *AnalyzeColumnsExecV2) subMergeWorker(resultCh chan<- *samplingMergeResult, taskCh <-chan []byte, l int, index int) { + isClosedChanThread := index == 0 defer func() { if r := recover(); r != nil { logutil.BgLogger().Error("analyze worker panicked", zap.Any("recover", r), zap.Stack("stack")) @@ -567,6 +595,13 @@ func (e *AnalyzeColumnsExecV2) subMergeWorker(resultCh chan<- *samplingMergeResu failpoint.Inject("mockAnalyzeSamplingMergeWorkerPanic", func() { panic("failpoint triggered") }) + failpoint.Inject("mockAnalyzeMergeWorkerSlowConsume", func(val failpoint.Value) { + times := val.(int) + for i := 0; i < times; i++ { + e.memTracker.Consume(5 << 20) + time.Sleep(100 * time.Millisecond) + } + }) retCollector := statistics.NewRowSampleCollector(int(e.analyzePB.ColReq.SampleSize), e.analyzePB.ColReq.GetSampleRate(), l) for i := 0; i < l; i++ { retCollector.Base().FMSketches = append(retCollector.Base().FMSketches, statistics.NewFMSketch(maxSketchSize)) @@ -589,7 +624,12 @@ func (e *AnalyzeColumnsExecV2) subMergeWorker(resultCh chan<- *samplingMergeResu subCollector.Base().FromProto(colResp.RowCollector, e.memTracker) UpdateAnalyzeJob(e.ctx, e.job, subCollector.Base().Count) oldRetCollectorSize := retCollector.Base().MemSize + oldRetCollectorCount := retCollector.Base().Count retCollector.MergeCollector(subCollector) + newRetCollectorCount := retCollector.Base().Count + printAnalyzeMergeCollectorLog(oldRetCollectorCount, newRetCollectorCount, subCollector.Base().Count, + e.tableID.TableID, e.tableID.PartitionID, e.TableID.IsPartitionTable(), + "merge subCollector in concurrency in AnalyzeColumnsExecV2", index) newRetCollectorSize := retCollector.Base().MemSize subCollectorSize := subCollector.Base().MemSize e.memTracker.Consume(newRetCollectorSize - oldRetCollectorSize - subCollectorSize) diff --git a/executor/analyze_global_stats.go b/executor/analyze_global_stats.go index 82c2678953285..46e9fdbf41544 100644 --- a/executor/analyze_global_stats.go +++ b/executor/analyze_global_stats.go @@ -73,10 +73,11 @@ func (e *AnalyzeExec) handleGlobalStats(ctx context.Context, needGlobalStats boo globalStatsID.tableID, info.isIndex, info.histIDs, tableAllPartitionStats) if err != nil { + logutil.BgLogger().Error("merge global stats failed", + zap.String("info", job.JobInfo), zap.Error(err), zap.Int64("tableID", tableID)) if types.ErrPartitionStatsMissing.Equal(err) || types.ErrPartitionColumnStatsMissing.Equal(err) { // When we find some partition-level stats are missing, we need to report warning. e.ctx.GetSessionVars().StmtCtx.AppendWarning(err) - return nil } return err } @@ -95,14 +96,15 @@ func (e *AnalyzeExec) handleGlobalStats(ctx context.Context, needGlobalStats boo true, ) if err != nil { - logutil.Logger(ctx).Error("save global-level stats to storage failed", zap.Error(err)) + logutil.Logger(ctx).Error("save global-level stats to storage failed", zap.String("info", job.JobInfo), + zap.Int64("histID", hg.ID), zap.Error(err), zap.Int64("tableID", tableID)) } // Dump stats to historical storage. - if err := recordHistoricalStats(e.ctx, globalStatsID.tableID); err != nil { - logutil.BgLogger().Error("record historical stats failed", zap.Error(err)) + if err1 := recordHistoricalStats(e.ctx, globalStatsID.tableID); err1 != nil { + logutil.BgLogger().Error("record historical stats failed", zap.String("info", job.JobInfo), zap.Int64("histID", hg.ID), zap.Error(err1)) } } - return nil + return err }() FinishAnalyzeMergeJob(e.ctx, job, mergeStatsErr) } diff --git a/executor/analyze_utils.go b/executor/analyze_utils.go index c6d4886d79b7c..cdf47373d29f0 100644 --- a/executor/analyze_utils.go +++ b/executor/analyze_utils.go @@ -17,6 +17,7 @@ package executor import ( "context" "strconv" + "strings" "sync" "github.com/pingcap/errors" @@ -24,6 +25,7 @@ import ( "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/statistics" + "github.com/pingcap/tidb/util/memory" "go.uber.org/atomic" ) @@ -45,8 +47,13 @@ func isAnalyzeWorkerPanic(err error) bool { } func getAnalyzePanicErr(r interface{}) error { - if msg, ok := r.(string); ok && msg == globalPanicAnalyzeMemoryExceed { - return errAnalyzeOOM + if msg, ok := r.(string); ok { + if msg == globalPanicAnalyzeMemoryExceed { + return errAnalyzeOOM + } + if strings.Contains(msg, memory.PanicMemoryExceed) { + return errors.Errorf(msg, errAnalyzeOOM) + } } if err, ok := r.(error); ok { if err.Error() == globalPanicAnalyzeMemoryExceed { diff --git a/executor/analyzetest/analyze_test.go b/executor/analyzetest/analyze_test.go index c5043935e1650..e3bf9d51d9260 100644 --- a/executor/analyzetest/analyze_test.go +++ b/executor/analyzetest/analyze_test.go @@ -16,7 +16,6 @@ package analyzetest import ( "context" - "encoding/json" "fmt" "strconv" "strings" @@ -2163,102 +2162,6 @@ func TestAnalyzeColumnsErrorAndWarning(t *testing.T) { } } -func TestRecordHistoryStatsAfterAnalyze(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@tidb_analyze_version = 2") - tk.MustExec("set global tidb_enable_historical_stats = 0") - tk.MustExec("use test") - tk.MustExec("drop table if exists t") - tk.MustExec("create table t(a int, b varchar(10))") - - h := dom.StatsHandle() - is := dom.InfoSchema() - tableInfo, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) - require.NoError(t, err) - - // 1. switch off the tidb_enable_historical_stats, and there is no records in table `mysql.stats_history` - rows := tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", tableInfo.Meta().ID)).Rows() - num, _ := strconv.Atoi(rows[0][0].(string)) - require.Equal(t, num, 0) - - tk.MustExec("analyze table t with 2 topn") - rows = tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", tableInfo.Meta().ID)).Rows() - num, _ = strconv.Atoi(rows[0][0].(string)) - require.Equal(t, num, 0) - - // 2. switch on the tidb_enable_historical_stats and do analyze - tk.MustExec("set global tidb_enable_historical_stats = 1") - defer tk.MustExec("set global tidb_enable_historical_stats = 0") - tk.MustExec("analyze table t with 2 topn") - rows = tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", tableInfo.Meta().ID)).Rows() - num, _ = strconv.Atoi(rows[0][0].(string)) - require.GreaterOrEqual(t, num, 1) - - // 3. dump current stats json - dumpJSONTable, err := h.DumpStatsToJSON("test", tableInfo.Meta(), nil, true) - require.NoError(t, err) - jsOrigin, _ := json.Marshal(dumpJSONTable) - - // 4. get the historical stats json - rows = tk.MustQuery(fmt.Sprintf("select * from mysql.stats_history where table_id = '%d' and create_time = ("+ - "select create_time from mysql.stats_history where table_id = '%d' order by create_time desc limit 1) "+ - "order by seq_no", tableInfo.Meta().ID, tableInfo.Meta().ID)).Rows() - num = len(rows) - require.GreaterOrEqual(t, num, 1) - data := make([][]byte, num) - for i, row := range rows { - data[i] = []byte(row[1].(string)) - } - jsonTbl, err := handle.BlocksToJSONTable(data) - require.NoError(t, err) - jsCur, err := json.Marshal(jsonTbl) - require.NoError(t, err) - // 5. historical stats must be equal to the current stats - require.JSONEq(t, string(jsOrigin), string(jsCur)) -} - -func TestRecordHistoryStatsMetaAfterAnalyze(t *testing.T) { - store, dom := testkit.CreateMockStoreAndDomain(t) - - tk := testkit.NewTestKit(t, store) - tk.MustExec("set @@tidb_analyze_version = 2") - tk.MustExec("set global tidb_enable_historical_stats = 0") - tk.MustExec("use test") - tk.MustExec("drop table if exists t") - tk.MustExec("create table t(a int, b int)") - tk.MustExec("analyze table test.t") - - h := dom.StatsHandle() - is := dom.InfoSchema() - tableInfo, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) - require.NoError(t, err) - - // 1. switch off the tidb_enable_historical_stats, and there is no record in table `mysql.stats_meta_history` - tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_meta_history where table_id = '%d'", tableInfo.Meta().ID)).Check(testkit.Rows("0")) - // insert demo tuples, and there is no record either. - insertNums := 5 - for i := 0; i < insertNums; i++ { - tk.MustExec("insert into test.t (a,b) values (1,1), (2,2), (3,3)") - err := h.DumpStatsDeltaToKV(handle.DumpDelta) - require.NoError(t, err) - } - tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_meta_history where table_id = '%d'", tableInfo.Meta().ID)).Check(testkit.Rows("0")) - - // 2. switch on the tidb_enable_historical_stats and insert tuples to produce count/modifyCount delta change. - tk.MustExec("set global tidb_enable_historical_stats = 1") - defer tk.MustExec("set global tidb_enable_historical_stats = 0") - - for i := 0; i < insertNums; i++ { - tk.MustExec("insert into test.t (a,b) values (1,1), (2,2), (3,3)") - err := h.DumpStatsDeltaToKV(handle.DumpDelta) - require.NoError(t, err) - } - tk.MustQuery(fmt.Sprintf("select modify_count, count from mysql.stats_meta_history where table_id = '%d' order by create_time", tableInfo.Meta().ID)).Sort().Check( - testkit.Rows("18 18", "21 21", "24 24", "27 27", "30 30")) -} - func checkAnalyzeStatus(t *testing.T, tk *testkit.TestKit, jobInfo, status, failReason, comment string, timeLimit int64) { rows := tk.MustQuery("show analyze status where table_schema = 'test' and table_name = 't' and partition_name = ''").Rows() require.Equal(t, 1, len(rows), comment) @@ -2836,8 +2739,8 @@ PARTITION BY RANGE ( a ) ( tk.MustQuery("show warnings").Sort().Check(testkit.Rows( "Note 1105 Analyze use auto adjusted sample rate 1.000000 for table test.t's partition p0", "Warning 1105 Ignore columns and options when analyze partition in dynamic mode", - "Warning 8131 Build table: `t` global-level stats failed due to missing partition-level stats", - "Warning 8131 Build table: `t` index: `idx` global-level stats failed due to missing partition-level stats", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", )) tk.MustQuery("select * from t where a > 1 and b > 1 and c > 1 and d > 1") require.NoError(t, h.LoadNeededHistograms()) @@ -2849,8 +2752,8 @@ PARTITION BY RANGE ( a ) ( tk.MustExec("analyze table t partition p0") tk.MustQuery("show warnings").Sort().Check(testkit.Rows( "Note 1105 Analyze use auto adjusted sample rate 1.000000 for table test.t's partition p0", - "Warning 8131 Build table: `t` global-level stats failed due to missing partition-level stats", - "Warning 8131 Build table: `t` index: `idx` global-level stats failed due to missing partition-level stats", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", )) tbl = h.GetTableStats(tableInfo) require.Equal(t, tbl.Version, lastVersion) // global stats not updated @@ -2904,7 +2807,7 @@ PARTITION BY RANGE ( a ) ( tk.MustExec("analyze table t partition p1 columns a,b,d with 1 topn, 3 buckets") tk.MustQuery("show warnings").Sort().Check(testkit.Rows( "Note 1105 Analyze use auto adjusted sample rate 1.000000 for table test.t's partition p1", - "Warning 8244 Build table: `t` column: `d` global-level stats failed due to missing partition-level column stats, please run analyze table to refresh columns of all partitions", + "Warning 8244 Build global-level stats failed due to missing partition-level column stats: table `t` partition `p0` column `d`, please run analyze table to refresh columns of all partitions", )) // analyze partition with existing table-level options and existing partition stats under dynamic @@ -2914,7 +2817,7 @@ PARTITION BY RANGE ( a ) ( tk.MustQuery("show warnings").Sort().Check(testkit.Rows( "Note 1105 Analyze use auto adjusted sample rate 1.000000 for table test.t's partition p1", "Warning 1105 Ignore columns and options when analyze partition in dynamic mode", - "Warning 8244 Build table: `t` column: `d` global-level stats failed due to missing partition-level column stats, please run analyze table to refresh columns of all partitions", + "Warning 8244 Build global-level stats failed due to missing partition-level column stats: table `t` partition `p0` column `d`, please run analyze table to refresh columns of all partitions", )) // analyze partition with existing table-level & partition-level options and existing partition stats under dynamic @@ -2923,7 +2826,7 @@ PARTITION BY RANGE ( a ) ( tk.MustQuery("show warnings").Sort().Check(testkit.Rows( "Note 1105 Analyze use auto adjusted sample rate 1.000000 for table test.t's partition p1", "Warning 1105 Ignore columns and options when analyze partition in dynamic mode", - "Warning 8244 Build table: `t` column: `d` global-level stats failed due to missing partition-level column stats, please run analyze table to refresh columns of all partitions", + "Warning 8244 Build global-level stats failed due to missing partition-level column stats: table `t` partition `p0` column `d`, please run analyze table to refresh columns of all partitions", )) tk.MustQuery("select * from t where a > 1 and b > 1 and c > 1 and d > 1") require.NoError(t, h.LoadNeededHistograms()) @@ -2974,8 +2877,8 @@ PARTITION BY RANGE ( a ) ( // analyze partition with index and with options are allowed under dynamic V1 tk.MustExec("analyze table t partition p0 with 1 topn, 3 buckets") tk.MustQuery("show warnings").Sort().Check(testkit.Rows( - "Warning 8131 Build table: `t` global-level stats failed due to missing partition-level stats", - "Warning 8131 Build table: `t` index: `idx` global-level stats failed due to missing partition-level stats", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", )) tk.MustExec("analyze table t partition p1 with 1 topn, 3 buckets") tk.MustQuery("show warnings").Sort().Check(testkit.Rows()) diff --git a/executor/autoidtest/BUILD.bazel b/executor/autoidtest/BUILD.bazel index dd467855dc8d9..0f5bf6c434f91 100644 --- a/executor/autoidtest/BUILD.bazel +++ b/executor/autoidtest/BUILD.bazel @@ -17,6 +17,7 @@ go_test( "//sessionctx/variable", "//testkit", "//testkit/testutil", + "@com_github_pingcap_failpoint//:failpoint", "@com_github_stretchr_testify//require", "@com_github_tikv_client_go_v2//tikv", "@org_uber_go_goleak//:goleak", diff --git a/executor/autoidtest/autoid_test.go b/executor/autoidtest/autoid_test.go index 269f3966f8a01..d191e52e38cdf 100644 --- a/executor/autoidtest/autoid_test.go +++ b/executor/autoidtest/autoid_test.go @@ -21,6 +21,7 @@ import ( "strings" "testing" + "github.com/pingcap/failpoint" ddltestutil "github.com/pingcap/tidb/ddl/testutil" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/session" @@ -642,14 +643,23 @@ func TestAutoIDIncrementAndOffset(t *testing.T) { tk.MustExec(`insert into io(b) values (null),(null),(null)`) // AutoID allocation will take increment and offset into consideration. tk.MustQuery(`select b from io`).Check(testkit.Rows("10", "12", "14")) - // HandleID allocation will ignore the increment and offset. - tk.MustQuery(`select _tidb_rowid from io`).Check(testkit.Rows("15", "16", "17")) + if str == "" { + // HandleID allocation will ignore the increment and offset. + tk.MustQuery(`select _tidb_rowid from io`).Check(testkit.Rows("15", "16", "17")) + } else { + // Separate row id and auto inc id, increment and offset works on auto inc id + tk.MustQuery(`select _tidb_rowid from io`).Check(testkit.Rows("1", "2", "3")) + } tk.MustExec(`delete from io`) tk.Session().GetSessionVars().AutoIncrementIncrement = 10 tk.MustExec(`insert into io(b) values (null),(null),(null)`) tk.MustQuery(`select b from io`).Check(testkit.Rows("20", "30", "40")) - tk.MustQuery(`select _tidb_rowid from io`).Check(testkit.Rows("41", "42", "43")) + if str == "" { + tk.MustQuery(`select _tidb_rowid from io`).Check(testkit.Rows("41", "42", "43")) + } else { + tk.MustQuery(`select _tidb_rowid from io`).Check(testkit.Rows("4", "5", "6")) + } // Test invalid value. tk.Session().GetSessionVars().AutoIncrementIncrement = -1 @@ -711,27 +721,49 @@ func TestAlterTableAutoIDCache(t *testing.T) { require.NoError(t, err2) tk.MustExec("alter table t_473 auto_id_cache = 100") - tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows(fmt.Sprintf("test t_473 id %d AUTO_INCREMENT", val))) + tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows( + fmt.Sprintf("test t_473 id %d _TIDB_ROWID", val), + "test t_473 id 1 AUTO_INCREMENT", + )) tk.MustExec("insert into t_473 values ()") tk.MustQuery("select * from t_473").Check(testkit.Rows("1", fmt.Sprintf("%d", val))) - tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows(fmt.Sprintf("test t_473 id %d AUTO_INCREMENT", val+100))) + tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows( + fmt.Sprintf("test t_473 id %d _TIDB_ROWID", val+100), + "test t_473 id 1 AUTO_INCREMENT", + )) + + // Note that auto_id_cache=1 use a different implementation, switch between them is not allowed. + // TODO: relax this restriction and update the test case. + _, err = tk.Exec("alter table t_473 auto_id_cache = 1") + require.Error(t, err) +} - // Note that auto_id_cache=1 use a different implementation. - tk.MustExec("alter table t_473 auto_id_cache = 1") - tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows(fmt.Sprintf("test t_473 id %d AUTO_INCREMENT", val+100))) - tk.MustExec("insert into t_473 values ()") - tk.MustQuery("select * from t_473").Check(testkit.Rows("1", fmt.Sprintf("%d", val), fmt.Sprintf("%d", val+100))) - tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows(fmt.Sprintf("test t_473 id %d AUTO_INCREMENT", val+101))) +func TestMockAutoIDServiceError(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("USE test;") + tk.MustExec("create table t_mock_err (id int key auto_increment) auto_id_cache 1") - // alter table from auto_id_cache=1 to default will discard the IDs cached by the autoid service. - // This is because they are two component and TiDB can't tell the autoid service to "save position and exit". - tk.MustExec("alter table t_473 auto_id_cache = 20000") - tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows(fmt.Sprintf("test t_473 id %d AUTO_INCREMENT", val+4100))) + failpoint.Enable("github.com/pingcap/tidb/autoid_service/mockErr", `return(true)`) + defer failpoint.Disable("github.com/pingcap/tidb/autoid_service/mockErr") + // Cover a bug that the autoid client retry non-retryable errors forever cause dead loop. + tk.MustExecToErr("insert into t_mock_err values (),()") // mock error, instead of dead loop +} - tk.MustExec("insert into t_473 values ()") - tk.MustQuery("select * from t_473").Check(testkit.Rows("1", - fmt.Sprintf("%d", val), - fmt.Sprintf("%d", val+100), - fmt.Sprintf("%d", val+4100))) - tk.MustQuery("show table t_473 next_row_id").Check(testkit.Rows(fmt.Sprintf("test t_473 id %d AUTO_INCREMENT", val+24100))) +func TestIssue39528(t *testing.T) { + // When AUTO_ID_CACHE is 1, it should not affect row id setting when autoid and rowid are separated. + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test;") + tk.MustExec("create table issue39528 (id int unsigned key nonclustered auto_increment) shard_row_id_bits=4 auto_id_cache 1;") + tk.MustExec("insert into issue39528 values ()") + tk.MustExec("insert into issue39528 values ()") + + ctx := context.Background() + var codeRun bool + ctx = context.WithValue(ctx, "testIssue39528", &codeRun) + _, err := tk.ExecWithContext(ctx, "insert into issue39528 values ()") + require.NoError(t, err) + // Make sure the code does not visit tikv on allocate path. + require.False(t, codeRun) } diff --git a/executor/batch_checker.go b/executor/batch_checker.go index d3820ecb0d08c..79a6748b2d5c3 100644 --- a/executor/batch_checker.go +++ b/executor/batch_checker.go @@ -180,6 +180,10 @@ func getKeysNeedCheckOneRow(ctx sessionctx.Context, t table.Table, row []types.D if !distinct { continue } + // If index is used ingest ways, then we should check key from temp index. + if v.Meta().BackfillState != model.BackfillStateInapplicable { + _, key, _ = tables.GenTempIdxKeyByState(v.Meta(), key) + } colValStr, err1 := formatDataForDupError(colVals) if err1 != nil { return nil, err1 diff --git a/executor/batch_point_get.go b/executor/batch_point_get.go index 1af256ade8c31..ee9808700aaec 100644 --- a/executor/batch_point_get.go +++ b/executor/batch_point_get.go @@ -29,6 +29,7 @@ import ( "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessionctx/variable" driver "github.com/pingcap/tidb/store/driver/txn" + "github.com/pingcap/tidb/table" "github.com/pingcap/tidb/table/tables" "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/types" @@ -158,6 +159,9 @@ func MockNewCacheTableSnapShot(snapshot kv.Snapshot, memBuffer kv.MemBuffer) *ca // Close implements the Executor interface. func (e *BatchPointGetExec) Close() error { + if e.runtimeStats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.runtimeStats != nil && e.snapshot != nil { e.snapshot.SetOption(kv.CollectRuntimeStats, nil) } @@ -190,7 +194,7 @@ func (e *BatchPointGetExec) Next(ctx context.Context, req *chunk.Chunk) error { e.index++ } - err := FillVirtualColumnValue(e.virtualColumnRetFieldTypes, e.virtualColumnIndex, e.schema, e.columns, e.ctx, req) + err := table.FillVirtualColumnValue(e.virtualColumnRetFieldTypes, e.virtualColumnIndex, e.schema.Columns, e.columns, e.ctx, req) if err != nil { return err } diff --git a/executor/benchmark_test.go b/executor/benchmark_test.go index 7ff162239ebb9..3f64164332ce7 100644 --- a/executor/benchmark_test.go +++ b/executor/benchmark_test.go @@ -906,39 +906,44 @@ func prepare4HashJoin(testCase *hashJoinTestCase, innerExec, outerExec Executor) joinSchema.Append(cols1...) } - joinKeys := make([]*expression.Column, 0, len(testCase.keyIdx)) - for _, keyIdx := range testCase.keyIdx { - joinKeys = append(joinKeys, cols0[keyIdx]) - } - probeKeys := make([]*expression.Column, 0, len(testCase.keyIdx)) - for _, keyIdx := range testCase.keyIdx { - probeKeys = append(probeKeys, cols1[keyIdx]) - } + joinKeysColIdx := make([]int, 0, len(testCase.keyIdx)) + joinKeysColIdx = append(joinKeysColIdx, testCase.keyIdx...) + probeKeysColIdx := make([]int, 0, len(testCase.keyIdx)) + probeKeysColIdx = append(probeKeysColIdx, testCase.keyIdx...) e := &HashJoinExec{ baseExecutor: newBaseExecutor(testCase.ctx, joinSchema, 5, innerExec, outerExec), hashJoinCtx: &hashJoinCtx{ + sessCtx: testCase.ctx, joinType: testCase.joinType, // 0 for InnerJoin, 1 for LeftOutersJoin, 2 for RightOuterJoin isOuterJoin: false, useOuterToBuild: testCase.useOuterToBuild, + concurrency: uint(testCase.concurrency), + probeTypes: retTypes(outerExec), + buildTypes: retTypes(innerExec), }, probeSideTupleFetcher: &probeSideTupleFetcher{ probeSideExec: outerExec, }, - probeWorkers: make([]probeWorker, testCase.concurrency), - concurrency: uint(testCase.concurrency), - buildKeys: joinKeys, - probeKeys: probeKeys, - buildSideExec: innerExec, - buildSideEstCount: float64(testCase.rows), + probeWorkers: make([]*probeWorker, testCase.concurrency), + buildWorker: &buildWorker{ + buildKeyColIdx: joinKeysColIdx, + buildSideExec: innerExec, + }, } childrenUsedSchema := markChildrenUsedCols(e.Schema(), e.children[0].Schema(), e.children[1].Schema()) - defaultValues := make([]types.Datum, e.buildSideExec.Schema().Len()) + defaultValues := make([]types.Datum, e.buildWorker.buildSideExec.Schema().Len()) lhsTypes, rhsTypes := retTypes(innerExec), retTypes(outerExec) for i := uint(0); i < e.concurrency; i++ { - e.probeWorkers[i].joiner = newJoiner(testCase.ctx, e.joinType, true, defaultValues, - nil, lhsTypes, rhsTypes, childrenUsedSchema, false) + e.probeWorkers[i] = &probeWorker{ + workerID: i, + hashJoinCtx: e.hashJoinCtx, + joiner: newJoiner(testCase.ctx, e.joinType, true, defaultValues, + nil, lhsTypes, rhsTypes, childrenUsedSchema, false), + probeKeyColIdx: probeKeysColIdx, + } } + e.buildWorker.hashJoinCtx = e.hashJoinCtx memLimit := int64(-1) if testCase.disk { memLimit = 1 @@ -1196,7 +1201,7 @@ func benchmarkBuildHashTable(b *testing.B, casTest *hashJoinTestCase, dataSource close(innerResultCh) b.StartTimer() - if err := exec.buildHashTableForList(innerResultCh); err != nil { + if err := exec.buildWorker.buildHashTableForList(innerResultCh); err != nil { b.Fatal(err) } diff --git a/executor/bind.go b/executor/bind.go index cf337968d4130..c5f254121a9bf 100644 --- a/executor/bind.go +++ b/executor/bind.go @@ -38,6 +38,9 @@ type SQLBindExec struct { isGlobal bool bindAst ast.StmtNode newStatus string + source string // by manual or from history, only in create stmt + sqlDigest string + planDigest string } // Next implements the Executor Next interface. @@ -48,6 +51,8 @@ func (e *SQLBindExec) Next(ctx context.Context, req *chunk.Chunk) error { return e.createSQLBind() case plannercore.OpSQLBindDrop: return e.dropSQLBind() + case plannercore.OpSQLBindDropByDigest: + return e.dropSQLBindByDigest() case plannercore.OpFlushBindings: return e.flushBindings() case plannercore.OpCaptureBindings: @@ -83,6 +88,20 @@ func (e *SQLBindExec) dropSQLBind() error { return err } +func (e *SQLBindExec) dropSQLBindByDigest() error { + if e.sqlDigest == "" { + return errors.New("sql digest is empty") + } + if !e.isGlobal { + handle := e.ctx.Value(bindinfo.SessionBindInfoKeyType).(*bindinfo.SessionHandle) + err := handle.DropBindRecordByDigest(e.sqlDigest) + return err + } + affectedRows, err := domain.GetDomain(e.ctx).BindHandle().DropBindRecordByDigest(e.sqlDigest) + e.ctx.GetSessionVars().StmtCtx.AddAffectedRows(affectedRows) + return err +} + func (e *SQLBindExec) setBindingStatus() error { var bindInfo *bindinfo.Binding if e.bindSQL != "" { @@ -109,11 +128,13 @@ func (e *SQLBindExec) createSQLBind() error { }() bindInfo := bindinfo.Binding{ - BindSQL: e.bindSQL, - Charset: e.charset, - Collation: e.collation, - Status: bindinfo.Enabled, - Source: bindinfo.Manual, + BindSQL: e.bindSQL, + Charset: e.charset, + Collation: e.collation, + Status: bindinfo.Enabled, + Source: e.source, + SQLDigest: e.sqlDigest, + PlanDigest: e.planDigest, } record := &bindinfo.BindRecord{ OriginalSQL: e.normdOrigSQL, diff --git a/executor/builder.go b/executor/builder.go index ea718aa9df6dc..9bb51553e06fb 100644 --- a/executor/builder.go +++ b/executor/builder.go @@ -1003,6 +1003,17 @@ func (b *executorBuilder) buildPlanReplayer(v *plannercore.PlanReplayer) Executo } return e } + if v.Capture { + e := &PlanReplayerExec{ + baseExecutor: newBaseExecutor(b.ctx, nil, v.ID()), + CaptureInfo: &PlanReplayerCaptureInfo{ + SQLDigest: v.SQLDigest, + PlanDigest: v.PlanDigest, + }, + } + return e + } + e := &PlanReplayerExec{ baseExecutor: newBaseExecutor(b.ctx, v.Schema(), v.ID()), DumpInfo: &PlanReplayerDumpInfo{ @@ -1389,17 +1400,6 @@ func (b *executorBuilder) buildMergeJoin(v *plannercore.PhysicalMergeJoin) Execu return e } -func (b *executorBuilder) buildSideEstCount(v *plannercore.PhysicalHashJoin) float64 { - buildSide := v.Children()[v.InnerChildIdx] - if v.UseOuterToBuild { - buildSide = v.Children()[1-v.InnerChildIdx] - } - if buildSide.Stats().HistColl == nil || buildSide.Stats().HistColl.Pseudo { - return 0.0 - } - return buildSide.StatsCount() -} - func (b *executorBuilder) buildHashJoin(v *plannercore.PhysicalHashJoin) Executor { leftExec := b.build(v.Children()[0]) if b.err != nil { @@ -1414,13 +1414,17 @@ func (b *executorBuilder) buildHashJoin(v *plannercore.PhysicalHashJoin) Executo e := &HashJoinExec{ baseExecutor: newBaseExecutor(b.ctx, v.Schema(), v.ID(), leftExec, rightExec), probeSideTupleFetcher: &probeSideTupleFetcher{}, + probeWorkers: make([]*probeWorker, v.Concurrency), + buildWorker: &buildWorker{}, hashJoinCtx: &hashJoinCtx{ + sessCtx: b.ctx, isOuterJoin: v.JoinType.IsOuterJoin(), useOuterToBuild: v.UseOuterToBuild, joinType: v.JoinType, + concurrency: v.Concurrency, }, - concurrency: v.Concurrency, } + e.hashJoinCtx.allocPool = e.AllocPool defaultValues := v.DefaultValues lhsTypes, rhsTypes := retTypes(leftExec), retTypes(rightExec) if v.InnerChildIdx == 1 { @@ -1438,15 +1442,17 @@ func (b *executorBuilder) buildHashJoin(v *plannercore.PhysicalHashJoin) Executo leftIsBuildSide := true e.isNullEQ = v.IsNullEQ + var probeKeys, probeNAKeys, buildKeys, buildNAKeys []*expression.Column + var buildSideExec Executor if v.UseOuterToBuild { // update the buildSideEstCount due to changing the build side if v.InnerChildIdx == 1 { - e.buildSideExec, e.buildKeys, e.buildNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys - e.probeSideTupleFetcher.probeSideExec, e.probeKeys, e.probeNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys + buildSideExec, buildKeys, buildNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys + e.probeSideTupleFetcher.probeSideExec, probeKeys, probeNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys e.outerFilter = v.LeftConditions } else { - e.buildSideExec, e.buildKeys, e.buildNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys - e.probeSideTupleFetcher.probeSideExec, e.probeKeys, e.probeNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys + buildSideExec, buildKeys, buildNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys + e.probeSideTupleFetcher.probeSideExec, probeKeys, probeNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys e.outerFilter = v.RightConditions leftIsBuildSide = false } @@ -1455,27 +1461,48 @@ func (b *executorBuilder) buildHashJoin(v *plannercore.PhysicalHashJoin) Executo } } else { if v.InnerChildIdx == 0 { - e.buildSideExec, e.buildKeys, e.buildNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys - e.probeSideTupleFetcher.probeSideExec, e.probeKeys, e.probeNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys + buildSideExec, buildKeys, buildNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys + e.probeSideTupleFetcher.probeSideExec, probeKeys, probeNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys e.outerFilter = v.RightConditions } else { - e.buildSideExec, e.buildKeys, e.buildNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys - e.probeSideTupleFetcher.probeSideExec, e.probeKeys, e.probeNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys + buildSideExec, buildKeys, buildNAKeys = rightExec, v.RightJoinKeys, v.RightNAJoinKeys + e.probeSideTupleFetcher.probeSideExec, probeKeys, probeNAKeys = leftExec, v.LeftJoinKeys, v.LeftNAJoinKeys e.outerFilter = v.LeftConditions leftIsBuildSide = false } if defaultValues == nil { - defaultValues = make([]types.Datum, e.buildSideExec.Schema().Len()) + defaultValues = make([]types.Datum, buildSideExec.Schema().Len()) } } + probeKeyColIdx := make([]int, len(probeKeys)) + probeNAKeColIdx := make([]int, len(probeNAKeys)) + buildKeyColIdx := make([]int, len(buildKeys)) + buildNAKeyColIdx := make([]int, len(buildNAKeys)) + for i := range buildKeys { + buildKeyColIdx[i] = buildKeys[i].Index + } + for i := range buildNAKeys { + buildNAKeyColIdx[i] = buildNAKeys[i].Index + } + for i := range probeKeys { + probeKeyColIdx[i] = probeKeys[i].Index + } + for i := range probeNAKeys { + probeNAKeColIdx[i] = probeNAKeys[i].Index + } isNAJoin := len(v.LeftNAJoinKeys) > 0 - e.buildSideEstCount = b.buildSideEstCount(v) childrenUsedSchema := markChildrenUsedCols(v.Schema(), v.Children()[0].Schema(), v.Children()[1].Schema()) - e.probeWorkers = make([]probeWorker, e.concurrency) for i := uint(0); i < e.concurrency; i++ { - e.probeWorkers[i].joiner = newJoiner(b.ctx, v.JoinType, v.InnerChildIdx == 0, defaultValues, - v.OtherConditions, lhsTypes, rhsTypes, childrenUsedSchema, isNAJoin) + e.probeWorkers[i] = &probeWorker{ + hashJoinCtx: e.hashJoinCtx, + workerID: i, + joiner: newJoiner(b.ctx, v.JoinType, v.InnerChildIdx == 0, defaultValues, v.OtherConditions, lhsTypes, rhsTypes, childrenUsedSchema, isNAJoin), + probeKeyColIdx: probeKeyColIdx, + probeNAKeyColIdx: probeNAKeColIdx, + } } + e.buildWorker.buildKeyColIdx, e.buildWorker.buildNAKeyColIdx, e.buildWorker.buildSideExec, e.buildWorker.hashJoinCtx = buildKeyColIdx, buildNAKeyColIdx, buildSideExec, e.hashJoinCtx + e.hashJoinCtx.isNullAware = isNAJoin executorCountHashJoinExec.Inc() // We should use JoinKey to construct the type information using by hashing, instead of using the child's schema directly. @@ -3943,6 +3970,7 @@ func buildNoRangeIndexMergeReader(b *executorBuilder, v *plannercore.PhysicalInd isCorColInPartialFilters: isCorColInPartialFilters, isCorColInTableFilter: isCorColInTableFilter, isCorColInPartialAccess: isCorColInPartialAccess, + isIntersection: v.IsIntersectionType, } collectTable := false e.tableRequest.CollectRangeCounts = &collectTable @@ -3950,6 +3978,9 @@ func buildNoRangeIndexMergeReader(b *executorBuilder, v *plannercore.PhysicalInd } func (b *executorBuilder) buildIndexMergeReader(v *plannercore.PhysicalIndexMergeReader) Executor { + if b.Ti != nil { + b.Ti.UseIndexMerge = true + } ts := v.TablePlans[0].(*plannercore.PhysicalTableScan) if err := b.validCanReadTemporaryOrCacheTable(ts.Table); err != nil { b.err = err @@ -4236,32 +4267,37 @@ type kvRangeBuilderFromRangeAndPartition struct { } func (h kvRangeBuilderFromRangeAndPartition) buildKeyRangeSeparately(ranges []*ranger.Range) ([]int64, [][]kv.KeyRange, error) { - ret := make([][]kv.KeyRange, 0, len(h.partitions)) + ret := make([][]kv.KeyRange, len(h.partitions)) pids := make([]int64, 0, len(h.partitions)) - for _, p := range h.partitions { + for i, p := range h.partitions { pid := p.GetPhysicalID() + pids = append(pids, pid) meta := p.Meta() + if len(ranges) == 0 { + continue + } kvRange, err := distsql.TableHandleRangesToKVRanges(h.sctx.GetSessionVars().StmtCtx, []int64{pid}, meta != nil && meta.IsCommonHandle, ranges, nil) if err != nil { return nil, nil, err } - pids = append(pids, pid) - ret = append(ret, kvRange) + ret[i] = kvRange.AppendSelfTo(ret[i]) } return pids, ret, nil } -func (h kvRangeBuilderFromRangeAndPartition) buildKeyRange(ranges []*ranger.Range) ([]kv.KeyRange, error) { - //nolint: prealloc - var ret []kv.KeyRange - for _, p := range h.partitions { +func (h kvRangeBuilderFromRangeAndPartition) buildKeyRange(ranges []*ranger.Range) ([][]kv.KeyRange, error) { + ret := make([][]kv.KeyRange, len(h.partitions)) + if len(ranges) == 0 { + return ret, nil + } + for i, p := range h.partitions { pid := p.GetPhysicalID() meta := p.Meta() kvRange, err := distsql.TableHandleRangesToKVRanges(h.sctx.GetSessionVars().StmtCtx, []int64{pid}, meta != nil && meta.IsCommonHandle, ranges, nil) if err != nil { return nil, err } - ret = append(ret, kvRange...) + ret[i] = kvRange.AppendSelfTo(ret[i]) } return ret, nil } @@ -4308,7 +4344,7 @@ func (builder *dataReaderBuilder) buildTableReaderBase(ctx context.Context, e *T if err != nil { return nil, err } - e.kvRanges = append(e.kvRanges, kvReq.KeyRanges...) + e.kvRanges = kvReq.KeyRanges.AppendSelfTo(e.kvRanges) e.resultHandler = &tableResultHandler{} result, err := builder.SelectResult(ctx, builder.ctx, kvReq, retTypes(e), e.feedback, getPhysicalPlanIDs(e.plans), e.id) if err != nil { @@ -4331,6 +4367,8 @@ func (builder *dataReaderBuilder) buildTableReaderFromHandles(ctx context.Contex } else { b.SetTableHandles(getPhysicalTableID(e.table), handles) } + } else { + b.SetKeyRanges(nil) } return builder.buildTableReaderBase(ctx, e, b) } @@ -4519,6 +4557,9 @@ func buildRangesForIndexJoin(ctx sessionctx.Context, lookUpContents []*indexJoin func buildKvRangesForIndexJoin(ctx sessionctx.Context, tableID, indexID int64, lookUpContents []*indexJoinLookUpContent, ranges []*ranger.Range, keyOff2IdxOff []int, cwc *plannercore.ColWithCmpFuncManager, memTracker *memory.Tracker, interruptSignal *atomic.Value) (_ []kv.KeyRange, err error) { kvRanges := make([]kv.KeyRange, 0, len(ranges)*len(lookUpContents)) + if len(ranges) == 0 { + return []kv.KeyRange{}, nil + } lastPos := len(ranges[0].LowVal) - 1 sc := ctx.GetSessionVars().StmtCtx tmpDatumRanges := make([]*ranger.Range, 0, len(lookUpContents)) @@ -4531,7 +4572,7 @@ func buildKvRangesForIndexJoin(ctx sessionctx.Context, tableID, indexID int64, l } if cwc == nil { // Index id is -1 means it's a common handle. - var tmpKvRanges []kv.KeyRange + var tmpKvRanges *kv.KeyRanges var err error if indexID == -1 { tmpKvRanges, err = distsql.CommonHandleRangesToKVRanges(sc, []int64{tableID}, ranges) @@ -4541,7 +4582,7 @@ func buildKvRangesForIndexJoin(ctx sessionctx.Context, tableID, indexID int64, l if err != nil { return nil, err } - kvRanges = append(kvRanges, tmpKvRanges...) + kvRanges = tmpKvRanges.AppendSelfTo(kvRanges) continue } nextColRanges, err := cwc.BuildRangesByRow(ctx, content.row) @@ -4578,9 +4619,11 @@ func buildKvRangesForIndexJoin(ctx sessionctx.Context, tableID, indexID int64, l } // Index id is -1 means it's a common handle. if indexID == -1 { - return distsql.CommonHandleRangesToKVRanges(ctx.GetSessionVars().StmtCtx, []int64{tableID}, tmpDatumRanges) + tmpKeyRanges, err := distsql.CommonHandleRangesToKVRanges(ctx.GetSessionVars().StmtCtx, []int64{tableID}, tmpDatumRanges) + return tmpKeyRanges.FirstPartitionRange(), err } - return distsql.IndexRangesToKVRangesWithInterruptSignal(ctx.GetSessionVars().StmtCtx, tableID, indexID, tmpDatumRanges, nil, memTracker, interruptSignal) + tmpKeyRanges, err := distsql.IndexRangesToKVRangesWithInterruptSignal(ctx.GetSessionVars().StmtCtx, tableID, indexID, tmpDatumRanges, nil, memTracker, interruptSignal) + return tmpKeyRanges.FirstPartitionRange(), err } func (b *executorBuilder) buildWindow(v *plannercore.PhysicalWindow) Executor { @@ -4773,6 +4816,9 @@ func (b *executorBuilder) buildSQLBindExec(v *plannercore.SQLBindPlan) Executor isGlobal: v.IsGlobal, bindAst: v.BindStmt, newStatus: v.NewStatus, + source: v.Source, + sqlDigest: v.SQLDigest, + planDigest: v.PlanDigest, } return e } @@ -4868,7 +4914,6 @@ func (b *executorBuilder) buildBatchPointGet(plan *plannercore.BatchPointGetPlan SnapshotRuntimeStats: snapshotStats, } e.snapshot.SetOption(kv.CollectRuntimeStats, snapshotStats) - b.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } if plan.IndexInfo != nil { @@ -5264,6 +5309,10 @@ func (b *executorBuilder) buildCompactTable(v *plannercore.CompactTable) Executo } partitionIDs = append(partitionIDs, partitionID) } + if b.Ti.PartitionTelemetry == nil { + b.Ti.PartitionTelemetry = &PartitionTelemetryInfo{} + } + b.Ti.PartitionTelemetry.UseCompactTablePartition = true } return &CompactTableTiFlashExec{ diff --git a/executor/compiler.go b/executor/compiler.go index 4ddb6208a445c..6d62b6e3272cf 100644 --- a/executor/compiler.go +++ b/executor/compiler.go @@ -156,7 +156,7 @@ func (c *Compiler) Compile(ctx context.Context, stmtNode ast.StmtNode) (_ *ExecS } } } - if c.Ctx.GetSessionVars().EnablePlanReplayerCapture { + if c.Ctx.GetSessionVars().EnablePlanReplayerCapture && !c.Ctx.GetSessionVars().InRestrictedSQL { checkPlanReplayerCaptureTask(c.Ctx, stmtNode) } diff --git a/executor/ddl_test.go b/executor/ddl_test.go index 54a67cbbf9cb7..5c86cd9566cdd 100644 --- a/executor/ddl_test.go +++ b/executor/ddl_test.go @@ -34,6 +34,7 @@ import ( "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/meta" "github.com/pingcap/tidb/meta/autoid" + "github.com/pingcap/tidb/parser" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/parser/terror" @@ -79,10 +80,8 @@ func TestInTxnExecDDLFail(t *testing.T) { tk.MustExec("insert into t values (1);") tk.MustExec("begin;") tk.MustExec("insert into t values (1);") - _, err := tk.Exec("truncate table t;") - require.EqualError(t, err, "[kv:1062]Duplicate entry '1' for key 't.PRIMARY'") - result := tk.MustQuery("select count(*) from t") - result.Check(testkit.Rows("1")) + tk.MustGetErrMsg("truncate table t;", "[kv:1062]Duplicate entry '1' for key 't.PRIMARY'") + tk.MustQuery("select count(*) from t").Check(testkit.Rows("1")) } func TestInTxnExecDDLInvalid(t *testing.T) { @@ -212,11 +211,9 @@ func TestCreateView(t *testing.T) { // test create a exist view tk.MustExec("CREATE VIEW view_t AS select id , name from source_table") defer tk.MustExec("DROP VIEW IF EXISTS view_t") - _, err := tk.Exec("CREATE VIEW view_t AS select id , name from source_table") - require.EqualError(t, err, "[schema:1050]Table 'test.view_t' already exists") + tk.MustGetErrMsg("CREATE VIEW view_t AS select id , name from source_table", "[schema:1050]Table 'test.view_t' already exists") // create view on nonexistent table - _, err = tk.Exec("create view v1 (c,d) as select a,b from t1") - require.EqualError(t, err, "[schema:1146]Table 'test.t1' doesn't exist") + tk.MustGetErrMsg("create view v1 (c,d) as select a,b from t1", "[schema:1146]Table 'test.t1' doesn't exist") // simple view tk.MustExec("create table t1 (a int ,b int)") tk.MustExec("insert into t1 values (1,2), (1,3), (2,4), (2,5), (3,10)") @@ -231,26 +228,22 @@ func TestCreateView(t *testing.T) { // view with select wild card tk.MustExec("create view v5 as select * from t1") tk.MustExec("create view v6 (c,d) as select * from t1") - _, err = tk.Exec("create view v7 (c,d,e) as select * from t1") - require.Equal(t, dbterror.ErrViewWrongList.Error(), err.Error()) + tk.MustGetErrCode("create view v7 (c,d,e) as select * from t1", errno.ErrViewWrongList) // drop multiple views in a statement tk.MustExec("drop view v1,v2,v3,v4,v5,v6") // view with variable tk.MustExec("create view v1 (c,d) as select a,b+@@global.max_user_connections from t1") - _, err = tk.Exec("create view v1 (c,d) as select a,b from t1 where a = @@global.max_user_connections") - require.EqualError(t, err, "[schema:1050]Table 'test.v1' already exists") + tk.MustGetErrMsg("create view v1 (c,d) as select a,b from t1 where a = @@global.max_user_connections", "[schema:1050]Table 'test.v1' already exists") tk.MustExec("drop view v1") // view with different col counts - _, err = tk.Exec("create view v1 (c,d,e) as select a,b from t1 ") - require.Equal(t, dbterror.ErrViewWrongList.Error(), err.Error()) - _, err = tk.Exec("create view v1 (c) as select a,b from t1 ") - require.Equal(t, dbterror.ErrViewWrongList.Error(), err.Error()) + tk.MustGetErrCode("create view v1 (c,d,e) as select a,b from t1 ", errno.ErrViewWrongList) + tk.MustGetErrCode("create view v1 (c) as select a,b from t1 ", errno.ErrViewWrongList) // view with or_replace flag tk.MustExec("drop view if exists v1") tk.MustExec("create view v1 (c,d) as select a,b from t1") tk.MustExec("create or replace view v1 (c,d) as select a,b from t1 ") tk.MustExec("create table if not exists t1 (a int ,b int)") - _, err = tk.Exec("create or replace view t1 as select * from t1") + err := tk.ExecToErr("create or replace view t1 as select * from t1") require.Equal(t, dbterror.ErrWrongObject.GenWithStackByArgs("test", "t1", "VIEW").Error(), err.Error()) // create view using prepare tk.MustExec(`prepare stmt from "create view v10 (x) as select 1";`) @@ -259,8 +252,7 @@ func TestCreateView(t *testing.T) { // create view on union tk.MustExec("drop table if exists t1, t2") tk.MustExec("drop view if exists v") - _, err = tk.Exec("create view v as select * from t1 union select * from t2") - require.True(t, terror.ErrorEqual(err, infoschema.ErrTableNotExists)) + tk.MustGetDBError("create view v as select * from t1 union select * from t2", infoschema.ErrTableNotExists) tk.MustExec("create table t1(a int, b int)") tk.MustExec("create table t2(a int, b int)") tk.MustExec("insert into t1 values(1,2), (1,1), (1,2)") @@ -268,14 +260,12 @@ func TestCreateView(t *testing.T) { tk.MustExec("create definer='root'@'localhost' view v as select * from t1 union select * from t2") tk.MustQuery("select * from v").Sort().Check(testkit.Rows("1 1", "1 2", "1 3")) tk.MustExec("alter table t1 drop column a") - _, err = tk.Exec("select * from v") - require.True(t, terror.ErrorEqual(err, plannercore.ErrViewInvalid)) + tk.MustGetDBError("select * from v", plannercore.ErrViewInvalid) tk.MustExec("alter table t1 add column a int") tk.MustQuery("select * from v").Sort().Check(testkit.Rows("1 1", "1 3", " 1", " 2")) tk.MustExec("alter table t1 drop column a") tk.MustExec("alter table t2 drop column b") - _, err = tk.Exec("select * from v") - require.True(t, terror.ErrorEqual(err, plannercore.ErrViewInvalid)) + tk.MustGetDBError("select * from v", plannercore.ErrViewInvalid) tk.MustExec("drop view v") tk.MustExec("create view v as (select * from t1)") @@ -294,8 +284,7 @@ func TestCreateView(t *testing.T) { tk.MustExec("create table test_v_nested(a int)") tk.MustExec("create definer='root'@'localhost' view v_nested as select * from test_v_nested") tk.MustExec("create definer='root'@'localhost' view v_nested2 as select * from v_nested") - _, err = tk.Exec("create or replace definer='root'@'localhost' view v_nested as select * from v_nested2") - require.True(t, terror.ErrorEqual(err, plannercore.ErrNoSuchTable)) + tk.MustGetDBError("create or replace definer='root'@'localhost' view v_nested as select * from v_nested2", plannercore.ErrNoSuchTable) tk.MustExec("drop table test_v_nested") tk.MustExec("drop view v_nested, v_nested2") @@ -322,8 +311,7 @@ func TestViewRecursion(t *testing.T) { tk.MustExec("create definer='root'@'localhost' view recursive_view2 as select * from recursive_view1") tk.MustExec("drop table t") tk.MustExec("rename table recursive_view2 to t") - _, err := tk.Exec("select * from recursive_view1") - require.True(t, terror.ErrorEqual(err, plannercore.ErrViewRecursive)) + tk.MustGetDBError("select * from recursive_view1", plannercore.ErrViewRecursive) tk.MustExec("drop view recursive_view1, t") } @@ -333,8 +321,8 @@ func TestIssue16250(t *testing.T) { tk.MustExec("use test") tk.MustExec("create table if not exists t(a int)") tk.MustExec("create view view_issue16250 as select * from t") - _, err := tk.Exec("truncate table view_issue16250") - require.EqualError(t, err, "[schema:1146]Table 'test.view_issue16250' doesn't exist") + tk.MustGetErrMsg("truncate table view_issue16250", + "[schema:1146]Table 'test.view_issue16250' doesn't exist") } func TestIssue24771(t *testing.T) { @@ -564,11 +552,11 @@ func TestAlterTableAddColumn(t *testing.T) { tk.MustExec("alter table alter_test add column c3 varchar(50) default 'CURRENT_TIMESTAMP'") tk.MustQuery("select c3 from alter_test").Check(testkit.Rows("CURRENT_TIMESTAMP")) tk.MustExec("create or replace view alter_view as select c1,c2 from alter_test") - _, err = tk.Exec("alter table alter_view add column c4 varchar(50)") + err = tk.ExecToErr("alter table alter_view add column c4 varchar(50)") require.Equal(t, dbterror.ErrWrongObject.GenWithStackByArgs("test", "alter_view", "BASE TABLE").Error(), err.Error()) tk.MustExec("drop view alter_view") tk.MustExec("create sequence alter_seq") - _, err = tk.Exec("alter table alter_seq add column c int") + err = tk.ExecToErr("alter table alter_seq add column c int") require.Equal(t, dbterror.ErrWrongObject.GenWithStackByArgs("test", "alter_seq", "BASE TABLE").Error(), err.Error()) tk.MustExec("drop sequence alter_seq") } @@ -591,11 +579,11 @@ func TestAlterTableAddColumns(t *testing.T) { require.Nil(t, r.Close()) tk.MustQuery("select c3 from alter_test").Check(testkit.Rows("CURRENT_TIMESTAMP")) tk.MustExec("create or replace view alter_view as select c1,c2 from alter_test") - _, err = tk.Exec("alter table alter_view add column (c4 varchar(50), c5 varchar(50))") + err = tk.ExecToErr("alter table alter_view add column (c4 varchar(50), c5 varchar(50))") require.Equal(t, dbterror.ErrWrongObject.GenWithStackByArgs("test", "alter_view", "BASE TABLE").Error(), err.Error()) tk.MustExec("drop view alter_view") tk.MustExec("create sequence alter_seq") - _, err = tk.Exec("alter table alter_seq add column (c1 int, c2 varchar(10))") + err = tk.ExecToErr("alter table alter_seq add column (c1 int, c2 varchar(10))") require.Equal(t, dbterror.ErrWrongObject.GenWithStackByArgs("test", "alter_seq", "BASE TABLE").Error(), err.Error()) tk.MustExec("drop sequence alter_seq") } @@ -662,8 +650,7 @@ func TestAlterTableModifyColumn(t *testing.T) { tk.MustExec("drop table if exists modify_column_multiple_collate;") tk.MustExec("create table modify_column_multiple_collate (a char(1) collate utf8_bin collate utf8_general_ci) charset utf8mb4 collate utf8mb4_bin") - _, err = tk.Exec("alter table modify_column_multiple_collate modify column a char(1) charset utf8mb4 collate utf8mb4_bin;") - require.NoError(t, err) + tk.MustExec("alter table modify_column_multiple_collate modify column a char(1) charset utf8mb4 collate utf8mb4_bin;") tt, err = domain.GetDomain(tk.Session()).InfoSchema().TableByName(model.NewCIStr("test"), model.NewCIStr("modify_column_multiple_collate")) require.NoError(t, err) require.Equal(t, "utf8mb4", tt.Cols()[0].GetCharset()) @@ -919,10 +906,8 @@ func TestShardRowIDBits(t *testing.T) { tk.MustExec("insert into t1 values(1)") // continue inserting will fail. - _, err = tk.Exec("insert into t1 values(2)") - require.Truef(t, autoid.ErrAutoincReadFailed.Equal(err), "err:%v", err) - _, err = tk.Exec("insert into t1 values(3)") - require.Truef(t, autoid.ErrAutoincReadFailed.Equal(err), "err:%v", err) + tk.MustGetDBError("insert into t1 values(2)", autoid.ErrAutoincReadFailed) + tk.MustGetDBError("insert into t1 values(3)", autoid.ErrAutoincReadFailed) } func TestAutoRandomBitsData(t *testing.T) { @@ -1164,8 +1149,7 @@ func TestSetDDLReorgWorkerCnt(t *testing.T) { err = ddlutil.LoadDDLReorgVars(context.Background(), tk.Session()) require.NoError(t, err) require.Equal(t, int32(100), variable.GetDDLReorgWorkerCounter()) - _, err = tk.Exec("set @@global.tidb_ddl_reorg_worker_cnt = invalid_val") - require.Truef(t, terror.ErrorEqual(err, variable.ErrWrongTypeForVar), "err %v", err) + tk.MustGetDBError("set @@global.tidb_ddl_reorg_worker_cnt = invalid_val", variable.ErrWrongTypeForVar) tk.MustExec("set @@global.tidb_ddl_reorg_worker_cnt = 100") err = ddlutil.LoadDDLReorgVars(context.Background(), tk.Session()) require.NoError(t, err) @@ -1207,8 +1191,7 @@ func TestSetDDLReorgBatchSize(t *testing.T) { err = ddlutil.LoadDDLReorgVars(context.Background(), tk.Session()) require.NoError(t, err) require.Equal(t, variable.MaxDDLReorgBatchSize, variable.GetDDLReorgBatchSize()) - _, err = tk.Exec("set @@global.tidb_ddl_reorg_batch_size = invalid_val") - require.True(t, terror.ErrorEqual(err, variable.ErrWrongTypeForVar), "err %v", err) + tk.MustGetDBError("set @@global.tidb_ddl_reorg_batch_size = invalid_val", variable.ErrWrongTypeForVar) tk.MustExec("set @@global.tidb_ddl_reorg_batch_size = 100") err = ddlutil.LoadDDLReorgVars(context.Background(), tk.Session()) require.NoError(t, err) @@ -1315,8 +1298,7 @@ func TestSetDDLErrorCountLimit(t *testing.T) { err = ddlutil.LoadDDLVars(tk.Session()) require.NoError(t, err) require.Equal(t, int64(math.MaxInt64), variable.GetDDLErrorCountLimit()) - _, err = tk.Exec("set @@global.tidb_ddl_error_count_limit = invalid_val") - require.True(t, terror.ErrorEqual(err, variable.ErrWrongTypeForVar), "err %v", err) + tk.MustGetDBError("set @@global.tidb_ddl_error_count_limit = invalid_val", variable.ErrWrongTypeForVar) tk.MustExec("set @@global.tidb_ddl_error_count_limit = 100") err = ddlutil.LoadDDLVars(tk.Session()) require.NoError(t, err) @@ -1373,39 +1355,21 @@ func TestCheckDefaultFsp(t *testing.T) { tk.MustExec("use test") tk.MustExec(`drop table if exists t;`) - _, err := tk.Exec("create table t ( tt timestamp default now(1));") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tt'") - - _, err = tk.Exec("create table t ( tt timestamp(1) default current_timestamp);") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tt'") - - _, err = tk.Exec("create table t ( tt timestamp(1) default now(2));") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tt'") + tk.MustGetErrMsg("create table t ( tt timestamp default now(1));", "[ddl:1067]Invalid default value for 'tt'") + tk.MustGetErrMsg("create table t ( tt timestamp(1) default current_timestamp);", "[ddl:1067]Invalid default value for 'tt'") + tk.MustGetErrMsg("create table t ( tt timestamp(1) default now(2));", "[ddl:1067]Invalid default value for 'tt'") tk.MustExec("create table t ( tt timestamp(1) default now(1));") tk.MustExec("create table t2 ( tt timestamp default current_timestamp());") tk.MustExec("create table t3 ( tt timestamp default current_timestamp(0));") - _, err = tk.Exec("alter table t add column ttt timestamp default now(2);") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'ttt'") - - _, err = tk.Exec("alter table t add column ttt timestamp(5) default current_timestamp;") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'ttt'") - - _, err = tk.Exec("alter table t add column ttt timestamp(5) default now(2);") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'ttt'") - - _, err = tk.Exec("alter table t modify column tt timestamp(1) default now();") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tt'") - - _, err = tk.Exec("alter table t modify column tt timestamp(4) default now(5);") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tt'") - - _, err = tk.Exec("alter table t change column tt tttt timestamp(4) default now(5);") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tttt'") - - _, err = tk.Exec("alter table t change column tt tttt timestamp(1) default now();") - require.EqualError(t, err, "[ddl:1067]Invalid default value for 'tttt'") + tk.MustGetErrMsg("alter table t add column ttt timestamp default now(2);", "[ddl:1067]Invalid default value for 'ttt'") + tk.MustGetErrMsg("alter table t add column ttt timestamp(5) default current_timestamp;", "[ddl:1067]Invalid default value for 'ttt'") + tk.MustGetErrMsg("alter table t add column ttt timestamp(5) default now(2);", "[ddl:1067]Invalid default value for 'ttt'") + tk.MustGetErrMsg("alter table t modify column tt timestamp(1) default now();", "[ddl:1067]Invalid default value for 'tt'") + tk.MustGetErrMsg("alter table t modify column tt timestamp(4) default now(5);", "[ddl:1067]Invalid default value for 'tt'") + tk.MustGetErrMsg("alter table t change column tt tttt timestamp(4) default now(5);", "[ddl:1067]Invalid default value for 'tttt'") + tk.MustGetErrMsg("alter table t change column tt tttt timestamp(1) default now();", "[ddl:1067]Invalid default value for 'tttt'") } func TestTimestampMinDefaultValue(t *testing.T) { @@ -1559,3 +1523,98 @@ func TestRenameMultiTables(t *testing.T) { tk.MustExec("drop database rename2") tk.MustExec("drop database rename3") } + +func TestCreateTableWithTTL(t *testing.T) { + parser.TTLFeatureGate = true + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + tk.MustExec("CREATE TABLE t (created_at datetime) TTL = `created_at` + INTERVAL 5 DAY") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `created_at` + INTERVAL 5 DAY TTL_ENABLE = 'ON'")) + tk.MustExec("DROP TABLE t") + + tk.MustGetErrMsg("CREATE TABLE t (id int) TTL = `id` + INTERVAL 5 DAY", "[ddl:8148]Field 'id' is of a not supported type for TTL config, expect DATETIME, DATE or TIMESTAMP") + + tk.MustGetErrMsg("CREATE TABLE t (id int) TTL_ENABLE = 'ON'", "[ddl:8150]Cannot set TTL_ENABLE on a table without TTL config") + + // when multiple ttl and ttl_enable configs are submitted, only the last one will be handled + tk.MustExec("CREATE TABLE t (created_at datetime) TTL_ENABLE = 'ON' TTL = `created_at` + INTERVAL 1 DAY TTL = `created_at` + INTERVAL 2 DAY TTL = `created_at` + INTERVAL 3 DAY TTL_ENABLE = 'OFF'") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `created_at` + INTERVAL 3 DAY TTL_ENABLE = 'OFF'")) + tk.MustExec("DROP TABLE t") +} + +func TestAlterTTLInfo(t *testing.T) { + parser.TTLFeatureGate = true + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + tk.MustExec("CREATE TABLE t (created_at datetime, updated_at datetime, wrong_type int) TTL = `created_at` + INTERVAL 5 DAY") + tk.MustExec("ALTER TABLE t TTL = `updated_at` + INTERVAL 2 YEAR") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL,\n `updated_at` datetime DEFAULT NULL,\n `wrong_type` int(11) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `updated_at` + INTERVAL 2 YEAR TTL_ENABLE = 'ON'")) + + tk.MustExec("ALTER TABLE t TTL_ENABLE = 'OFF'") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL,\n `updated_at` datetime DEFAULT NULL,\n `wrong_type` int(11) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `updated_at` + INTERVAL 2 YEAR TTL_ENABLE = 'OFF'")) + + tk.MustGetErrMsg("ALTER TABLE t TTL = `not_exist` + INTERVAL 2 YEAR", "[ddl:1054]Unknown column 'not_exist' in 'TTL config'") + + tk.MustGetErrMsg("ALTER TABLE t TTL = `wrong_type` + INTERVAL 2 YEAR", "[ddl:8148]Field 'wrong_type' is of a not supported type for TTL config, expect DATETIME, DATE or TIMESTAMP") + + tk.MustGetErrMsg("ALTER TABLE t DROP COLUMN updated_at", "[ddl:8149]Cannot drop column 'updated_at': needed in TTL config") + tk.MustGetErrMsg("ALTER TABLE t CHANGE updated_at updated_at_new INT", "[ddl:8148]Field 'updated_at_new' is of a not supported type for TTL config, expect DATETIME, DATE or TIMESTAMP") + + tk.MustExec("ALTER TABLE t RENAME COLUMN `updated_at` TO `updated_at_2`") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL,\n `updated_at_2` datetime DEFAULT NULL,\n `wrong_type` int(11) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `updated_at_2` + INTERVAL 2 YEAR TTL_ENABLE = 'OFF'")) + + tk.MustExec("ALTER TABLE t CHANGE `updated_at_2` `updated_at_3` date") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL,\n `updated_at_3` date DEFAULT NULL,\n `wrong_type` int(11) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `updated_at_3` + INTERVAL 2 YEAR TTL_ENABLE = 'OFF'")) + + tk.MustExec("ALTER TABLE t TTL = `updated_at_3` + INTERVAL 3 YEAR") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL,\n `updated_at_3` date DEFAULT NULL,\n `wrong_type` int(11) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `updated_at_3` + INTERVAL 3 YEAR TTL_ENABLE = 'OFF'")) + + tk.MustGetErrMsg("ALTER TABLE t TTL_ENABLE = 'OFF' REMOVE TTL", "[ddl:8200]Unsupported multi schema change for alter table ttl") + + tk.MustExec("ALTER TABLE t REMOVE TTL") + tk.MustQuery("SHOW CREATE TABLE t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL,\n `updated_at_3` date DEFAULT NULL,\n `wrong_type` int(11) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin")) + + tk.MustGetErrMsg("ALTER TABLE t TTL_ENABLE = 'OFF'", "[ddl:8150]Cannot set TTL_ENABLE on a table without TTL config") +} + +func TestDisableTTLForTempTable(t *testing.T) { + parser.TTLFeatureGate = true + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + tk.MustGetDBError("CREATE TEMPORARY TABLE t (created_at datetime) TTL = `created_at` + INTERVAL 5 DAY", dbterror.ErrTempTableNotAllowedWithTTL) +} + +func TestDisableTTLForFKParentTable(t *testing.T) { + parser.TTLFeatureGate = true + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + // alter ttl for a FK parent table is not allowed + tk.MustExec("set global tidb_enable_foreign_key='ON'") + tk.MustExec("CREATE TABLE t (id int primary key, created_at datetime)") + tk.MustExec("CREATE TABLE t_1 (t_id int, foreign key fk_t_id(t_id) references t(id))") + tk.MustGetDBError("ALTER TABLE t TTL = created_at + INTERVAL 5 YEAR", dbterror.ErrUnsupportedTTLReferencedByFK) + tk.MustExec("drop table t,t_1") + + // refuse to reference TTL key when create table + tk.MustExec("CREATE TABLE t (id int primary key, created_at datetime) TTL = created_at + INTERVAL 5 YEAR") + tk.MustGetDBError("CREATE TABLE t_1 (t_id int, foreign key fk_t_id(t_id) references t(id))", dbterror.ErrUnsupportedTTLReferencedByFK) + tk.MustExec("drop table t") + + // refuse to add foreign key reference TTL table + tk.MustExec("CREATE TABLE t (id int primary key, created_at datetime) TTL = created_at + INTERVAL 5 YEAR") + tk.MustExec("CREATE TABLE t_1 (t_id int)") + tk.MustGetDBError("ALTER TABLE t_1 ADD FOREIGN KEY fk_t_id(t_id) references t(id)", dbterror.ErrUnsupportedTTLReferencedByFK) + tk.MustExec("drop table t,t_1") +} diff --git a/executor/delete.go b/executor/delete.go index 979db825dfb66..3aa0932a07c22 100644 --- a/executor/delete.go +++ b/executor/delete.go @@ -175,8 +175,14 @@ func (e *DeleteExec) composeTblRowMap(tblRowMap tableRowMapType, colPosInfos []p return err } // tblRowMap[info.TblID][handle] hold the row datas binding to this table and this handle. - _, exist := tblRowMap[info.TblID].Get(handle) - memDelta := tblRowMap[info.TblID].Set(handle, joinedRow[info.Start:info.End]) + row, exist := tblRowMap[info.TblID].Get(handle) + if !exist { + row = make([]types.Datum, info.End-info.Start) + } + for i, d := range joinedRow[info.Start:info.End] { + d.Copy(&row[i]) + } + memDelta := tblRowMap[info.TblID].Set(handle, row) if !exist { memDelta += types.EstimatedMemUsage(joinedRow, 1) memDelta += int64(handle.ExtraMemSize()) @@ -192,6 +198,7 @@ func (e *DeleteExec) deleteMultiTablesByChunk(ctx context.Context) error { fields := retTypes(e.children[0]) chk := tryNewCacheChunk(e.children[0]) memUsageOfChk := int64(0) + joinedDatumRowBuffer := make([]types.Datum, len(fields)) for { e.memTracker.Consume(-memUsageOfChk) iter := chunk.NewIterator4Chunk(chk) @@ -206,13 +213,13 @@ func (e *DeleteExec) deleteMultiTablesByChunk(ctx context.Context) error { e.memTracker.Consume(memUsageOfChk) for joinedChunkRow := iter.Begin(); joinedChunkRow != iter.End(); joinedChunkRow = iter.Next() { - joinedDatumRow := joinedChunkRow.GetDatumRow(fields) - err := e.composeTblRowMap(tblRowMap, colPosInfos, joinedDatumRow) + joinedDatumRowBuffer = joinedChunkRow.GetDatumRowWithBuffer(fields, joinedDatumRowBuffer) + err := e.composeTblRowMap(tblRowMap, colPosInfos, joinedDatumRowBuffer) if err != nil { return err } } - chk = chunk.Renew(chk, e.maxChunkSize) + chk = tryNewCacheChunk(e.children[0]) } return e.removeRowsInTblRowMap(tblRowMap) @@ -234,12 +241,7 @@ func (e *DeleteExec) removeRowsInTblRowMap(tblRowMap tableRowMapType) error { } func (e *DeleteExec) removeRow(ctx sessionctx.Context, t table.Table, h kv.Handle, data []types.Datum) error { - txnState, err := e.ctx.Txn(false) - if err != nil { - return err - } - memUsageOfTxnState := txnState.Size() - err = t.RemoveRecord(ctx, h, data) + err := t.RemoveRecord(ctx, h, data) if err != nil { return err } @@ -247,7 +249,6 @@ func (e *DeleteExec) removeRow(ctx sessionctx.Context, t table.Table, h kv.Handl if err != nil { return err } - e.memTracker.Consume(int64(txnState.Size() - memUsageOfTxnState)) ctx.GetSessionVars().StmtCtx.AddAffectedRows(1) return nil } diff --git a/executor/distsql.go b/executor/distsql.go index 0cef7e66d441e..aab5067a81b6a 100644 --- a/executor/distsql.go +++ b/executor/distsql.go @@ -243,11 +243,18 @@ func (e *IndexReaderExecutor) Next(ctx context.Context, req *chunk.Chunk) error return err } +// TODO: cleanup this method. func (e *IndexReaderExecutor) buildKeyRanges(sc *stmtctx.StatementContext, ranges []*ranger.Range, physicalID int64) ([]kv.KeyRange, error) { + var ( + rRanges *kv.KeyRanges + err error + ) if e.index.ID == -1 { - return distsql.CommonHandleRangesToKVRanges(sc, []int64{physicalID}, ranges) + rRanges, err = distsql.CommonHandleRangesToKVRanges(sc, []int64{physicalID}, ranges) + } else { + rRanges, err = distsql.IndexRangesToKVRanges(sc, physicalID, e.index.ID, ranges, e.feedback) } - return distsql.IndexRangesToKVRanges(sc, physicalID, e.index.ID, ranges, e.feedback) + return rRanges.FirstPartitionRange(), err } // Open implements the Executor Open interface. @@ -458,9 +465,6 @@ func (e *IndexLookUpExecutor) Open(ctx context.Context) error { func (e *IndexLookUpExecutor) buildTableKeyRanges() (err error) { sc := e.ctx.GetSessionVars().StmtCtx if e.partitionTableMode { - if e.keepOrder { // this case should be prevented by the optimizer - return errors.New("invalid execution plan: cannot keep order when accessing a partition table by IndexLookUpReader") - } e.feedback.Invalidate() // feedback for partition tables is not ready e.partitionKVRanges = make([][]kv.KeyRange, 0, len(e.prunedPartitions)) for _, p := range e.prunedPartitions { @@ -472,7 +476,7 @@ func (e *IndexLookUpExecutor) buildTableKeyRanges() (err error) { if e.partitionRangeMap != nil && e.partitionRangeMap[physicalID] != nil { ranges = e.partitionRangeMap[physicalID] } - var kvRange []kv.KeyRange + var kvRange *kv.KeyRanges if e.index.ID == -1 { kvRange, err = distsql.CommonHandleRangesToKVRanges(sc, []int64{physicalID}, ranges) } else { @@ -481,15 +485,17 @@ func (e *IndexLookUpExecutor) buildTableKeyRanges() (err error) { if err != nil { return err } - e.partitionKVRanges = append(e.partitionKVRanges, kvRange) + e.partitionKVRanges = append(e.partitionKVRanges, kvRange.FirstPartitionRange()) } } else { physicalID := getPhysicalTableID(e.table) + var kvRanges *kv.KeyRanges if e.index.ID == -1 { - e.kvRanges, err = distsql.CommonHandleRangesToKVRanges(sc, []int64{physicalID}, e.ranges) + kvRanges, err = distsql.CommonHandleRangesToKVRanges(sc, []int64{physicalID}, e.ranges) } else { - e.kvRanges, err = distsql.IndexRangesToKVRanges(sc, physicalID, e.index.ID, e.ranges, e.feedback) + kvRanges, err = distsql.IndexRangesToKVRanges(sc, physicalID, e.index.ID, e.ranges, e.feedback) } + e.kvRanges = kvRanges.FirstPartitionRange() } return err } @@ -718,6 +724,9 @@ func (e *IndexLookUpExecutor) buildTableReader(ctx context.Context, task *lookup // Close implements Exec Close interface. func (e *IndexLookUpExecutor) Close() error { + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } e.kvRanges = e.kvRanges[:0] if e.dummy { return nil @@ -802,7 +811,6 @@ func (e *IndexLookUpExecutor) initRuntimeStats() { indexScanBasicStats: &execdetails.BasicRuntimeStats{}, Concurrency: e.ctx.GetSessionVars().IndexLookupConcurrency(), } - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } } @@ -870,7 +878,7 @@ func (w *indexWorker) fetchHandles(ctx context.Context, result distsql.SelectRes idxID := w.idxLookup.getIndexPlanRootID() if w.idxLookup.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl != nil { if idxID != w.idxLookup.id && w.idxLookup.stats != nil { - w.idxLookup.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(idxID, w.idxLookup.stats.indexScanBasicStats) + w.idxLookup.stats.indexScanBasicStats = w.idxLookup.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.GetBasicRuntimeStats(idxID) } } for { diff --git a/executor/distsql_test.go b/executor/distsql_test.go index 59b3aecc2bb6a..4420a714e96cf 100644 --- a/executor/distsql_test.go +++ b/executor/distsql_test.go @@ -316,9 +316,8 @@ func TestPartitionTableIndexLookUpReader(t *testing.T) { tk.MustQuery("select * from t where a>=1 and a<15 order by a").Check(testkit.Rows("1 1", "2 2", "11 11", "12 12")) tk.MustQuery("select * from t where a>=1 and a<15 order by a limit 1").Check(testkit.Rows("1 1")) tk.MustQuery("select * from t where a>=1 and a<15 order by a limit 3").Check(testkit.Rows("1 1", "2 2", "11 11")) - tk.MustQuery("select * from t where a>=1 and a<15 limit 3").Check(testkit.Rows("1 1", "2 2", "11 11")) - tk.MustQuery("select * from t where a between 1 and 15 limit 3").Check(testkit.Rows("1 1", "2 2", "11 11")) - tk.MustQuery("select * from t where a between 1 and 15 limit 3 offset 1").Check(testkit.Rows("2 2", "11 11", "12 12")) + tk.MustQuery("select * from t where a between 1 and 15 order by a limit 3").Check(testkit.Rows("1 1", "2 2", "11 11")) + tk.MustQuery("select * from t where a between 1 and 15 order by a limit 3 offset 1").Check(testkit.Rows("2 2", "11 11", "12 12")) } func TestPartitionTableRandomlyIndexLookUpReader(t *testing.T) { diff --git a/executor/errors.go b/executor/errors.go index 4a0c7f9215875..565a712d1c7d9 100644 --- a/executor/errors.go +++ b/executor/errors.go @@ -69,8 +69,11 @@ var ( ErrFuncNotEnabled = dbterror.ClassExecutor.NewStdErr(mysql.ErrNotSupportedYet, parser_mysql.Message("%-.32s is not supported. To enable this experimental feature, set '%-.32s' in the configuration file.", nil)) errSavepointNotExists = dbterror.ClassExecutor.NewStd(mysql.ErrSpDoesNotExist) ErrForeignKeyCascadeDepthExceeded = dbterror.ClassExecutor.NewStd(mysql.ErrForeignKeyCascadeDepthExceeded) + ErrPasswordExpireAnonymousUser = dbterror.ClassExecutor.NewStd(mysql.ErrPasswordExpireAnonymousUser) + errMustChangePassword = dbterror.ClassExecutor.NewStd(mysql.ErrMustChangePassword) ErrWrongStringLength = dbterror.ClassDDL.NewStd(mysql.ErrWrongStringLength) errUnsupportedFlashbackTmpTable = dbterror.ClassDDL.NewStdErr(mysql.ErrUnsupportedDDLOperation, parser_mysql.Message("Recover/flashback table is not supported on temporary tables", nil)) errTruncateWrongInsertValue = dbterror.ClassTable.NewStdErr(mysql.ErrTruncatedWrongValue, parser_mysql.Message("Incorrect %-.32s value: '%-.128s' for column '%.192s' at row %d", nil)) + ErrExistsInHistoryPassword = dbterror.ClassExecutor.NewStd(mysql.ErrExistsInHistoryPassword) ) diff --git a/executor/executor.go b/executor/executor.go index 6401d41e7e77e..cb96942e8f776 100644 --- a/executor/executor.go +++ b/executor/executor.go @@ -272,8 +272,7 @@ func newBaseExecutor(ctx sessionctx.Context, schema *expression.Schema, id int, } if ctx.GetSessionVars().StmtCtx.RuntimeStatsColl != nil { if e.id > 0 { - e.runtimeStats = &execdetails.BasicRuntimeStats{} - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(id, e.runtimeStats) + e.runtimeStats = e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.GetBasicRuntimeStats(id) } } if schema != nil { @@ -323,7 +322,7 @@ func Next(ctx context.Context, e Executor, req *chunk.Chunk) error { if trace.IsEnabled() { defer trace.StartRegion(ctx, fmt.Sprintf("%T.Next", e)).End() } - if topsqlstate.TopSQLEnabled() && sessVars.StmtCtx.IsSQLAndPlanRegistered.CAS(false, true) { + if topsqlstate.TopSQLEnabled() && sessVars.StmtCtx.IsSQLAndPlanRegistered.CompareAndSwap(false, true) { registerSQLAndPlanInExecForTopSQL(sessVars) } err := e.Next(ctx, req) @@ -399,7 +398,7 @@ func (e *ShowNextRowIDExec) Next(ctx context.Context, req *chunk.Chunk) error { tblMeta := tbl.Meta() allocators := tbl.Allocators(e.ctx) - for _, alloc := range allocators { + for _, alloc := range allocators.Allocs { nextGlobalID, err := alloc.NextGlobalAutoID() if err != nil { return err @@ -407,7 +406,16 @@ func (e *ShowNextRowIDExec) Next(ctx context.Context, req *chunk.Chunk) error { var colName, idType string switch alloc.GetType() { - case autoid.RowIDAllocType, autoid.AutoIncrementType: + case autoid.RowIDAllocType: + idType = "_TIDB_ROWID" + if tblMeta.PKIsHandle { + if col := tblMeta.GetAutoIncrementColInfo(); col != nil { + colName = col.Name.O + } + } else { + colName = model.ExtraHandleName.O + } + case autoid.AutoIncrementType: idType = "AUTO_INCREMENT" if tblMeta.PKIsHandle { if col := tblMeta.GetAutoIncrementColInfo(); col != nil { @@ -1951,6 +1959,10 @@ func ResetContextOfStmt(ctx sessionctx.Context, s ast.StmtNode) (err error) { sc.UseDynamicPruneMode = false } + sc.StatsLoad.Timeout = 0 + sc.StatsLoad.NeededItems = nil + sc.StatsLoad.ResultCh = nil + sc.SysdateIsNow = ctx.GetSessionVars().SysdateIsNow vars.MemTracker.UnbindActions() @@ -1963,21 +1975,22 @@ func ResetContextOfStmt(ctx sessionctx.Context, s ast.StmtNode) (err error) { if _, ok := s.(*ast.AnalyzeTableStmt); ok { sc.InitMemTracker(memory.LabelForAnalyzeMemory, -1) vars.MemTracker.SetBytesLimit(-1) + vars.MemTracker.AttachTo(GlobalAnalyzeMemoryTracker) } else { sc.InitMemTracker(memory.LabelForSQLText, -1) - logOnQueryExceedMemQuota := domain.GetDomain(ctx).ExpensiveQueryHandle().LogOnQueryExceedMemQuota - switch variable.OOMAction.Load() { - case variable.OOMActionCancel: - action := &memory.PanicOnExceed{ConnID: vars.ConnectionID} - action.SetLogHook(logOnQueryExceedMemQuota) - vars.MemTracker.SetActionOnExceed(action) - case variable.OOMActionLog: - fallthrough - default: - action := &memory.LogOnExceed{ConnID: vars.ConnectionID} - action.SetLogHook(logOnQueryExceedMemQuota) - vars.MemTracker.SetActionOnExceed(action) - } + } + logOnQueryExceedMemQuota := domain.GetDomain(ctx).ExpensiveQueryHandle().LogOnQueryExceedMemQuota + switch variable.OOMAction.Load() { + case variable.OOMActionCancel: + action := &memory.PanicOnExceed{ConnID: vars.ConnectionID} + action.SetLogHook(logOnQueryExceedMemQuota) + vars.MemTracker.SetActionOnExceed(action) + case variable.OOMActionLog: + fallthrough + default: + action := &memory.LogOnExceed{ConnID: vars.ConnectionID} + action.SetLogHook(logOnQueryExceedMemQuota) + vars.MemTracker.SetActionOnExceed(action) } sc.MemTracker.SessionID = vars.ConnectionID sc.MemTracker.AttachTo(vars.MemTracker) @@ -2182,39 +2195,6 @@ func ResetUpdateStmtCtx(sc *stmtctx.StatementContext, stmt *ast.UpdateStmt, vars sc.IgnoreNoPartition = stmt.IgnoreErr } -// FillVirtualColumnValue will calculate the virtual column value by evaluating generated -// expression using rows from a chunk, and then fill this value into the chunk -func FillVirtualColumnValue(virtualRetTypes []*types.FieldType, virtualColumnIndex []int, - schema *expression.Schema, columns []*model.ColumnInfo, sctx sessionctx.Context, req *chunk.Chunk) error { - if len(virtualColumnIndex) == 0 { - return nil - } - - virCols := chunk.NewChunkWithCapacity(virtualRetTypes, req.Capacity()) - iter := chunk.NewIterator4Chunk(req) - for i, idx := range virtualColumnIndex { - for row := iter.Begin(); row != iter.End(); row = iter.Next() { - datum, err := schema.Columns[idx].EvalVirtualColumn(row) - if err != nil { - return err - } - // Because the expression might return different type from - // the generated column, we should wrap a CAST on the result. - castDatum, err := table.CastValue(sctx, datum, columns[idx], false, true) - if err != nil { - return err - } - // Handle the bad null error. - if (mysql.HasNotNullFlag(columns[idx].GetFlag()) || mysql.HasPreventNullInsertFlag(columns[idx].GetFlag())) && castDatum.IsNull() { - castDatum = table.GetZeroValue(columns[idx]) - } - virCols.AppendDatum(i, &castDatum) - } - req.SetCol(idx, virCols.Column(i)) - } - return nil -} - func setOptionForTopSQL(sc *stmtctx.StatementContext, snapshot kv.Snapshot) { if snapshot == nil { return diff --git a/executor/executor_test.go b/executor/executor_test.go index ed4551f809ee4..59e70022727d5 100644 --- a/executor/executor_test.go +++ b/executor/executor_test.go @@ -174,6 +174,15 @@ func TestPlanReplayer(t *testing.T) { require.Len(t, rows, 1) } +func TestPlanReplayerCapture(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("plan replayer capture '123' '123';") + tk.MustQuery("select sql_digest, plan_digest from mysql.plan_replayer_task;").Check(testkit.Rows("123 123")) + tk.MustGetErrMsg("plan replayer capture '123' '123';", "plan replayer capture task already exists") +} + func TestShow(t *testing.T) { store := testkit.CreateMockStore(t) tk := testkit.NewTestKit(t, store) @@ -1913,7 +1922,7 @@ func TestCheckIndex(t *testing.T) { tbInfo := tbl.Meta() alloc := autoid.NewAllocator(store, dbInfo.ID, tbInfo.ID, false, autoid.RowIDAllocType) - tb, err := tables.TableFromMeta(autoid.NewAllocators(alloc), tbInfo) + tb, err := tables.TableFromMeta(autoid.NewAllocators(false, alloc), tbInfo) require.NoError(t, err) _, err = se.Execute(context.Background(), "admin check index t c") @@ -6178,6 +6187,38 @@ func TestGlobalMemoryControl2(t *testing.T) { runtime.GC() } +func TestGlobalMemoryControlForAnalyze(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + + tk0 := testkit.NewTestKit(t, store) + tk0.MustExec("set global tidb_mem_oom_action = 'cancel'") + tk0.MustExec("set global tidb_server_memory_limit = 512MB") + tk0.MustExec("set global tidb_server_memory_limit_sess_min_size = 128") + + sm := &testkit.MockSessionManager{ + PS: []*util.ProcessInfo{tk0.Session().ShowProcess()}, + } + dom.ServerMemoryLimitHandle().SetSessionManager(sm) + go dom.ServerMemoryLimitHandle().Run() + + tk0.MustExec("use test") + tk0.MustExec("create table t(a int)") + tk0.MustExec("insert into t select 1") + for i := 1; i <= 8; i++ { + tk0.MustExec("insert into t select * from t") // 256 Lines + } + sql := "analyze table t with 1.0 samplerate;" // Need about 100MB + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/util/memory/ReadMemStats", `return(536870912)`)) + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/mockAnalyzeMergeWorkerSlowConsume", `return(100)`)) + defer func() { + require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/util/memory/ReadMemStats")) + require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/executor/mockAnalyzeMergeWorkerSlowConsume")) + }() + _, err := tk0.Exec(sql) + require.True(t, strings.Contains(err.Error(), "Out Of Memory Quota!")) + runtime.GC() +} + func TestCompileOutOfMemoryQuota(t *testing.T) { store := testkit.CreateMockStore(t) tk := testkit.NewTestKit(t, store) @@ -6228,8 +6269,7 @@ func TestSessionRootTrackerDetach(t *testing.T) { tk.MustExec("create table t(a int, b int, index idx(a))") tk.MustExec("create table t1(a int, c int, index idx(a))") tk.MustExec("set tidb_mem_quota_query=10") - err := tk.ExecToErr("select /*+hash_join(t1)*/ t.a, t1.a from t use index(idx), t1 use index(idx) where t.a = t1.a") - require.Contains(t, err.Error(), "Out Of Memory Quota!") + tk.MustContainErrMsg("select /*+hash_join(t1)*/ t.a, t1.a from t use index(idx), t1 use index(idx) where t.a = t1.a", "Out Of Memory Quota!") tk.MustExec("set tidb_mem_quota_query=1000") rs, err := tk.Exec("select /*+hash_join(t1)*/ t.a, t1.a from t use index(idx), t1 use index(idx) where t.a = t1.a") require.NoError(t, err) @@ -6238,3 +6278,34 @@ func TestSessionRootTrackerDetach(t *testing.T) { require.NoError(t, err) require.Nil(t, tk.Session().GetSessionVars().MemTracker.GetFallbackForTest(false)) } + +func TestIssue39211(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t;") + tk.MustExec("drop table if exists s;") + + tk.MustExec("CREATE TABLE `t` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL);") + tk.MustExec("CREATE TABLE `s` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL);") + tk.MustExec("insert into t values(1,1),(2,2);") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + tk.MustExec("insert into t select * from t;") + + tk.MustExec("insert into s values(3,3),(4,4),(1,null),(2,null),(null,null);") + tk.MustExec("insert into s select * from s;") + tk.MustExec("insert into s select * from s;") + tk.MustExec("insert into s select * from s;") + tk.MustExec("insert into s select * from s;") + tk.MustExec("insert into s select * from s;") + + tk.MustExec("set @@tidb_max_chunk_size=32;") + tk.MustExec("set @@tidb_enable_null_aware_anti_join=true;") + tk.MustQuery("select * from t where (a,b) not in (select a, b from s);").Check(testkit.Rows()) +} diff --git a/executor/explain_test.go b/executor/explain_test.go index c67c61a67a909..bbabaef759e3b 100644 --- a/executor/explain_test.go +++ b/executor/explain_test.go @@ -16,6 +16,7 @@ package executor_test import ( "bytes" + "encoding/json" "fmt" "regexp" "strconv" @@ -364,7 +365,7 @@ func TestCheckActRowsWithUnistore(t *testing.T) { }, { sql: "select count(*) from t_unistore_act_rows group by b", - expected: []string{"2", "2", "2", "4"}, + expected: []string{"2", "4", "4"}, }, { sql: "with cte(a) as (select a from t_unistore_act_rows) select (select 1 from cte limit 1) from cte;", @@ -515,3 +516,96 @@ func TestIssue35105(t *testing.T) { require.Error(t, tk.ExecToErr("explain analyze insert into t values (1), (2), (3)")) tk.MustQuery("select * from t").Check(testkit.Rows("2")) } + +func flatJSONPlan(j *plannercore.ExplainInfoForEncode) (res []*plannercore.ExplainInfoForEncode) { + if j == nil { + return + } + res = append(res, j) + for _, child := range j.SubOperators { + res = append(res, flatJSONPlan(child)...) + } + return +} + +func TestExplainJSON(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t1, t2") + tk.MustExec("create table t1(id int, key(id))") + tk.MustExec("create table t2(id int, key(id))") + cases := []string{ + "select * from t1", + "select count(*) from t2", + "select * from t1, t2 where t1.id = t2.id", + "select /*+ merge_join(t1, t2)*/ * from t1, t2 where t1.id = t2.id", + "with top10 as ( select * from t1 order by id desc limit 10 ) select * from top10 where id in (1,2)", + "insert into t1 values(1)", + "delete from t2 where t2.id > 10", + "update t2 set id = 1 where id =2", + "select * from t1 where t1.id < (select sum(t2.id) from t2 where t2.id = t1.id)", + } + // test syntax + tk.MustExec("explain format = 'tidb_json' select * from t1") + tk.MustExec("explain format = tidb_json select * from t1") + tk.MustExec("explain format = 'TIDB_JSON' select * from t1") + tk.MustExec("explain format = TIDB_JSON select * from t1") + tk.MustExec("explain analyze format = 'tidb_json' select * from t1") + tk.MustExec("explain analyze format = tidb_json select * from t1") + tk.MustExec("explain analyze format = 'TIDB_JSON' select * from t1") + tk.MustExec("explain analyze format = TIDB_JSON select * from t1") + + // explain + for _, sql := range cases { + jsonForamt := "explain format = tidb_json " + sql + rowForamt := "explain format = row " + sql + resJSON := tk.MustQuery(jsonForamt).Rows() + resRow := tk.MustQuery(rowForamt).Rows() + + j := new([]*plannercore.ExplainInfoForEncode) + require.NoError(t, json.Unmarshal([]byte(resJSON[0][0].(string)), j)) + var flatJSONRows []*plannercore.ExplainInfoForEncode + for _, row := range *j { + flatJSONRows = append(flatJSONRows, flatJSONPlan(row)...) + } + require.Equal(t, len(flatJSONRows), len(resRow)) + + for i, row := range resRow { + require.Contains(t, row[0], flatJSONRows[i].ID) + require.Equal(t, flatJSONRows[i].EstRows, row[1]) + require.Equal(t, flatJSONRows[i].TaskType, row[2]) + require.Equal(t, flatJSONRows[i].AccessObject, row[3]) + require.Equal(t, flatJSONRows[i].OperatorInfo, row[4]) + } + } + + // explain analyze + for _, sql := range cases { + jsonForamt := "explain analyze format = tidb_json " + sql + rowForamt := "explain analyze format = row " + sql + resJSON := tk.MustQuery(jsonForamt).Rows() + resRow := tk.MustQuery(rowForamt).Rows() + + j := new([]*plannercore.ExplainInfoForEncode) + require.NoError(t, json.Unmarshal([]byte(resJSON[0][0].(string)), j)) + var flatJSONRows []*plannercore.ExplainInfoForEncode + for _, row := range *j { + flatJSONRows = append(flatJSONRows, flatJSONPlan(row)...) + } + require.Equal(t, len(flatJSONRows), len(resRow)) + + for i, row := range resRow { + require.Contains(t, row[0], flatJSONRows[i].ID) + require.Equal(t, flatJSONRows[i].EstRows, row[1]) + require.Equal(t, flatJSONRows[i].ActRows, row[2]) + require.Equal(t, flatJSONRows[i].TaskType, row[3]) + require.Equal(t, flatJSONRows[i].AccessObject, row[4]) + require.Equal(t, flatJSONRows[i].OperatorInfo, row[6]) + // executeInfo, memory, disk maybe vary in multi execution + require.NotEqual(t, flatJSONRows[i].ExecuteInfo, "") + require.NotEqual(t, flatJSONRows[i].MemoryInfo, "") + require.NotEqual(t, flatJSONRows[i].DiskInfo, "") + } + } +} diff --git a/executor/explainfor_test.go b/executor/explainfor_test.go index 85652a5f04ddb..89245fa6b237d 100644 --- a/executor/explainfor_test.go +++ b/executor/explainfor_test.go @@ -16,6 +16,7 @@ package executor_test import ( "bytes" + "encoding/json" "fmt" "strconv" "testing" @@ -1395,3 +1396,74 @@ func TestIssue28792(t *testing.T) { r2 := tk.MustQuery("EXPLAIN SELECT t12.a, t12.b FROM t12 LEFT JOIN t97 use index () on t12.b = t97.b;").Rows() require.Equal(t, r2, r1) } + +func TestExplainForJSON(t *testing.T) { + store := testkit.CreateMockStore(t) + tk1 := testkit.NewTestKit(t, store) + tk2 := testkit.NewTestKit(t, store) + + tk1.MustExec("use test") + tk1.MustExec("set @@tidb_enable_collect_execution_info=0;") + tk1.MustExec("drop table if exists t1") + tk1.MustExec("create table t1(id int);") + tk1.MustQuery("select * from t1;") + tk1RootProcess := tk1.Session().ShowProcess() + ps := []*util.ProcessInfo{tk1RootProcess} + tk1.Session().SetSessionManager(&testkit.MockSessionManager{PS: ps}) + tk2.Session().SetSessionManager(&testkit.MockSessionManager{PS: ps}) + resRow := tk2.MustQuery(fmt.Sprintf("explain format = 'row' for connection %d", tk1RootProcess.ID)).Rows() + resJSON := tk2.MustQuery(fmt.Sprintf("explain format = 'tidb_json' for connection %d", tk1RootProcess.ID)).Rows() + + j := new([]*core.ExplainInfoForEncode) + require.NoError(t, json.Unmarshal([]byte(resJSON[0][0].(string)), j)) + flatJSONRows := make([]*core.ExplainInfoForEncode, 0) + for _, row := range *j { + flatJSONRows = append(flatJSONRows, flatJSONPlan(row)...) + } + require.Equal(t, len(flatJSONRows), len(resRow)) + + for i, row := range resRow { + require.Contains(t, row[0], flatJSONRows[i].ID) + require.Equal(t, flatJSONRows[i].EstRows, row[1]) + require.Equal(t, flatJSONRows[i].TaskType, row[2]) + require.Equal(t, flatJSONRows[i].AccessObject, row[3]) + require.Equal(t, flatJSONRows[i].OperatorInfo, row[4]) + } + + tk1.MustExec("set @@tidb_enable_collect_execution_info=1;") + tk1.MustExec("drop table if exists t2") + tk1.MustExec("create table t2(id int);") + tk1.MustQuery("select * from t2;") + tk1RootProcess = tk1.Session().ShowProcess() + ps = []*util.ProcessInfo{tk1RootProcess} + tk1.Session().SetSessionManager(&testkit.MockSessionManager{PS: ps}) + tk2.Session().SetSessionManager(&testkit.MockSessionManager{PS: ps}) + resRow = tk2.MustQuery(fmt.Sprintf("explain format = 'row' for connection %d", tk1RootProcess.ID)).Rows() + resJSON = tk2.MustQuery(fmt.Sprintf("explain format = 'tidb_json' for connection %d", tk1RootProcess.ID)).Rows() + + j = new([]*core.ExplainInfoForEncode) + require.NoError(t, json.Unmarshal([]byte(resJSON[0][0].(string)), j)) + flatJSONRows = []*core.ExplainInfoForEncode{} + for _, row := range *j { + flatJSONRows = append(flatJSONRows, flatJSONPlan(row)...) + } + require.Equal(t, len(flatJSONRows), len(resRow)) + + for i, row := range resRow { + require.Contains(t, row[0], flatJSONRows[i].ID) + require.Equal(t, flatJSONRows[i].EstRows, row[1]) + require.Equal(t, flatJSONRows[i].ActRows, row[2]) + require.Equal(t, flatJSONRows[i].TaskType, row[3]) + require.Equal(t, flatJSONRows[i].AccessObject, row[4]) + require.Equal(t, flatJSONRows[i].OperatorInfo, row[6]) + // executeInfo, memory, disk maybe vary in multi execution + require.NotEqual(t, flatJSONRows[i].ExecuteInfo, "") + require.NotEqual(t, flatJSONRows[i].MemoryInfo, "") + require.NotEqual(t, flatJSONRows[i].DiskInfo, "") + } + // test syntax + tk2.MustExec(fmt.Sprintf("explain format = 'tidb_json' for connection %d", tk1RootProcess.ID)) + tk2.MustExec(fmt.Sprintf("explain format = tidb_json for connection %d", tk1RootProcess.ID)) + tk2.MustExec(fmt.Sprintf("explain format = 'TIDB_JSON' for connection %d", tk1RootProcess.ID)) + tk2.MustExec(fmt.Sprintf("explain format = TIDB_JSON for connection %d", tk1RootProcess.ID)) +} diff --git a/executor/fktest/BUILD.bazel b/executor/fktest/BUILD.bazel index dbdae1843edaf..f245bba152c59 100644 --- a/executor/fktest/BUILD.bazel +++ b/executor/fktest/BUILD.bazel @@ -8,12 +8,15 @@ go_test( "main_test.go", ], flaky = True, + shard_count = 20, deps = [ "//config", "//executor", + "//infoschema", "//kv", "//meta/autoid", "//parser/ast", + "//parser/auth", "//parser/format", "//parser/model", "//parser/mysql", diff --git a/executor/fktest/foreign_key_test.go b/executor/fktest/foreign_key_test.go index 558c033b89621..9875c8f53de43 100644 --- a/executor/fktest/foreign_key_test.go +++ b/executor/fktest/foreign_key_test.go @@ -24,9 +24,12 @@ import ( "testing" "time" + "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/executor" + "github.com/pingcap/tidb/infoschema" "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/format" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" @@ -545,7 +548,7 @@ func TestForeignKeyOnInsertOnDuplicateParentTableCheck(t *testing.T) { tk.MustQuery("select id, a, b, name from t2 order by id").Check(testkit.Rows("1 11 21 a")) tk.MustExec("insert into t1 (id, a, b) values (1, 11, 21) on duplicate key update id=11") - tk.MustGetDBError("insert into t1 (id, a, b) values (1, 11, 21) on duplicate key update a=a+10, b=b+20", plannercore.ErrRowIsReferenced2) + tk.MustGetDBError("insert into t1 (id, a, b) values (11, 11, 21) on duplicate key update a=a+10, b=b+20", plannercore.ErrRowIsReferenced2) tk.MustQuery("select id, a, b from t1 order by id").Check(testkit.Rows("2 1112 2222", "3 1013 2023", "4 14 24", "11 11 21")) tk.MustQuery("select id, a, b, name from t2 order by id").Check(testkit.Rows("1 11 21 a")) } @@ -567,6 +570,15 @@ func TestForeignKeyOnInsertOnDuplicateParentTableCheck(t *testing.T) { tk.MustGetDBError("insert into t1 (id, a, b) values (1, 0, 0) on duplicate key update id=100+id", plannercore.ErrRowIsReferenced2) tk.MustQuery("select id, a, b from t1 order by id").Check(testkit.Rows("1 111 21", "4 14 24", "102 12 22", "103 13 23")) tk.MustQuery("select id, a, b, name from t2 order by id").Check(testkit.Rows("11 1 21 a")) + + // Case-10: Test insert into parent table failed cause by foreign key check, see https://github.com/pingcap/tidb/issues/39200. + tk.MustExec("drop table if exists t1,t2;") + tk.MustExec("create table t1 (id int key);") + tk.MustExec("create table t2 (id int, foreign key fk(id) references t1(id));") + tk.MustExec("set @@foreign_key_checks=0") + tk.MustExec("insert into t2 values (1)") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("insert into t1 values (1) on duplicate key update id=2") } func TestForeignKey(t *testing.T) { @@ -1997,18 +2009,19 @@ func TestDMLExplainAnalyzeFKInfo(t *testing.T) { tk.MustExec("insert into t1 values (1), (2)") tk.MustExec("insert into t2 values (1)") res := tk.MustQuery("explain analyze insert ignore into t3 values (1, 1, 1), (2, 1, 1), (3, 2, 1), (4, 1, 1), (5, 2, 1), (6, 2, 1)") - getExplainResultFn := func(res *testkit.Result) string { - resBuff := bytes.NewBufferString("") - for _, row := range res.Rows() { - _, _ = fmt.Fprintf(resBuff, "%s\t", row) - } - return resBuff.String() - } - explain := getExplainResultFn(res) - require.Regexpf(t, "time:.* loops:.* prepare:.* check_insert: {total_time:.* mem_insert_time:.* prefetch:.* fk_check:.* fk_num: 3.*", explain, "") + explain := getExplainResult(res) + require.Regexpf(t, "time:.* loops:.* prepare:.* check_insert: {total_time:.* mem_insert_time:.* prefetch:.* fk_check:.*", explain, "") res = tk.MustQuery("explain analyze insert ignore into t3 values (7, null, null), (8, null, null)") - explain = getExplainResultFn(res) - require.NotContains(t, explain, "fk_check", explain, "") + explain = getExplainResult(res) + require.Regexpf(t, "time:.* loops:.* prepare:.* check_insert: {total_time:.* mem_insert_time:.* prefetch:.* fk_check:.*", explain, "") +} + +func getExplainResult(res *testkit.Result) string { + resBuff := bytes.NewBufferString("") + for _, row := range res.Rows() { + _, _ = fmt.Fprintf(resBuff, "%s\t", row) + } + return resBuff.String() } func TestForeignKeyCascadeOnDiffColumnType(t *testing.T) { @@ -2072,3 +2085,438 @@ func TestForeignKeyOnInsertOnDuplicateUpdate(t *testing.T) { tk.MustQuery("select * from t2").Check(testkit.Rows("1")) tk.MustQuery("select * from t3").Check(testkit.Rows("1")) } + +func TestForeignKeyIssue39419(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key);") + tk.MustExec("create table t2 (id int key, a int, b int, " + + "foreign key fk_1 (a) references t1(id) ON DELETE SET NULL ON UPDATE SET NULL, " + + "foreign key fk_2 (b) references t1(id) ON DELETE CASCADE ON UPDATE CASCADE);") + tk.MustExec("insert into t1 values (1), (2), (3);") + tk.MustExec("insert into t2 values (1, 1, 1), (2, 2, 2), (3, 3, 3);") + tk.MustExec("update t1 set id=id+10 where id in (1, 3);") + tk.MustQuery("select * from t1 order by id").Check(testkit.Rows("2", "11", "13")) + tk.MustQuery("select * from t2 order by id").Check(testkit.Rows("1 11", "2 2 2", "3 13")) + tk.MustExec("delete from t1 where id = 2;") + tk.MustQuery("select * from t1 order by id").Check(testkit.Rows("11", "13")) + tk.MustQuery("select * from t2 order by id").Check(testkit.Rows("1 11", "3 13")) + + tk.MustExec("drop table t1,t2") + tk.MustExec("create table t1 (id int, b int, index(id), foreign key fk_2 (b) references t1(id) ON UPDATE CASCADE);") + tk.MustExec("insert into t1 values (1, 1), (2, 2), (3, 3);") + tk.MustExec("update t1 set id=id+10 where id > 1") + tk.MustQuery("select * from t1 order by id").Check(testkit.Rows("1 1", "12 12", "13 13")) +} + +func TestExplainAnalyzeDMLWithFKInfo(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key);") + tk.MustExec("create table t2 (id int key, foreign key fk(id) references t1(id) ON UPDATE CASCADE ON DELETE CASCADE);") + tk.MustExec("create table t3 (id int, unique index idx(id));") + tk.MustExec("create table t4 (id int, index idx_id(id),foreign key fk(id) references t3(id));") + tk.MustExec("create table t5 (id int key, id2 int, id3 int, unique index idx2(id2), index idx3(id3));") + tk.MustExec("create table t6 (id int, id2 int, id3 int, index idx_id(id), index idx_id2(id2), " + + "foreign key fk_1 (id) references t5(id) ON UPDATE CASCADE ON DELETE SET NULL, " + + "foreign key fk_2 (id2) references t5(id2) ON UPDATE CASCADE, " + + "foreign key fk_3 (id3) references t5(id3) ON DELETE CASCADE);") + tk.MustExec("create table t7(id int primary key, pid int, index(pid), foreign key(pid) references t7(id) on delete cascade);") + + cases := []struct { + prepare []string + sql string + plan string + }{ + // Test foreign key use primary key. + { + prepare: []string{ + "insert into t1 values (1),(2),(3),(4),(5)", + }, + sql: "explain analyze insert into t2 values (1),(2),(3);", + plan: "Insert_. N/A 0 root time:.*, loops:1, prepare:.*, insert:.*" + + "└─Foreign_Key_Check_. 0.00 0 root table:t1 total:.*, check:.*, lock:.*, foreign_keys:3 foreign_key:fk, check_exist N/A N/A", + }, + { + sql: "explain analyze insert ignore into t2 values (10),(11),(12);", + plan: "Insert_.* fk_check.*" + + "└─Foreign_Key_Check_.* 0 root table:t1 total:0s, foreign_keys:3 foreign_key:fk, check_exist N/A N/A", + }, + { + sql: "explain analyze update t2 set id=id+2 where id >1", + plan: "Update_.* 0 root time:.*, loops:1.*" + + "├─TableReader_.*" + + "│ └─TableRangeScan.*" + + "└─Foreign_Key_Check_.* 0 root table:t1 total:.*, check:.*, lock:.*, foreign_keys:2 foreign_key:fk, check_exist N/A N/A", + }, + { + sql: "explain analyze delete from t1 where id>1", + plan: "Delete_.*" + + "├─TableReader_.*" + + "│ └─TableRangeScan_.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t2 total:.*, foreign_keys:4 foreign_key:fk, on_delete:CASCADE N/A N/A.*" + + " └─Delete_.*" + + " └─Batch_Point_Get_.*", + }, + { + sql: "explain analyze update t1 set id=id+1 where id = 1", + plan: "Update_.*" + + "├─Point_Get_.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t2 total:.*, foreign_keys:1 foreign_key:fk, on_update:CASCADE N/A N/A.*" + + " └─Update_.*" + + " ├─Point_Get_.*" + + " └─Foreign_Key_Check_.*", + }, + { + sql: "explain analyze insert into t1 values (1) on duplicate key update id = 100", + plan: "Insert_.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t2 total:0s foreign_key:fk, on_update:CASCADE N/A N/A", + }, + { + sql: "explain analyze insert into t1 values (2) on duplicate key update id = 100", + plan: "Insert_.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t2 total:.*, foreign_keys:1 foreign_key:fk, on_update:CASCADE N/A N/A.*" + + " └─Update_.*" + + " ├─Point_Get_.*" + + " └─Foreign_Key_Check_.* 0 root table:t1 total:.*, check:.*, lock:.*, foreign_keys:1 foreign_key:fk, check_exist N/A N/A", + }, + // Test foreign key use index. + { + prepare: []string{ + "insert into t3 values (1),(2),(3),(4),(5)", + }, + sql: "explain analyze insert into t4 values (1),(2),(3);", + plan: "Insert_.*" + + "└─Foreign_Key_Check_.* 0 root table:t3, index:idx total:.*, check:.*, lock:.*, foreign_keys:3 foreign_key:fk, check_exist N/A N/A", + }, + { + sql: "explain analyze update t4 set id=id+2 where id >1", + plan: "Update_.*" + + "├─IndexReader_.*" + + "│ └─IndexRangeScan_.*" + + "└─Foreign_Key_Check_.* 0 root table:t3, index:idx total:.*, check:.*, lock:.*, foreign_keys:2 foreign_key:fk, check_exist N/A N/A", + }, + { + sql: "explain analyze delete from t3 where id in (2,3)", + plan: "Delete_.*" + + "├─Batch_Point_Get_.*" + + "└─Foreign_Key_Check_.* 0 root table:t4, index:idx_id total:.*, check:.*, foreign_keys:2 foreign_key:fk, check_not_exist N/A N/A", + }, + { + prepare: []string{ + "insert into t3 values (2)", + }, + sql: "explain analyze update t3 set id=id+1 where id = 2", + plan: "Update_.*" + + "├─Point_Get_.*" + + "└─Foreign_Key_Check_.* 0 root table:t4, index:idx_id total:.*, check:.*, foreign_keys:1 foreign_key:fk, check_not_exist N/A N/A", + }, + + { + sql: "explain analyze insert into t3 values (2) on duplicate key update id = 100", + plan: "Insert_.*" + + "└─Foreign_Key_Check_.* 0 root table:t4, index:idx_id total:0s foreign_key:fk, check_not_exist N/A N/A", + }, + { + sql: "explain analyze insert into t3 values (3) on duplicate key update id = 100", + plan: "Insert_.*" + + "└─Foreign_Key_Check_.* 0 root table:t4, index:idx_id total:.*, check:.*, foreign_keys:1 foreign_key:fk, check_not_exist N/A N/A", + }, + // Test multi-foreign keys in on table. + { + prepare: []string{ + "insert into t5 values (1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5)", + }, + sql: "explain analyze insert into t6 values (1,1,1)", + plan: "Insert_.*" + + "├─Foreign_Key_Check_.* 0 root table:t5 total:.*, check:.*, lock:.*, foreign_keys:1 foreign_key:fk_1, check_exist N/A N/A.*" + + "├─Foreign_Key_Check_.* 0 root table:t5, index:idx2 total:.*, check:.*, lock:.*, foreign_keys:1 foreign_key:fk_2, check_exist N/A N/A.*" + + "└─Foreign_Key_Check_.* 0 root table:t5, index:idx3 total:.*, check:.*, lock:.*, foreign_keys:1 foreign_key:fk_3, check_exist N/A N/A", + }, + { + sql: "explain analyze insert ignore into t6 values (1,1,10)", + plan: "Insert_.* root time:.* loops:.* prepare:.* check_insert.* fk_check:.*" + + "├─Foreign_Key_Check.* 0 root table:t5 total:0s, foreign_keys:1 foreign_key:fk_1, check_exist N/A N/A.*" + + "├─Foreign_Key_Check.* 0 root table:t5, index:idx2 total:0s, foreign_keys:1 foreign_key:fk_2, check_exist N/A N/A.*" + + "└─Foreign_Key_Check.* 0 root table:t5, index:idx3 total:0s, foreign_keys:1 foreign_key:fk_3, check_exist N/A N/A", + }, + { + sql: "explain analyze update t6 set id=id+1, id3=id2+1 where id = 1", + plan: "Update_.*" + + "├─IndexLookUp_.*" + + "│ ├─IndexRangeScan_.*" + + "│ └─TableRowIDScan_.*" + + "├─Foreign_Key_Check_.* 0 root table:t5 total:.*, check:.*, lock:.*, foreign_keys:1 foreign_key:fk_1, check_exist N/A N/A.*" + + "└─Foreign_Key_Check_.* 0 root table:t5, index:idx3 total:.*, check:.*, lock:.*, foreign_keys:1 foreign_key:fk_3, check_exist N/A N/A", + }, + { + sql: "explain analyze delete from t5 where id in (4,5)", + plan: "Delete_.*" + + "├─Batch_Point_Get_.*" + + "├─Foreign_Key_Check_.* 0 root table:t6, index:idx_id2 total:.*, check:.*, foreign_keys:2 foreign_key:fk_2, check_not_exist N/A N/A.*" + + "├─Foreign_Key_Cascade_.* 0 root table:t6, index:idx_id total:.*, foreign_keys:2 foreign_key:fk_1, on_delete:SET NULL N/A N/A.*" + + "│ └─Update_.*" + + "│ │ ├─IndexRangeScan_.*" + + "│ │ └─TableRowIDScan_.*" + + "│ └─Foreign_Key_Check_.* 0 root table:t5 total:0s foreign_key:fk_1, check_exist N/A N/A.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t6, index:fk_3 total:.*, foreign_keys:2 foreign_key:fk_3, on_delete:CASCADE N/A N/A.*" + + " └─Delete_.*" + + " └─IndexLookUp_.*" + + " ├─IndexRangeScan_.*" + + " └─TableRowIDScan_.*", + }, + { + sql: "explain analyze update t5 set id=id+1, id2=id2+1 where id = 3", + plan: "Update_.*" + + "├─Point_Get_.*" + + "├─Foreign_Key_Cascade_.* 0 root table:t6, index:idx_id total:.*, foreign_keys:1 foreign_key:fk_1, on_update:CASCADE N/A N/A.*" + + "│ └─Update_.*" + + "│ ├─IndexLookUp_.*" + + "│ │ ├─IndexRangeScan_.*" + + "│ │ └─TableRowIDScan_.*" + + "│ └─Foreign_Key_Check_.* 0 root table:t5 total:0s foreign_key:fk_1, check_exist N/A N/A.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t6, index:idx_id2 total:.*, foreign_keys:1 foreign_key:fk_2, on_update:CASCADE N/A N/A.*" + + " └─Update_.*" + + " ├─IndexLookUp_.*" + + " │ ├─IndexRangeScan_.*" + + " │ └─TableRowIDScan_.*" + + " └─Foreign_Key_Check_.* 0 root table:t5, index:idx2 total:0s foreign_key:fk_2, check_exist N/A N/A", + }, + { + prepare: []string{ + "insert into t5 values (10,10,10)", + }, + sql: "explain analyze update t5 set id=id+1, id2=id2+1, id3=id3+1 where id = 10", + plan: "Update_.*" + + "├─Point_Get_.*" + + "├─Foreign_Key_Check_.* 0 root table:t6, index:fk_3 total:.*, check:.*, foreign_keys:1 foreign_key:.*, check_not_exist N/A N/A.*" + + "├─Foreign_Key_Cascade_.* 0 root table:t6, index:idx_id total:.*, foreign_keys:1 foreign_key:fk_1, on_update:CASCADE N/A N/A.*" + + "│ └─Update_.*" + + "│ ├─IndexLookUp_.*" + + "│ │ ├─IndexRangeScan_.*" + + "│ │ └─TableRowIDScan_.*" + + "│ └─Foreign_Key_Check_.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t6, index:idx_id2 total:.*, foreign_keys:1 foreign_key:fk_2, on_update:CASCADE N/A N/A.*" + + " └─Update_.*" + + " ├─IndexLookUp_.*" + + " │ ├─IndexRangeScan_.*" + + " │ └─TableRowIDScan_.*" + + " └─Foreign_Key_Check_.* 0 root table:t5, index:idx2 total:0s foreign_key:fk_2, check_exist N/A N/A", + }, + { + sql: "explain analyze insert into t5 values (1,1,1) on duplicate key update id = 100, id3=100", + plan: "Insert_.*" + + "├─Foreign_Key_Check_.* 0 root table:t6, index:fk_3 total:.*, check:.*, foreign_keys:1 foreign_key:fk_3, check_not_exist N/A N/A.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t6, index:idx_id total:.*, foreign_keys:1 foreign_key:fk_1, on_update:CASCADE N/A N/A.*" + + " └─Update_.*" + + " ├─IndexLookUp_.*" + + " │ ├─IndexRangeScan_.*" + + " │ └─TableRowIDScan_.*" + + " └─Foreign_Key_Check_.* 0 root table:t5 total:0s foreign_key:fk_1, check_exist N/A N/A", + }, + { + prepare: []string{ + "insert into t7 values(0,0),(1,0),(2,1),(3,2),(4,3),(5,4),(6,5),(7,6),(8,7),(9,8),(10,9),(11,10),(12,11),(13,12),(14,13);", + }, + sql: "explain analyze delete from t7 where id = 0;", + plan: "Delete_.*" + + "├─Point_Get_.*" + + "└─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.* foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.* foreign_keys:2 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:.*, foreign_keys:1 foreign_key:fk_1, on_delete:CASCADE.*" + + " └─Delete_.*" + + " ├─UnionScan_.*" + + " │ └─IndexReader_.*" + + " │ └─IndexRangeScan_.*" + + " └─Foreign_Key_Cascade_.* 0 root table:t7, index:pid total:0s foreign_key:fk_1, on_delete:CASCADE.*", + }, + } + for _, ca := range cases { + for _, sql := range ca.prepare { + tk.MustExec(sql) + } + res := tk.MustQuery(ca.sql) + explain := getExplainResult(res) + require.Regexp(t, ca.plan, explain) + } +} + +func TestForeignKeyRuntimeStats(t *testing.T) { + checkStats := executor.FKCheckRuntimeStats{ + Total: time.Second * 3, + Check: time.Second * 2, + Lock: time.Second, + Keys: 10, + } + require.Equal(t, "total:3s, check:2s, lock:1s, foreign_keys:10", checkStats.String()) + checkStats.Merge(checkStats.Clone()) + require.Equal(t, "total:6s, check:4s, lock:2s, foreign_keys:20", checkStats.String()) + cascadeStats := executor.FKCascadeRuntimeStats{ + Total: time.Second, + Keys: 10, + } + require.Equal(t, "total:1s, foreign_keys:10", cascadeStats.String()) + cascadeStats.Merge(cascadeStats.Clone()) + require.Equal(t, "total:2s, foreign_keys:20", cascadeStats.String()) +} + +func TestPrivilegeCheckInForeignKeyCascade(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("use test") + tk.MustExec("create table t1 (id int key);") + tk.MustExec("create table t2 (id int key, foreign key fk (id) references t1(id) ON DELETE CASCADE ON UPDATE CASCADE);") + tk.MustExec("insert into t1 values (1), (2), (3);") + cases := []struct { + prepares []string + sql string + err error + t1Rows []string + t2Rows []string + }{ + { + prepares: []string{"grant insert on test.t2 to 'u1'@'%';"}, + sql: "insert into t2 values (1), (2), (3);", + t1Rows: []string{"1", "2", "3"}, + t2Rows: []string{"1", "2", "3"}, + }, + { + prepares: []string{"grant select, delete on test.t1 to 'u1'@'%';"}, + sql: "delete from t1 where id=1;", + t1Rows: []string{"2", "3"}, + t2Rows: []string{"2", "3"}, + }, + { + prepares: []string{"grant select, update on test.t1 to 'u1'@'%';"}, + sql: "update t1 set id=id+10 where id=2;", + t1Rows: []string{"3", "12"}, + t2Rows: []string{"3", "12"}, + }, + } + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk2.MustExec("set @@foreign_key_checks=1") + for _, ca := range cases { + tk.MustExec("drop user if exists 'u1'@'%'") + tk.MustExec("create user 'u1'@'%' identified by '';") + for _, sql := range ca.prepares { + tk.MustExec(sql) + } + err := tk2.Session().Auth(&auth.UserIdentity{Username: "u1", Hostname: "localhost", CurrentUser: true, AuthUsername: "u1", AuthHostname: "%"}, nil, []byte("012345678901234567890")) + require.NoError(t, err) + if ca.err == nil { + tk2.MustExec(ca.sql) + } else { + err = tk2.ExecToErr(ca.sql) + require.Error(t, err) + } + tk.MustQuery("select * from t1 order by id").Check(testkit.Rows(ca.t1Rows...)) + tk.MustQuery("select * from t2 order by id").Check(testkit.Rows(ca.t2Rows...)) + } +} + +func TestTableLockInForeignKeyCascade(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("use test") + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + tk2.MustExec("set @@foreign_key_checks=1") + // enable table lock + config.UpdateGlobal(func(conf *config.Config) { + conf.EnableTableLock = true + }) + defer func() { + config.UpdateGlobal(func(conf *config.Config) { + conf.EnableTableLock = false + }) + }() + tk.MustExec("create table t1 (id int key);") + tk.MustExec("create table t2 (id int key, foreign key fk (id) references t1(id) ON DELETE CASCADE ON UPDATE CASCADE);") + tk.MustExec("insert into t1 values (1), (2), (3);") + tk.MustExec("insert into t2 values (1), (2), (3);") + tk.MustExec("lock table t2 read;") + tk2.MustGetDBError("delete from t1 where id = 1", infoschema.ErrTableLocked) + tk.MustExec("unlock tables;") + tk2.MustExec("delete from t1 where id = 1") + tk.MustQuery("select * from t1 order by id").Check(testkit.Rows("2", "3")) + tk.MustQuery("select * from t2 order by id").Check(testkit.Rows("2", "3")) +} diff --git a/executor/foreign_key.go b/executor/foreign_key.go index 62dbb400537e2..9908a72fd4b04 100644 --- a/executor/foreign_key.go +++ b/executor/foreign_key.go @@ -15,8 +15,11 @@ package executor import ( + "bytes" "context" + "strconv" "sync/atomic" + "time" "github.com/pingcap/errors" "github.com/pingcap/tidb/kv" @@ -31,6 +34,7 @@ import ( "github.com/pingcap/tidb/types" driver "github.com/pingcap/tidb/types/parser_driver" "github.com/pingcap/tidb/util/codec" + "github.com/pingcap/tidb/util/execdetails" "github.com/pingcap/tidb/util/set" "github.com/tikv/client-go/v2/txnkv/txnsnapshot" ) @@ -60,12 +64,16 @@ type FKCheckExec struct { // FKCheckRuntimeStats contains the FKCheckExec runtime stats. type FKCheckRuntimeStats struct { - Keys int + Total time.Duration + Check time.Duration + Lock time.Duration + Keys int } // FKCascadeExec uses to execute foreign key cascade behaviour. type FKCascadeExec struct { *fkValueHelper + plan *plannercore.FKCascade b *executorBuilder tp plannercore.FKCascadeType referredFK *model.ReferredFKInfo @@ -78,6 +86,8 @@ type FKCascadeExec struct { fkValues [][]types.Datum // new-value-key => UpdatedValuesCouple fkUpdatedValuesMap map[string]*UpdatedValuesCouple + + stats *FKCascadeRuntimeStats } // UpdatedValuesCouple contains the updated new row the old rows, exporting for test. @@ -86,6 +96,12 @@ type UpdatedValuesCouple struct { OldValuesList [][]types.Datum } +// FKCascadeRuntimeStats contains the FKCascadeExec runtime stats. +type FKCascadeRuntimeStats struct { + Total time.Duration + Keys int +} + func buildTblID2FKCheckExecs(sctx sessionctx.Context, tblID2Table map[int64]table.Table, tblID2FKChecks map[int64][]*plannercore.FKCheck) (map[int64][]*FKCheckExec, error) { fkChecksMap := make(map[int64][]*FKCheckExec) for tid, tbl := range tblID2Table { @@ -137,6 +153,10 @@ func buildFKCheckExec(sctx sessionctx.Context, tbl table.Table, fkCheck *planner } func (fkc *FKCheckExec) insertRowNeedToCheck(sc *stmtctx.StatementContext, row []types.Datum) error { + if fkc.ReferredFK != nil { + // Insert into parent table doesn't need to do foreign key check. + return nil + } return fkc.addRowNeedToCheck(sc, row) } @@ -171,6 +191,20 @@ func (fkc *FKCheckExec) addRowNeedToCheck(sc *stmtctx.StatementContext, row []ty } func (fkc *FKCheckExec) doCheck(ctx context.Context) error { + if fkc.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl != nil { + fkc.stats = &FKCheckRuntimeStats{} + defer fkc.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(fkc.ID(), fkc.stats) + } + if len(fkc.toBeCheckedKeys) == 0 && len(fkc.toBeCheckedPrefixKeys) == 0 { + return nil + } + start := time.Now() + if fkc.stats != nil { + defer func() { + fkc.stats.Keys = len(fkc.toBeCheckedKeys) + len(fkc.toBeCheckedPrefixKeys) + fkc.stats.Total = time.Since(start) + }() + } txn, err := fkc.ctx.Txn(false) if err != nil { return err @@ -183,6 +217,9 @@ func (fkc *FKCheckExec) doCheck(ctx context.Context) error { if err != nil { return err } + if fkc.stats != nil { + fkc.stats.Check = time.Since(start) + } if len(fkc.toBeLockedKeys) == 0 { return nil } @@ -198,6 +235,9 @@ func (fkc *FKCheckExec) doCheck(ctx context.Context) error { // doLockKeys may set TxnCtx.ForUpdate to 1, then if the lock meet write conflict, TiDB can't retry for update. // So reset TxnCtx.ForUpdate to 0 then can be retry if meet write conflict. atomic.StoreUint32(&sessVars.TxnCtx.ForUpdate, forUpdate) + if fkc.stats != nil { + fkc.stats.Lock = time.Since(start) - fkc.stats.Check + } return err } @@ -473,6 +513,10 @@ type fkCheckKey struct { } func (fkc FKCheckExec) checkRows(ctx context.Context, sc *stmtctx.StatementContext, txn kv.Transaction, rows []toBeCheckedRow) error { + if fkc.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl != nil { + fkc.stats = &FKCheckRuntimeStats{} + defer fkc.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(fkc.ID(), fkc.stats) + } if len(rows) == 0 { return nil } @@ -585,6 +629,7 @@ func (b *executorBuilder) buildFKCascadeExec(tbl table.Table, fkCascade *planner return &FKCascadeExec{ b: b, fkValueHelper: helper, + plan: fkCascade, tp: fkCascade.Tp, referredFK: fkCascade.ReferredFK, childTable: fkCascade.ChildTable.Meta(), @@ -637,6 +682,7 @@ func (fkc *FKCascadeExec) buildExecutor(ctx context.Context) (Executor, error) { if err != nil || p == nil { return nil, err } + fkc.plan.CascadePlans = append(fkc.plan.CascadePlans, p) e := fkc.b.build(p) return e, fkc.b.err } @@ -668,6 +714,9 @@ func (fkc *FKCascadeExec) buildFKCascadePlan(ctx context.Context) (plannercore.P case model.ReferOptionCascade: couple := fkc.fetchUpdatedValuesCouple() if couple != nil && len(couple.NewValues) != 0 { + if fkc.stats != nil { + fkc.stats.Keys += len(couple.OldValuesList) + } stmtNode = GenCascadeUpdateAST(fkc.referredFK.ChildSchema, fkc.childTable.Name, indexName, fkc.fkCols, couple) } case model.ReferOptionSetNull: @@ -683,7 +732,7 @@ func (fkc *FKCascadeExec) buildFKCascadePlan(ctx context.Context) (plannercore.P if err != nil { return nil, err } - finalPlan, _, err := planner.Optimize(ctx, sctx, stmtNode, fkc.b.is) + finalPlan, err := planner.OptimizeForForeignKeyCascade(ctx, sctx, stmtNode, fkc.b.is) if err != nil { return nil, err } @@ -699,6 +748,9 @@ func (fkc *FKCascadeExec) fetchOnDeleteOrUpdateFKValues() [][]types.Datum { fkValues = fkc.fkValues[:maxHandleFKValueInOneCascade] fkc.fkValues = fkc.fkValues[maxHandleFKValueInOneCascade:] } + if fkc.stats != nil { + fkc.stats.Keys += len(fkValues) + } return fkValues } @@ -811,3 +863,87 @@ func genWhereConditionAstForMultiColumn(cols []*model.ColumnInfo, fkValues [][]t List: valueList, } } + +// String implements the RuntimeStats interface. +func (s *FKCheckRuntimeStats) String() string { + buf := bytes.NewBuffer(make([]byte, 0, 32)) + buf.WriteString("total:") + buf.WriteString(execdetails.FormatDuration(s.Total)) + if s.Check > 0 { + buf.WriteString(", check:") + buf.WriteString(execdetails.FormatDuration(s.Check)) + } + if s.Lock > 0 { + buf.WriteString(", lock:") + buf.WriteString(execdetails.FormatDuration(s.Lock)) + } + if s.Keys > 0 { + buf.WriteString(", foreign_keys:") + buf.WriteString(strconv.Itoa(s.Keys)) + } + return buf.String() +} + +// Clone implements the RuntimeStats interface. +func (s *FKCheckRuntimeStats) Clone() execdetails.RuntimeStats { + newRs := &FKCheckRuntimeStats{ + Total: s.Total, + Check: s.Check, + Lock: s.Lock, + Keys: s.Keys, + } + return newRs +} + +// Merge implements the RuntimeStats interface. +func (s *FKCheckRuntimeStats) Merge(other execdetails.RuntimeStats) { + tmp, ok := other.(*FKCheckRuntimeStats) + if !ok { + return + } + s.Total += tmp.Total + s.Check += tmp.Check + s.Lock += tmp.Lock + s.Keys += tmp.Keys +} + +// Tp implements the RuntimeStats interface. +func (s *FKCheckRuntimeStats) Tp() int { + return execdetails.TpFKCheckRuntimeStats +} + +// String implements the RuntimeStats interface. +func (s *FKCascadeRuntimeStats) String() string { + buf := bytes.NewBuffer(make([]byte, 0, 32)) + buf.WriteString("total:") + buf.WriteString(execdetails.FormatDuration(s.Total)) + if s.Keys > 0 { + buf.WriteString(", foreign_keys:") + buf.WriteString(strconv.Itoa(s.Keys)) + } + return buf.String() +} + +// Clone implements the RuntimeStats interface. +func (s *FKCascadeRuntimeStats) Clone() execdetails.RuntimeStats { + newRs := &FKCascadeRuntimeStats{ + Total: s.Total, + Keys: s.Keys, + } + return newRs +} + +// Merge implements the RuntimeStats interface. +func (s *FKCascadeRuntimeStats) Merge(other execdetails.RuntimeStats) { + tmp, ok := other.(*FKCascadeRuntimeStats) + if !ok { + return + } + s.Total += tmp.Total + s.Keys += tmp.Keys +} + +// Tp implements the RuntimeStats interface. +func (s *FKCascadeRuntimeStats) Tp() int { + return execdetails.TpFKCascadeRuntimeStats +} diff --git a/executor/grant_test.go b/executor/grant_test.go index 4c9cb867f792f..adba3ee3217ba 100644 --- a/executor/grant_test.go +++ b/executor/grant_test.go @@ -394,7 +394,7 @@ func TestMaintainRequire(t *testing.T) { // test show create user tk.MustExec(`CREATE USER 'u3'@'%' require issuer '/CN=TiDB admin/OU=TiDB/O=PingCAP/L=San Francisco/ST=California/C=US' subject '/CN=tester1/OU=TiDB/O=PingCAP.Inc/L=Haidian/ST=Beijing/C=ZH' cipher 'AES128-GCM-SHA256'`) - tk.MustQuery("show create user 'u3'").Check(testkit.Rows("CREATE USER 'u3'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE CIPHER 'AES128-GCM-SHA256' ISSUER '/CN=TiDB admin/OU=TiDB/O=PingCAP/L=San Francisco/ST=California/C=US' SUBJECT '/CN=tester1/OU=TiDB/O=PingCAP.Inc/L=Haidian/ST=Beijing/C=ZH' PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK")) + tk.MustQuery("show create user 'u3'").Check(testkit.Rows("CREATE USER 'u3'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE CIPHER 'AES128-GCM-SHA256' ISSUER '/CN=TiDB admin/OU=TiDB/O=PingCAP/L=San Francisco/ST=California/C=US' SUBJECT '/CN=tester1/OU=TiDB/O=PingCAP.Inc/L=Haidian/ST=Beijing/C=ZH' PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT")) // check issuer/subject/cipher value err := tk.ExecToErr(`CREATE USER 'u4'@'%' require issuer 'CN=TiDB,OU=PingCAP'`) diff --git a/executor/hash_table.go b/executor/hash_table.go index d2b294f52d9ad..2ba840d04fdc9 100644 --- a/executor/hash_table.go +++ b/executor/hash_table.go @@ -92,6 +92,10 @@ func (s *hashStatistic) String() string { return fmt.Sprintf("probe_collision:%v, build:%v", s.probeCollision, execdetails.FormatDuration(s.buildTableElapse)) } +type hashNANullBucket struct { + entries []*naEntry +} + // hashRowContainer handles the rows and the hash map of a table. // NOTE: a hashRowContainer may be shallow copied by the invoker, define all the // member attributes as pointer type to avoid unexpected problems. @@ -104,7 +108,7 @@ type hashRowContainer struct { hashTable baseHashTable // hashNANullBucket stores the rows with any null value in NAAJ join key columns. // After build process, NANUllBucket is read only here for multi probe worker. - hashNANullBucket []*naEntry + hashNANullBucket *hashNANullBucket rowContainer *chunk.RowContainer memTracker *memory.Tracker @@ -113,7 +117,7 @@ type hashRowContainer struct { chkBuf *chunk.Chunk } -func newHashRowContainer(sCtx sessionctx.Context, estCount int, hCtx *hashContext, allTypes []*types.FieldType) *hashRowContainer { +func newHashRowContainer(sCtx sessionctx.Context, hCtx *hashContext, allTypes []*types.FieldType) *hashRowContainer { maxChunkSize := sCtx.GetSessionVars().MaxChunkSize rc := chunk.NewRowContainer(allTypes, maxChunkSize) c := &hashRowContainer{ @@ -124,6 +128,9 @@ func newHashRowContainer(sCtx sessionctx.Context, estCount int, hCtx *hashContex rowContainer: rc, memTracker: memory.NewTracker(memory.LabelForRowContainer, -1), } + if isNAAJ := len(hCtx.naKeyColIdx) > 0; isNAAJ { + c.hashNANullBucket = &hashNANullBucket{} + } rc.GetMemTracker().AttachTo(c.GetMemTracker()) return c } @@ -248,7 +255,7 @@ func (c *hashRowContainer) GetNullBucketRows(probeHCtx *hashContext, probeSideRo mayMatchedRow chunk.Row ) matched = matched[:0] - for _, nullEntry := range c.hashNANullBucket { + for _, nullEntry := range c.hashNANullBucket.entries { mayMatchedRow, c.chkBuf, err = c.rowContainer.GetRowAndAppendToChunk(nullEntry.ptr, c.chkBuf) if err != nil { return nil, err @@ -394,7 +401,7 @@ func (c *hashRowContainer) PutChunkSelected(chk *chunk.Chunk, selected, ignoreNu // collect the null rows to slice. rowPtr := chunk.RowPtr{ChkIdx: chkIdx, RowIdx: uint32(i)} // do not directly ref the null bits map here, because the bit map will be reset and reused in next batch of chunk data. - c.hashNANullBucket = append(c.hashNANullBucket, &naEntry{rowPtr, c.hCtx.naColNullBitMap[i].Clone()}) + c.hashNANullBucket.entries = append(c.hashNANullBucket.entries, &naEntry{rowPtr, c.hCtx.naColNullBitMap[i].Clone()}) } else { // insert the not-null rows to hash table. key := c.hCtx.hashVals[i].Sum64() diff --git a/executor/hash_table_test.go b/executor/hash_table_test.go index 3b4a4acee5284..0a387e0e7e5b6 100644 --- a/executor/hash_table_test.go +++ b/executor/hash_table_test.go @@ -127,7 +127,7 @@ func testHashRowContainer(t *testing.T, hashFunc func() hash.Hash64, spill bool) for i := 0; i < numRows; i++ { hCtx.hashVals = append(hCtx.hashVals, hashFunc()) } - rowContainer := newHashRowContainer(sctx, 0, hCtx, colTypes) + rowContainer := newHashRowContainer(sctx, hCtx, colTypes) copiedRC = rowContainer.ShallowCopy() tracker := rowContainer.GetMemTracker() tracker.SetLabel(memory.LabelForBuildSideResult) diff --git a/executor/historical_stats_test.go b/executor/historical_stats_test.go new file mode 100644 index 0000000000000..20d11d6e4a88c --- /dev/null +++ b/executor/historical_stats_test.go @@ -0,0 +1,180 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package executor_test + +import ( + "encoding/json" + "fmt" + "strconv" + "testing" + + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/statistics/handle" + "github.com/pingcap/tidb/testkit" + "github.com/stretchr/testify/require" +) + +func TestRecordHistoryStatsAfterAnalyze(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@tidb_analyze_version = 2") + tk.MustExec("set global tidb_enable_historical_stats = 0") + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(a int, b varchar(10))") + + h := dom.StatsHandle() + is := dom.InfoSchema() + tableInfo, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) + require.NoError(t, err) + + // 1. switch off the tidb_enable_historical_stats, and there is no records in table `mysql.stats_history` + rows := tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", tableInfo.Meta().ID)).Rows() + num, _ := strconv.Atoi(rows[0][0].(string)) + require.Equal(t, num, 0) + + tk.MustExec("analyze table t with 2 topn") + rows = tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", tableInfo.Meta().ID)).Rows() + num, _ = strconv.Atoi(rows[0][0].(string)) + require.Equal(t, num, 0) + + // 2. switch on the tidb_enable_historical_stats and do analyze + tk.MustExec("set global tidb_enable_historical_stats = 1") + defer tk.MustExec("set global tidb_enable_historical_stats = 0") + tk.MustExec("analyze table t with 2 topn") + // dump historical stats + hsWorker := dom.GetHistoricalStatsWorker() + tblID := hsWorker.GetOneHistoricalStatsTable() + err = hsWorker.DumpHistoricalStats(tblID, h) + require.Nil(t, err) + rows = tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", tableInfo.Meta().ID)).Rows() + num, _ = strconv.Atoi(rows[0][0].(string)) + require.GreaterOrEqual(t, num, 1) + + // 3. dump current stats json + dumpJSONTable, err := h.DumpStatsToJSON("test", tableInfo.Meta(), nil, true) + require.NoError(t, err) + jsOrigin, _ := json.Marshal(dumpJSONTable) + + // 4. get the historical stats json + rows = tk.MustQuery(fmt.Sprintf("select * from mysql.stats_history where table_id = '%d' and create_time = ("+ + "select create_time from mysql.stats_history where table_id = '%d' order by create_time desc limit 1) "+ + "order by seq_no", tableInfo.Meta().ID, tableInfo.Meta().ID)).Rows() + num = len(rows) + require.GreaterOrEqual(t, num, 1) + data := make([][]byte, num) + for i, row := range rows { + data[i] = []byte(row[1].(string)) + } + jsonTbl, err := handle.BlocksToJSONTable(data) + require.NoError(t, err) + jsCur, err := json.Marshal(jsonTbl) + require.NoError(t, err) + // 5. historical stats must be equal to the current stats + require.JSONEq(t, string(jsOrigin), string(jsCur)) +} + +func TestRecordHistoryStatsMetaAfterAnalyze(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@tidb_analyze_version = 2") + tk.MustExec("set global tidb_enable_historical_stats = 0") + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(a int, b int)") + tk.MustExec("analyze table test.t") + + h := dom.StatsHandle() + is := dom.InfoSchema() + tableInfo, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) + require.NoError(t, err) + + // 1. switch off the tidb_enable_historical_stats, and there is no record in table `mysql.stats_meta_history` + tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_meta_history where table_id = '%d'", tableInfo.Meta().ID)).Check(testkit.Rows("0")) + // insert demo tuples, and there is no record either. + insertNums := 5 + for i := 0; i < insertNums; i++ { + tk.MustExec("insert into test.t (a,b) values (1,1), (2,2), (3,3)") + err := h.DumpStatsDeltaToKV(handle.DumpDelta) + require.NoError(t, err) + } + tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_meta_history where table_id = '%d'", tableInfo.Meta().ID)).Check(testkit.Rows("0")) + + // 2. switch on the tidb_enable_historical_stats and insert tuples to produce count/modifyCount delta change. + tk.MustExec("set global tidb_enable_historical_stats = 1") + defer tk.MustExec("set global tidb_enable_historical_stats = 0") + + for i := 0; i < insertNums; i++ { + tk.MustExec("insert into test.t (a,b) values (1,1), (2,2), (3,3)") + err := h.DumpStatsDeltaToKV(handle.DumpDelta) + require.NoError(t, err) + } + tk.MustQuery(fmt.Sprintf("select modify_count, count from mysql.stats_meta_history where table_id = '%d' order by create_time", tableInfo.Meta().ID)).Sort().Check( + testkit.Rows("18 18", "21 21", "24 24", "27 27", "30 30")) + + // assert delete + tk.MustExec("delete from test.t where test.t.a = 1") + err = h.DumpStatsDeltaToKV(handle.DumpAll) + require.NoError(t, err) + tk.MustQuery(fmt.Sprintf("select modify_count, count from mysql.stats_meta where table_id = '%d' order by create_time desc", tableInfo.Meta().ID)).Sort().Check( + testkit.Rows("40 20")) + tk.MustQuery(fmt.Sprintf("select modify_count, count from mysql.stats_meta_history where table_id = '%d' order by create_time desc limit 1", tableInfo.Meta().ID)).Sort().Check( + testkit.Rows("40 20")) + + // assert update + tk.MustExec("update test.t set test.t.b = 4 where test.t.a = 2") + err = h.DumpStatsDeltaToKV(handle.DumpAll) + require.NoError(t, err) + tk.MustQuery(fmt.Sprintf("select modify_count, count from mysql.stats_meta where table_id = '%d' order by create_time desc", tableInfo.Meta().ID)).Sort().Check( + testkit.Rows("50 20")) + tk.MustQuery(fmt.Sprintf("select modify_count, count from mysql.stats_meta_history where table_id = '%d' order by create_time desc limit 1", tableInfo.Meta().ID)).Sort().Check( + testkit.Rows("50 20")) +} + +func TestGCHistoryStatsAfterDropTable(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set global tidb_enable_historical_stats = 1") + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(a int, b varchar(10))") + tk.MustExec("analyze table test.t") + is := dom.InfoSchema() + tableInfo, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) + require.NoError(t, err) + // dump historical stats + h := dom.StatsHandle() + hsWorker := dom.GetHistoricalStatsWorker() + tblID := hsWorker.GetOneHistoricalStatsTable() + err = hsWorker.DumpHistoricalStats(tblID, h) + require.Nil(t, err) + + // assert the records of history stats table + tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_meta_history where table_id = '%d' order by create_time", + tableInfo.Meta().ID)).Check(testkit.Rows("1")) + tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", + tableInfo.Meta().ID)).Check(testkit.Rows("1")) + // drop the table and gc stats + tk.MustExec("drop table t") + h.GCStats(is, 0) + + // assert stats_history tables delete the record of dropped table + tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_meta_history where table_id = '%d' order by create_time", + tableInfo.Meta().ID)).Check(testkit.Rows("0")) + tk.MustQuery(fmt.Sprintf("select count(*) from mysql.stats_history where table_id = '%d'", + tableInfo.Meta().ID)).Check(testkit.Rows("0")) +} diff --git a/executor/index_lookup_hash_join.go b/executor/index_lookup_hash_join.go index c54b60749601d..58bd84ff6e4d6 100644 --- a/executor/index_lookup_hash_join.go +++ b/executor/index_lookup_hash_join.go @@ -134,7 +134,6 @@ func (e *IndexNestedLoopHashJoin) Open(ctx context.Context) error { e.innerPtrBytes = make([][]byte, 0, 8) if e.runtimeStats != nil { e.stats = &indexLookUpJoinRuntimeStats{} - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } e.finished.Store(false) return nil @@ -288,6 +287,9 @@ func (e *IndexNestedLoopHashJoin) isDryUpTasks(ctx context.Context) bool { // Close implements the IndexNestedLoopHashJoin Executor interface. func (e *IndexNestedLoopHashJoin) Close() error { + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.cancelFunc != nil { e.cancelFunc() } diff --git a/executor/index_lookup_join.go b/executor/index_lookup_join.go index 05cc337d3d7ee..187e83cc0f763 100644 --- a/executor/index_lookup_join.go +++ b/executor/index_lookup_join.go @@ -171,7 +171,6 @@ func (e *IndexLookUpJoin) Open(ctx context.Context) error { e.finished.Store(false) if e.runtimeStats != nil { e.stats = &indexLookUpJoinRuntimeStats{} - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } e.cancelFunc = nil return nil @@ -765,6 +764,9 @@ func (iw *innerWorker) hasNullInJoinKey(row chunk.Row) bool { // Close implements the Executor interface. func (e *IndexLookUpJoin) Close() error { + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.cancelFunc != nil { e.cancelFunc() } diff --git a/executor/index_lookup_join_test.go b/executor/index_lookup_join_test.go index 2f251761b71c2..9a021568b20ee 100644 --- a/executor/index_lookup_join_test.go +++ b/executor/index_lookup_join_test.go @@ -401,6 +401,7 @@ func TestIssue27138(t *testing.T) { tk := testkit.NewTestKit(t, store) tk.MustExec("use test") + tk.MustExec("set tidb_cost_model_version=1") tk.MustExec("drop table if exists t1,t2") tk.MustExec("set @old_tidb_partition_prune_mode=@@tidb_partition_prune_mode") diff --git a/executor/index_lookup_merge_join.go b/executor/index_lookup_merge_join.go index 8bd379944c825..e0fb176fff589 100644 --- a/executor/index_lookup_merge_join.go +++ b/executor/index_lookup_merge_join.go @@ -715,6 +715,9 @@ func (imw *innerMergeWorker) fetchNextInnerResult(ctx context.Context, task *loo // Close implements the Executor interface. func (e *IndexLookUpMergeJoin) Close() error { + if e.runtimeStats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.runtimeStats) + } if e.cancelFunc != nil { e.cancelFunc() e.cancelFunc = nil diff --git a/executor/index_merge_reader.go b/executor/index_merge_reader.go index 0e7eb394710fd..8dc359fa37163 100644 --- a/executor/index_merge_reader.go +++ b/executor/index_merge_reader.go @@ -94,8 +94,8 @@ type IndexMergeReaderExecutor struct { workerStarted bool keyRanges [][]kv.KeyRange - resultCh chan *lookupTableTask - resultCurr *lookupTableTask + resultCh chan *indexMergeTableTask + resultCurr *indexMergeTableTask feedbacks []*statistics.QueryFeedback // memTracker is used to track the memory usage of this executor. @@ -118,6 +118,16 @@ type IndexMergeReaderExecutor struct { isCorColInPartialFilters []bool isCorColInTableFilter bool isCorColInPartialAccess []bool + + // Whether it's intersection or union. + isIntersection bool +} + +type indexMergeTableTask struct { + lookupTableTask + + // parTblIdx are only used in indexMergeProcessWorker.fetchLoopIntersection. + parTblIdx int } // Table implements the dataSourceExecutor interface. @@ -129,7 +139,12 @@ func (e *IndexMergeReaderExecutor) Table() table.Table { func (e *IndexMergeReaderExecutor) Open(ctx context.Context) (err error) { e.keyRanges = make([][]kv.KeyRange, 0, len(e.partialPlans)) e.initRuntimeStats() - + if e.isCorColInTableFilter { + e.tableRequest.Executors, err = constructDistExec(e.ctx, e.tblPlans) + if err != nil { + return err + } + } if err = e.rebuildRangeForCorCol(); err != nil { return err } @@ -150,7 +165,7 @@ func (e *IndexMergeReaderExecutor) Open(ctx context.Context) (err error) { } } e.finished = make(chan struct{}) - e.resultCh = make(chan *lookupTableTask, atomic.LoadInt32(&LookupTableTaskChannelSize)) + e.resultCh = make(chan *indexMergeTableTask, atomic.LoadInt32(&LookupTableTaskChannelSize)) e.memTracker = memory.NewTracker(e.id, -1) e.memTracker.AttachTo(e.ctx.GetSessionVars().StmtCtx.MemTracker) return nil @@ -194,7 +209,7 @@ func (e *IndexMergeReaderExecutor) buildKeyRangesForTable(tbl table.Table) (rang if err != nil { return nil, err } - keyRanges := append(firstKeyRanges, secondKeyRanges...) + keyRanges := append(firstKeyRanges.FirstPartitionRange(), secondKeyRanges.FirstPartitionRange()...) ranges = append(ranges, keyRanges) continue } @@ -202,15 +217,15 @@ func (e *IndexMergeReaderExecutor) buildKeyRangesForTable(tbl table.Table) (rang if err != nil { return nil, err } - ranges = append(ranges, keyRange) + ranges = append(ranges, keyRange.FirstPartitionRange()) } return ranges, nil } func (e *IndexMergeReaderExecutor) startWorkers(ctx context.Context) error { exitCh := make(chan struct{}) - workCh := make(chan *lookupTableTask, 1) - fetchCh := make(chan *lookupTableTask, len(e.keyRanges)) + workCh := make(chan *indexMergeTableTask, 1) + fetchCh := make(chan *indexMergeTableTask, len(e.keyRanges)) e.startIndexMergeProcessWorker(ctx, workCh, fetchCh) @@ -237,12 +252,12 @@ func (e *IndexMergeReaderExecutor) startWorkers(ctx context.Context) error { return nil } -func (e *IndexMergeReaderExecutor) waitPartialWorkersAndCloseFetchChan(fetchCh chan *lookupTableTask) { +func (e *IndexMergeReaderExecutor) waitPartialWorkersAndCloseFetchChan(fetchCh chan *indexMergeTableTask) { e.idxWorkerWg.Wait() close(fetchCh) } -func (e *IndexMergeReaderExecutor) startIndexMergeProcessWorker(ctx context.Context, workCh chan<- *lookupTableTask, fetch <-chan *lookupTableTask) { +func (e *IndexMergeReaderExecutor) startIndexMergeProcessWorker(ctx context.Context, workCh chan<- *indexMergeTableTask, fetch <-chan *indexMergeTableTask) { idxMergeProcessWorker := &indexMergeProcessWorker{ indexMerge: e, stats: e.stats, @@ -252,15 +267,19 @@ func (e *IndexMergeReaderExecutor) startIndexMergeProcessWorker(ctx context.Cont defer trace.StartRegion(ctx, "IndexMergeProcessWorker").End() util.WithRecovery( func() { - idxMergeProcessWorker.fetchLoop(ctx, fetch, workCh, e.resultCh, e.finished) + if e.isIntersection { + idxMergeProcessWorker.fetchLoopIntersection(ctx, fetch, workCh, e.resultCh, e.finished) + } else { + idxMergeProcessWorker.fetchLoopUnion(ctx, fetch, workCh, e.resultCh, e.finished) + } }, - idxMergeProcessWorker.handleLoopFetcherPanic(ctx, e.resultCh), + idxMergeProcessWorker.handleLoopFetcherPanic(ctx, e.resultCh, "IndexMergeProcessWorker", nil), ) e.processWokerWg.Done() }() } -func (e *IndexMergeReaderExecutor) startPartialIndexWorker(ctx context.Context, exitCh <-chan struct{}, fetchCh chan<- *lookupTableTask, workID int) error { +func (e *IndexMergeReaderExecutor) startPartialIndexWorker(ctx context.Context, exitCh <-chan struct{}, fetchCh chan<- *indexMergeTableTask, workID int) error { if e.runtimeStats != nil { collExec := true e.dagPBs[workID].CollectExecutionSummaries = &collExec @@ -297,7 +316,7 @@ func (e *IndexMergeReaderExecutor) startPartialIndexWorker(ctx context.Context, // We got correlated column, so need to refresh Selection operator. var err error if e.dagPBs[workID].Executors, err = constructDistExec(e.ctx, e.partialPlans[workID]); err != nil { - worker.syncErr(e.resultCh, err) + syncErr(e.resultCh, err) return } } @@ -331,12 +350,12 @@ func (e *IndexMergeReaderExecutor) startPartialIndexWorker(ctx context.Context, }) kvReq, err := builder.SetKeyRanges(keyRange).Build() if err != nil { - worker.syncErr(e.resultCh, err) + syncErr(e.resultCh, err) return } result, err := distsql.SelectWithRuntimeStats(ctx, e.ctx, kvReq, e.handleCols.GetFieldsTypes(), e.feedbacks[workID], getPhysicalPlanIDs(e.partialPlans[workID]), e.getPartitalPlanID(workID)) if err != nil { - worker.syncErr(e.resultCh, err) + syncErr(e.resultCh, err) return } worker.batchSize = e.maxChunkSize @@ -349,7 +368,7 @@ func (e *IndexMergeReaderExecutor) startPartialIndexWorker(ctx context.Context, // fetch all data from this partition ctx1, cancel := context.WithCancel(ctx) - _, fetchErr := worker.fetchHandles(ctx1, result, exitCh, fetchCh, e.resultCh, e.finished, e.handleCols) + _, fetchErr := worker.fetchHandles(ctx1, result, exitCh, fetchCh, e.resultCh, e.finished, e.handleCols, parTblIdx) if fetchErr != nil { // this error is synced in fetchHandles(), don't sync it again e.feedbacks[workID].Invalidate() } @@ -370,7 +389,7 @@ func (e *IndexMergeReaderExecutor) startPartialIndexWorker(ctx context.Context, return nil } -func (e *IndexMergeReaderExecutor) startPartialTableWorker(ctx context.Context, exitCh <-chan struct{}, fetchCh chan<- *lookupTableTask, workID int) error { +func (e *IndexMergeReaderExecutor) startPartialTableWorker(ctx context.Context, exitCh <-chan struct{}, fetchCh chan<- *indexMergeTableTask, workID int) error { ts := e.partialPlans[workID][0].(*plannercore.PhysicalTableScan) tbls := make([]table.Table, 0, 1) @@ -412,13 +431,13 @@ func (e *IndexMergeReaderExecutor) startPartialTableWorker(ctx context.Context, if e.isCorColInPartialFilters[workID] { if e.dagPBs[workID].Executors, err = constructDistExec(e.ctx, e.partialPlans[workID]); err != nil { - worker.syncErr(e.resultCh, err) + syncErr(e.resultCh, err) return } partialTableReader.dagPB = e.dagPBs[workID] } - for _, tbl := range tbls { + for parTblIdx, tbl := range tbls { // check if this executor is closed select { case <-e.finished: @@ -430,7 +449,7 @@ func (e *IndexMergeReaderExecutor) startPartialTableWorker(ctx context.Context, partialTableReader.table = tbl if err = partialTableReader.Open(ctx); err != nil { logutil.Logger(ctx).Error("open Select result failed:", zap.Error(err)) - worker.syncErr(e.resultCh, err) + syncErr(e.resultCh, err) break } worker.batchSize = e.maxChunkSize @@ -443,7 +462,7 @@ func (e *IndexMergeReaderExecutor) startPartialTableWorker(ctx context.Context, // fetch all handles from this table ctx1, cancel := context.WithCancel(ctx) - _, fetchErr := worker.fetchHandles(ctx1, exitCh, fetchCh, e.resultCh, e.finished, e.handleCols) + _, fetchErr := worker.fetchHandles(ctx1, exitCh, fetchCh, e.resultCh, e.finished, e.handleCols, parTblIdx) if fetchErr != nil { // this error is synced in fetchHandles, so don't sync it again e.feedbacks[workID].Invalidate() } @@ -470,7 +489,6 @@ func (e *IndexMergeReaderExecutor) initRuntimeStats() { e.stats = &IndexMergeRuntimeStat{ Concurrency: e.ctx.GetSessionVars().IndexLookupConcurrency(), } - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } } @@ -498,16 +516,8 @@ type partialTableWorker struct { partition table.PhysicalTable // it indicates if this worker is accessing a particular partition table } -func (w *partialTableWorker) syncErr(resultCh chan<- *lookupTableTask, err error) { - doneCh := make(chan error, 1) - doneCh <- err - resultCh <- &lookupTableTask{ - doneCh: doneCh, - } -} - -func (w *partialTableWorker) fetchHandles(ctx context.Context, exitCh <-chan struct{}, fetchCh chan<- *lookupTableTask, resultCh chan<- *lookupTableTask, - finished <-chan struct{}, handleCols plannercore.HandleCols) (count int64, err error) { +func (w *partialTableWorker) fetchHandles(ctx context.Context, exitCh <-chan struct{}, fetchCh chan<- *indexMergeTableTask, resultCh chan<- *indexMergeTableTask, + finished <-chan struct{}, handleCols plannercore.HandleCols, parTblIdx int) (count int64, err error) { chk := w.sc.GetSessionVars().GetNewChunkWithCapacity(retTypes(w.tableReader), w.maxChunkSize, w.maxChunkSize, w.tableReader.base().AllocPool) var basic *execdetails.BasicRuntimeStats if be := w.tableReader.base(); be != nil && be.runtimeStats != nil { @@ -517,14 +527,14 @@ func (w *partialTableWorker) fetchHandles(ctx context.Context, exitCh <-chan str start := time.Now() handles, retChunk, err := w.extractTaskHandles(ctx, chk, handleCols) if err != nil { - w.syncErr(resultCh, err) + syncErr(resultCh, err) return count, err } if len(handles) == 0 { return count, nil } count += int64(len(handles)) - task := w.buildTableTask(handles, retChunk) + task := w.buildTableTask(handles, retChunk, parTblIdx) if w.stats != nil { atomic.AddInt64(&w.stats.FetchIdxTime, int64(time.Since(start))) } @@ -570,19 +580,22 @@ func (w *partialTableWorker) extractTaskHandles(ctx context.Context, chk *chunk. return handles, retChk, nil } -func (w *partialTableWorker) buildTableTask(handles []kv.Handle, retChk *chunk.Chunk) *lookupTableTask { - task := &lookupTableTask{ - handles: handles, - idxRows: retChk, +func (w *partialTableWorker) buildTableTask(handles []kv.Handle, retChk *chunk.Chunk, parTblIdx int) *indexMergeTableTask { + task := &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + handles: handles, + idxRows: retChk, - partitionTable: w.partition, + partitionTable: w.partition, + }, + parTblIdx: parTblIdx, } task.doneCh = make(chan error, 1) return task } -func (e *IndexMergeReaderExecutor) startIndexMergeTableScanWorker(ctx context.Context, workCh <-chan *lookupTableTask) { +func (e *IndexMergeReaderExecutor) startIndexMergeTableScanWorker(ctx context.Context, workCh <-chan *indexMergeTableTask) { lookupConcurrencyLimit := e.ctx.GetSessionVars().IndexLookupConcurrency() e.tblWorkerWg.Add(lookupConcurrencyLimit) for i := 0; i < lookupConcurrencyLimit; i++ { @@ -597,7 +610,7 @@ func (e *IndexMergeReaderExecutor) startIndexMergeTableScanWorker(ctx context.Co ctx1, cancel := context.WithCancel(ctx) go func() { defer trace.StartRegion(ctx, "IndexMergeTableScanWorker").End() - var task *lookupTableTask + var task *indexMergeTableTask util.WithRecovery( func() { task = worker.pickAndExecTask(ctx1) }, worker.handlePickAndExecTaskPanic(ctx1, task), @@ -622,11 +635,6 @@ func (e *IndexMergeReaderExecutor) buildFinalTableReader(ctx context.Context, tb plans: e.tblPlans, netDataSize: e.dataAvgRowSize * float64(len(handles)), } - if e.isCorColInTableFilter { - if tableReaderExec.dagPB.Executors, err = constructDistExec(e.ctx, e.tblPlans); err != nil { - return nil, err - } - } tableReaderExec.buildVirtualColumnInfo() // Reorder handles because SplitKeyRangesByLocations() requires startKey of kvRanges is ordered. // Also it's good for performance. @@ -666,7 +674,7 @@ func (e *IndexMergeReaderExecutor) Next(ctx context.Context, req *chunk.Chunk) e } } -func (e *IndexMergeReaderExecutor) getResultTask() (*lookupTableTask, error) { +func (e *IndexMergeReaderExecutor) getResultTask() (*indexMergeTableTask, error) { if e.resultCurr != nil && e.resultCurr.cursor < len(e.resultCurr.rows) { return e.resultCurr, nil } @@ -686,7 +694,7 @@ func (e *IndexMergeReaderExecutor) getResultTask() (*lookupTableTask, error) { return e.resultCurr, nil } -func (e *IndexMergeReaderExecutor) handleHandlesFetcherPanic(ctx context.Context, resultCh chan<- *lookupTableTask, worker string) func(r interface{}) { +func (e *IndexMergeReaderExecutor) handleHandlesFetcherPanic(ctx context.Context, resultCh chan<- *indexMergeTableTask, worker string) func(r interface{}) { return func(r interface{}) { if r == nil { return @@ -696,14 +704,19 @@ func (e *IndexMergeReaderExecutor) handleHandlesFetcherPanic(ctx context.Context logutil.Logger(ctx).Error(err4Panic.Error()) doneCh := make(chan error, 1) doneCh <- err4Panic - resultCh <- &lookupTableTask{ - doneCh: doneCh, + resultCh <- &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + doneCh: doneCh, + }, } } } // Close implements Exec Close interface. func (e *IndexMergeReaderExecutor) Close() error { + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.finished == nil { return nil } @@ -722,8 +735,8 @@ type indexMergeProcessWorker struct { stats *IndexMergeRuntimeStat } -func (w *indexMergeProcessWorker) fetchLoop(ctx context.Context, fetchCh <-chan *lookupTableTask, - workCh chan<- *lookupTableTask, resultCh chan<- *lookupTableTask, finished <-chan struct{}) { +func (w *indexMergeProcessWorker) fetchLoopUnion(ctx context.Context, fetchCh <-chan *indexMergeTableTask, + workCh chan<- *indexMergeTableTask, resultCh chan<- *indexMergeTableTask, finished <-chan struct{}) { defer func() { close(workCh) close(resultCh) @@ -755,11 +768,13 @@ func (w *indexMergeProcessWorker) fetchLoop(ctx context.Context, fetchCh <-chan if len(fhs) == 0 { continue } - task := &lookupTableTask{ - handles: fhs, - doneCh: make(chan error, 1), + task := &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + handles: fhs, + doneCh: make(chan error, 1), - partitionTable: task.partitionTable, + partitionTable: task.partitionTable, + }, } if w.stats != nil { w.stats.IndexMergeProcess += time.Since(start) @@ -775,18 +790,197 @@ func (w *indexMergeProcessWorker) fetchLoop(ctx context.Context, fetchCh <-chan } } -func (w *indexMergeProcessWorker) handleLoopFetcherPanic(ctx context.Context, resultCh chan<- *lookupTableTask) func(r interface{}) { +type intersectionProcessWorker struct { + // key: parTblIdx, val: HandleMap + // Value of MemAwareHandleMap is *int to avoid extra Get(). + handleMapsPerWorker map[int]*kv.MemAwareHandleMap[*int] + workerID int + workerCh chan *indexMergeTableTask + indexMerge *IndexMergeReaderExecutor + memTracker *memory.Tracker + batchSize int + + // When rowDelta == memConsumeBatchSize, Consume(memUsage) + rowDelta int64 + mapUsageDelta int64 +} + +func (w *intersectionProcessWorker) consumeMemDelta() { + w.memTracker.Consume(w.mapUsageDelta + w.rowDelta*int64(unsafe.Sizeof(int(0)))) + w.mapUsageDelta = 0 + w.rowDelta = 0 +} + +func (w *intersectionProcessWorker) doIntersectionPerPartition(ctx context.Context, workCh chan<- *indexMergeTableTask, resultCh chan<- *indexMergeTableTask, finished <-chan struct{}) { + defer w.memTracker.Detach() + + for task := range w.workerCh { + var ok bool + var hMap *kv.MemAwareHandleMap[*int] + if hMap, ok = w.handleMapsPerWorker[task.parTblIdx]; !ok { + hMap = kv.NewMemAwareHandleMap[*int]() + w.handleMapsPerWorker[task.parTblIdx] = hMap + } + var mapDelta int64 + var rowDelta int64 + for _, h := range task.handles { + // Use *int to avoid Get() again. + if cntPtr, ok := hMap.Get(h); ok { + (*cntPtr)++ + } else { + cnt := 1 + mapDelta += hMap.Set(h, &cnt) + int64(h.ExtraMemSize()) + rowDelta += 1 + } + } + + logutil.BgLogger().Debug("intersectionProcessWorker handle tasks", zap.Int("workerID", w.workerID), + zap.Int("task.handles", len(task.handles)), zap.Int64("rowDelta", rowDelta)) + + w.mapUsageDelta += mapDelta + w.rowDelta += rowDelta + if w.rowDelta >= int64(w.batchSize) { + w.consumeMemDelta() + } + failpoint.Inject("testIndexMergeIntersectionWorkerPanic", nil) + } + if w.rowDelta > 0 { + w.consumeMemDelta() + } + + // We assume the result of intersection is small, so no need to track memory. + intersectedMap := make(map[int][]kv.Handle, len(w.handleMapsPerWorker)) + for parTblIdx, hMap := range w.handleMapsPerWorker { + hMap.Range(func(h kv.Handle, val interface{}) bool { + if *(val.(*int)) == len(w.indexMerge.partialPlans) { + // Means all partial paths have this handle. + intersectedMap[parTblIdx] = append(intersectedMap[parTblIdx], h) + } + return true + }) + } + + tasks := make([]*indexMergeTableTask, 0, len(w.handleMapsPerWorker)) + for parTblIdx, intersected := range intersectedMap { + // Split intersected[parTblIdx] to avoid task is too large. + for len(intersected) > 0 { + length := w.batchSize + if length > len(intersected) { + length = len(intersected) + } + task := &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + handles: intersected[:length], + doneCh: make(chan error, 1), + }, + } + intersected = intersected[length:] + if w.indexMerge.partitionTableMode { + task.partitionTable = w.indexMerge.prunedPartitions[parTblIdx] + } + tasks = append(tasks, task) + logutil.BgLogger().Debug("intersectionProcessWorker build tasks", + zap.Int("parTblIdx", parTblIdx), zap.Int("task.handles", len(task.handles))) + } + } + for _, task := range tasks { + select { + case <-ctx.Done(): + return + case <-finished: + return + case workCh <- task: + resultCh <- task + } + } +} + +// For each partition(dynamic mode), a map is used to do intersection. Key of the map is handle, and value is the number of times it occurs. +// If the value of handle equals the number of partial paths, it should be sent to final_table_scan_worker. +// To avoid too many goroutines, each intersectionProcessWorker can handle multiple partitions. +func (w *indexMergeProcessWorker) fetchLoopIntersection(ctx context.Context, fetchCh <-chan *indexMergeTableTask, + workCh chan<- *indexMergeTableTask, resultCh chan<- *indexMergeTableTask, finished <-chan struct{}) { + defer func() { + close(workCh) + close(resultCh) + }() + + if w.stats != nil { + start := time.Now() + defer func() { + w.stats.IndexMergeProcess += time.Since(start) + }() + } + + // One goroutine may handle one or multiple partitions. + // Max number of partition number is 8192, we use ExecutorConcurrency to avoid too many goroutines. + maxWorkerCnt := w.indexMerge.ctx.GetSessionVars().IndexMergeIntersectionConcurrency() + maxChannelSize := atomic.LoadInt32(&LookupTableTaskChannelSize) + batchSize := w.indexMerge.ctx.GetSessionVars().IndexLookupSize + + partCnt := 1 + if w.indexMerge.partitionTableMode { + partCnt = len(w.indexMerge.prunedPartitions) + } + workerCnt := mathutil.Min(partCnt, maxWorkerCnt) + failpoint.Inject("testIndexMergeIntersectionConcurrency", func(val failpoint.Value) { + con := val.(int) + if con != workerCnt { + panic(fmt.Sprintf("unexpected workerCnt, expect %d, got %d", con, workerCnt)) + } + }) + + workers := make([]*intersectionProcessWorker, 0, workerCnt) + wg := util.WaitGroupWrapper{} + errCh := make(chan bool, workerCnt) + for i := 0; i < workerCnt; i++ { + tracker := memory.NewTracker(w.indexMerge.id, -1) + tracker.AttachTo(w.indexMerge.memTracker) + worker := &intersectionProcessWorker{ + workerID: i, + handleMapsPerWorker: make(map[int]*kv.MemAwareHandleMap[*int]), + workerCh: make(chan *indexMergeTableTask, maxChannelSize), + indexMerge: w.indexMerge, + memTracker: tracker, + batchSize: batchSize, + } + wg.RunWithRecover(func() { + defer trace.StartRegion(ctx, "IndexMergeIntersectionProcessWorker").End() + worker.doIntersectionPerPartition(ctx, workCh, resultCh, finished) + }, w.handleLoopFetcherPanic(ctx, resultCh, "IndexMergeIntersectionProcessWorker", errCh)) + workers = append(workers, worker) + } +loop: + for task := range fetchCh { + select { + case workers[task.parTblIdx%workerCnt].workerCh <- task: + case <-errCh: + break loop + } + } + for _, processWorker := range workers { + close(processWorker.workerCh) + } + wg.Wait() +} + +func (w *indexMergeProcessWorker) handleLoopFetcherPanic(ctx context.Context, resultCh chan<- *indexMergeTableTask, worker string, extraCh chan bool) func(r interface{}) { return func(r interface{}) { if r == nil { return } + if extraCh != nil { + extraCh <- true + } - err4Panic := errors.Errorf("panic in IndexMergeReaderExecutor indexMergeTableWorker: %v", r) + err4Panic := errors.Errorf("panic in IndexMergeReaderExecutor %s: %v", worker, r) logutil.Logger(ctx).Error(err4Panic.Error()) doneCh := make(chan error, 1) doneCh <- err4Panic - resultCh <- &lookupTableTask{ - doneCh: doneCh, + resultCh <- &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + doneCh: doneCh, + }, } } } @@ -801,11 +995,13 @@ type partialIndexWorker struct { partition table.PhysicalTable // it indicates if this worker is accessing a particular partition table } -func (w *partialIndexWorker) syncErr(resultCh chan<- *lookupTableTask, err error) { +func syncErr(resultCh chan<- *indexMergeTableTask, err error) { doneCh := make(chan error, 1) doneCh <- err - resultCh <- &lookupTableTask{ - doneCh: doneCh, + resultCh <- &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + doneCh: doneCh, + }, } } @@ -813,23 +1009,23 @@ func (w *partialIndexWorker) fetchHandles( ctx context.Context, result distsql.SelectResult, exitCh <-chan struct{}, - fetchCh chan<- *lookupTableTask, - resultCh chan<- *lookupTableTask, + fetchCh chan<- *indexMergeTableTask, + resultCh chan<- *indexMergeTableTask, finished <-chan struct{}, - handleCols plannercore.HandleCols) (count int64, err error) { + handleCols plannercore.HandleCols, + parTblIdx int) (count int64, err error) { chk := chunk.NewChunkWithCapacity(handleCols.GetFieldsTypes(), w.maxChunkSize) var basicStats *execdetails.BasicRuntimeStats if w.stats != nil { if w.idxID != 0 { - basicStats = &execdetails.BasicRuntimeStats{} - w.sc.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(w.idxID, basicStats) + basicStats = w.sc.GetSessionVars().StmtCtx.RuntimeStatsColl.GetBasicRuntimeStats(w.idxID) } } for { start := time.Now() handles, retChunk, err := w.extractTaskHandles(ctx, chk, result, handleCols) if err != nil { - w.syncErr(resultCh, err) + syncErr(resultCh, err) return count, err } if len(handles) == 0 { @@ -839,7 +1035,7 @@ func (w *partialIndexWorker) fetchHandles( return count, nil } count += int64(len(handles)) - task := w.buildTableTask(handles, retChunk) + task := w.buildTableTask(handles, retChunk, parTblIdx) if w.stats != nil { atomic.AddInt64(&w.stats.FetchIdxTime, int64(time.Since(start))) } @@ -885,12 +1081,15 @@ func (w *partialIndexWorker) extractTaskHandles(ctx context.Context, chk *chunk. return handles, retChk, nil } -func (w *partialIndexWorker) buildTableTask(handles []kv.Handle, retChk *chunk.Chunk) *lookupTableTask { - task := &lookupTableTask{ - handles: handles, - idxRows: retChk, +func (w *partialIndexWorker) buildTableTask(handles []kv.Handle, retChk *chunk.Chunk, parTblIdx int) *indexMergeTableTask { + task := &indexMergeTableTask{ + lookupTableTask: lookupTableTask{ + handles: handles, + idxRows: retChk, - partitionTable: w.partition, + partitionTable: w.partition, + }, + parTblIdx: parTblIdx, } task.doneCh = make(chan error, 1) @@ -899,7 +1098,7 @@ func (w *partialIndexWorker) buildTableTask(handles []kv.Handle, retChk *chunk.C type indexMergeTableScanWorker struct { stats *IndexMergeRuntimeStat - workCh <-chan *lookupTableTask + workCh <-chan *indexMergeTableTask finished <-chan struct{} indexMergeExec *IndexMergeReaderExecutor tblPlans []plannercore.PhysicalPlan @@ -908,7 +1107,7 @@ type indexMergeTableScanWorker struct { memTracker *memory.Tracker } -func (w *indexMergeTableScanWorker) pickAndExecTask(ctx context.Context) (task *lookupTableTask) { +func (w *indexMergeTableScanWorker) pickAndExecTask(ctx context.Context) (task *indexMergeTableTask) { var ok bool for { waitStart := time.Now() @@ -931,7 +1130,7 @@ func (w *indexMergeTableScanWorker) pickAndExecTask(ctx context.Context) (task * } } -func (w *indexMergeTableScanWorker) handlePickAndExecTaskPanic(ctx context.Context, task *lookupTableTask) func(r interface{}) { +func (w *indexMergeTableScanWorker) handlePickAndExecTaskPanic(ctx context.Context, task *indexMergeTableTask) func(r interface{}) { return func(r interface{}) { if r == nil { return @@ -943,7 +1142,7 @@ func (w *indexMergeTableScanWorker) handlePickAndExecTaskPanic(ctx context.Conte } } -func (w *indexMergeTableScanWorker) executeTask(ctx context.Context, task *lookupTableTask) error { +func (w *indexMergeTableScanWorker) executeTask(ctx context.Context, task *indexMergeTableTask) error { tbl := w.indexMergeExec.table if w.indexMergeExec.partitionTableMode { tbl = task.partitionTable diff --git a/executor/index_merge_reader_test.go b/executor/index_merge_reader_test.go index 58dfa71814f28..79d2d8b895a81 100644 --- a/executor/index_merge_reader_test.go +++ b/executor/index_merge_reader_test.go @@ -23,7 +23,9 @@ import ( "testing" "time" + "github.com/pingcap/failpoint" "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/testkit/testutil" "github.com/pingcap/tidb/util" "github.com/stretchr/testify/require" ) @@ -86,7 +88,7 @@ func TestIndexMergeReaderIssue25045(t *testing.T) { tk.MustExec("create table t1(a int primary key, b int, c int, key(b), key(c));") tk.MustExec("INSERT INTO t1 VALUES (10, 10, 10), (11, 11, 11)") tk.MustQuery("explain format='brief' select /*+ use_index_merge(t1) */ * from t1 where c=10 or (b=10 and a=10);").Check(testkit.Rows( - "IndexMerge 0.01 root ", + "IndexMerge 0.01 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:c(c) range:[10,10], keep order:false, stats:pseudo", "├─TableRangeScan(Build) 1.00 cop[tikv] table:t1 range:[10,10], keep order:false, stats:pseudo", "└─Selection(Probe) 0.01 cop[tikv] or(eq(test.t1.c, 10), and(eq(test.t1.b, 10), eq(test.t1.a, 10)))", @@ -230,44 +232,64 @@ func TestIndexMergeInTransaction(t *testing.T) { tk.MustExec("begin;") // Expect two IndexScan(c1, c2). tk.MustQuery("explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and c3 < 10;").Check(testkit.Rows( - "IndexMerge_9 1841.86 root ", + "IndexMerge_9 1841.86 root type: union", "├─IndexRangeScan_5(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo", "├─IndexRangeScan_6(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", "└─Selection_8(Probe) 1841.86 cop[tikv] lt(test.t1.c3, 10)", " └─TableRowIDScan_7 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo")) // Expect one IndexScan(c2) and one TableScan(pk). tk.MustQuery("explain select /*+ use_index_merge(t1) */ * from t1 where (pk < 10 or c2 < 10) and c3 < 10;").Check(testkit.Rows( - "IndexMerge_9 1106.67 root ", + "IndexMerge_9 1106.67 root type: union", "├─TableRangeScan_5(Build) 3333.33 cop[tikv] table:t1 range:[-inf,10), keep order:false, stats:pseudo", "├─IndexRangeScan_6(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", "└─Selection_8(Probe) 1106.67 cop[tikv] lt(test.t1.c3, 10)", " └─TableRowIDScan_7 3330.01 cop[tikv] table:t1 keep order:false, stats:pseudo")) + tk.MustQuery("explain select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where c1 < 10 and c2 < 10 and c3 < 10;").Check(testkit.Rows( + "IndexMerge_9 367.05 root type: intersection", + "├─IndexRangeScan_5(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo", + "├─IndexRangeScan_6(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", + "├─IndexRangeScan_7(Build) 3323.33 cop[tikv] table:t1, index:c3(c3) range:[-inf,10), keep order:false, stats:pseudo", + "└─TableRowIDScan_8(Probe) 367.05 cop[tikv] table:t1 keep order:false, stats:pseudo")) // Test with normal key. tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where (c1 < 10 and c2 < -1) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where (c1 < -1 and c2 < 10) and c3 < 10;").Check(testkit.Rows()) + tk.MustExec("insert into t1 values(1, 1, 1, 1);") tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows("1 1 1 1")) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows("1 1 1 1")) + tk.MustQuery("select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where (c1 < 10 and c2 < 10) and c3 < 10;").Check(testkit.Rows("1 1 1 1")) + tk.MustQuery("select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where (c1 < 10 and c2 < 10) and c3 > 10;").Check(testkit.Rows()) + tk.MustExec("update t1 set c3 = 100 where c3 = 1;") tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where (c1 < 10 and c2 < 10) and c3 > 10;").Check(testkit.Rows("1 1 100 1")) + tk.MustExec("delete from t1;") tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (c1 < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c1, c2, c3) */ * from t1 where (c1 < 10 and c2 < 10) and c3 > 10;").Check(testkit.Rows()) // Test with primary key, so the partialPlan is TableScan. tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c2, c3, primary) */ * from t1 where (pk < -1 and c2 < 10) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c2, c3, primary) */ * from t1 where (pk < 10 and c2 < -1) and c3 < 10;").Check(testkit.Rows()) tk.MustExec("insert into t1 values(1, 1, 1, 1);") tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows("1 1 1 1")) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows("1 1 1 1")) + tk.MustQuery("select /*+ use_index_merge(t1, c2, c3, primary) */ * from t1 where (pk < 10 and c2 < 10) and c3 < 10;").Check(testkit.Rows("1 1 1 1")) tk.MustExec("update t1 set c3 = 100 where c3 = 1;") tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c2, c3, primary) */ * from t1 where (pk < 10 and c2 < 10) and c3 > 10;").Check(testkit.Rows("1 1 100 1")) tk.MustExec("delete from t1;") tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < -1 or c2 < 10) and c3 < 10;").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index_merge(t1) */ * from t1 where (pk < 10 or c2 < -1) and c3 < 10;").Check(testkit.Rows()) + tk.MustQuery("select /*+ use_index_merge(t1, c2, c3, primary) */ * from t1 where (pk < 10 and c2 < 10) and c3 > 10;").Check(testkit.Rows()) tk.MustExec("commit;") if i == 1 { @@ -281,14 +303,14 @@ func TestIndexMergeInTransaction(t *testing.T) { tk.MustExec("begin;") tk.MustQuery("explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 10 or c2 < 10) and c3 < 10 for update;").Check(testkit.Rows( "SelectLock_6 1841.86 root for update 0", - "└─IndexMerge_11 1841.86 root ", + "└─IndexMerge_11 1841.86 root type: union", " ├─IndexRangeScan_7(Build) 3323.33 cop[tikv] table:t1, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo", " ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", " └─Selection_10(Probe) 1841.86 cop[tikv] lt(test.t1.c3, 10)", " └─TableRowIDScan_9 5542.21 cop[tikv] table:t1 keep order:false, stats:pseudo")) tk.MustQuery("explain select /*+ use_index_merge(t1) */ * from t1 where (pk < 10 or c2 < 10) and c3 < 10 for update;").Check(testkit.Rows( "SelectLock_6 1106.67 root for update 0", - "└─IndexMerge_11 1106.67 root ", + "└─IndexMerge_11 1106.67 root type: union", " ├─TableRangeScan_7(Build) 3333.33 cop[tikv] table:t1 range:[-inf,10), keep order:false, stats:pseudo", " ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", " └─Selection_10(Probe) 1106.67 cop[tikv] lt(test.t1.c3, 10)", @@ -403,7 +425,7 @@ func TestIndexMergeReaderInTransIssue30685(t *testing.T) { tk.MustExec("insert into t1 values(1, 1, 1, 1);") tk.MustQuery("explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < -1 or c3 < 10) and c4 < 10;").Check(testkit.Rows( "UnionScan_6 1841.86 root lt(test.t1.c4, 10), or(lt(test.t1.c1, -1), lt(test.t1.c3, 10))", - "└─IndexMerge_11 1841.86 root ", + "└─IndexMerge_11 1841.86 root type: union", " ├─TableRangeScan_7(Build) 3323.33 cop[tikv] table:t1 range:[-inf,-1), keep order:false, stats:pseudo", " ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c3(c3) range:[-inf,10), keep order:false, stats:pseudo", " └─Selection_10(Probe) 1841.86 cop[tikv] lt(test.t1.c4, 10)", @@ -422,7 +444,7 @@ func TestIndexMergeReaderInTransIssue30685(t *testing.T) { tk.MustExec("insert into t1 values('b', 1, 1, 1);") tk.MustQuery("explain select /*+ use_index_merge(t1) */ * from t1 where (c1 < 'a' or c3 < 10) and c4 < 10;").Check(testkit.Rows( "UnionScan_6 1841.86 root lt(test.t1.c4, 10), or(lt(test.t1.c1, \"a\"), lt(test.t1.c3, 10))", - "└─IndexMerge_11 1841.86 root ", + "└─IndexMerge_11 1841.86 root type: union", " ├─TableRangeScan_7(Build) 3323.33 cop[tikv] table:t1 range:[-inf,\"a\"), keep order:false, stats:pseudo", " ├─IndexRangeScan_8(Build) 3323.33 cop[tikv] table:t1, index:c3(c3) range:[-inf,10), keep order:false, stats:pseudo", " └─Selection_10(Probe) 1841.86 cop[tikv] lt(test.t1.c4, 10)", @@ -524,19 +546,19 @@ func TestPessimisticLockOnPartitionForIndexMerge(t *testing.T) { " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t2, index:c_datetime(c_datetime) keep order:false", " └─PartitionUnion(Probe) 5545.21 root ", - " ├─IndexMerge 5542.21 root ", + " ├─IndexMerge 5542.21 root type: union", " │ ├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t1, partition:p0, index:c1(c1) range:[-inf,10), keep order:false, stats:pseudo", " │ ├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t1, partition:p0, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", " │ └─TableRowIDScan(Probe) 5542.21 cop[tikv] table:t1, partition:p0 keep order:false, stats:pseudo", - " ├─IndexMerge 1.00 root ", + " ├─IndexMerge 1.00 root type: union", " │ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:c1(c1) range:[-inf,10), keep order:false", " │ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:c2(c2) range:[-inf,10), keep order:false", " │ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p1 keep order:false", - " ├─IndexMerge 1.00 root ", + " ├─IndexMerge 1.00 root type: union", " │ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p2, index:c1(c1) range:[-inf,10), keep order:false", " │ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p2, index:c2(c2) range:[-inf,10), keep order:false", " │ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p2 keep order:false", - " └─IndexMerge 1.00 root ", + " └─IndexMerge 1.00 root type: union", " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p3, index:c1(c1) range:[-inf,10), keep order:false", " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p3, index:c2(c2) range:[-inf,10), keep order:false", " └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p3 keep order:false", @@ -566,3 +588,193 @@ func TestPessimisticLockOnPartitionForIndexMerge(t *testing.T) { // TODO: add support for index merge reader in dynamic tidb_partition_prune_mode } + +func TestIndexMergeIntersectionConcurrency(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1(c1 int, c2 bigint, c3 bigint, primary key(c1), key(c2), key(c3)) partition by hash(c1) partitions 10;") + tk.MustExec("insert into t1 values(1, 1, 3000), (2, 1, 1)") + tk.MustExec("analyze table t1;") + tk.MustExec("set tidb_partition_prune_mode = 'dynamic'") + res := tk.MustQuery("explain select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Rows() + require.Contains(t, res[1][0], "IndexMerge") + + // Default is tidb_executor_concurrency. + res = tk.MustQuery("select @@tidb_executor_concurrency;").Sort().Rows() + defExecCon := res[0][0].(string) + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", fmt.Sprintf("return(%s)", defExecCon))) + defer func() { + require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency")) + }() + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + + tk.MustExec("set tidb_executor_concurrency = 10") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(10)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + // workerCnt = min(part_num, concurrency) + tk.MustExec("set tidb_executor_concurrency = 20") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(10)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + tk.MustExec("set tidb_executor_concurrency = 2") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(2)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + + tk.MustExec("set tidb_index_merge_intersection_concurrency = 9") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(9)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + tk.MustExec("set tidb_index_merge_intersection_concurrency = 21") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(10)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + tk.MustExec("set tidb_index_merge_intersection_concurrency = 3") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(3)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + + // Concurrency only works for dynamic pruning partition table, so real concurrency is 1. + tk.MustExec("set tidb_partition_prune_mode = 'static'") + tk.MustExec("set tidb_index_merge_intersection_concurrency = 9") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(1)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) + + // Concurrency only works for dynamic pruning partition table. so real concurrency is 1. + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1(c1 int, c2 bigint, c3 bigint, primary key(c1), key(c2), key(c3));") + tk.MustExec("insert into t1 values(1, 1, 3000), (2, 1, 1)") + tk.MustExec("set tidb_index_merge_intersection_concurrency = 9") + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionConcurrency", "return(1)")) + tk.MustQuery("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Check(testkit.Rows("1")) +} + +func TestIntersectionWithDifferentConcurrency(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + var execCon []int + tblSchemas := []string{ + // partition table + "create table t1(c1 int, c2 bigint, c3 bigint, primary key(c1), key(c2), key(c3)) partition by hash(c1) partitions 10;", + // non-partition table + "create table t1(c1 int, c2 bigint, c3 bigint, primary key(c1), key(c2), key(c3));", + } + + for tblIdx, tblSchema := range tblSchemas { + if tblIdx == 0 { + // Test different intersectionProcessWorker with partition table(10 partitions). + execCon = []int{1, 3, 10, 11, 20} + } else { + // Default concurrency. + execCon = []int{5} + } + tk.MustExec("use test") + tk.MustExec("drop table if exists t1;") + tk.MustExec(tblSchema) + + const queryCnt int = 10 + const rowCnt int = 1000 + curRowCnt := 0 + insertStr := "insert into t1 values" + for i := 0; i < rowCnt; i++ { + if i != 0 { + insertStr += ", " + } + insertStr += fmt.Sprintf("(%d, %d, %d)", i, rand.Int(), rand.Int()) + curRowCnt++ + } + tk.MustExec(insertStr) + tk.MustExec("analyze table t1") + + for _, concurrency := range execCon { + tk.MustExec(fmt.Sprintf("set tidb_executor_concurrency = %d", concurrency)) + for i := 0; i < 2; i++ { + if i == 0 { + // Dynamic mode. + tk.MustExec("set tidb_partition_prune_mode = 'dynamic'") + res := tk.MustQuery("explain select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024") + require.Contains(t, res.Rows()[1][0], "IndexMerge") + } else { + tk.MustExec("set tidb_partition_prune_mode = 'static'") + res := tk.MustQuery("explain select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024") + if tblIdx == 0 { + // partition table + require.Contains(t, res.Rows()[1][0], "PartitionUnion") + require.Contains(t, res.Rows()[2][0], "IndexMerge") + } else { + require.Contains(t, res.Rows()[1][0], "IndexMerge") + } + } + for i := 0; i < queryCnt; i++ { + c3 := rand.Intn(1024) + res := tk.MustQuery(fmt.Sprintf("select /*+ no_index_merge() */ c1 from t1 where c2 < 1024 and c3 > %d", c3)).Sort().Rows() + tk.MustQuery(fmt.Sprintf("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > %d", c3)).Sort().Check(res) + } + + // In tranaction + for i := 0; i < queryCnt; i++ { + tk.MustExec("begin;") + r := rand.Intn(3) + if r == 0 { + tk.MustExec(fmt.Sprintf("update t1 set c3 = %d where c1 = %d", rand.Int(), rand.Intn(rowCnt))) + } else if r == 1 { + tk.MustExec(fmt.Sprintf("delete from t1 where c1 = %d", rand.Intn(rowCnt))) + } else if r == 2 { + tk.MustExec(fmt.Sprintf("insert into t1 values(%d, %d, %d)", curRowCnt, rand.Int(), rand.Int())) + curRowCnt++ + } + c3 := rand.Intn(1024) + res := tk.MustQuery(fmt.Sprintf("select /*+ no_index_merge() */ c1 from t1 where c2 < 1024 and c3 > %d", c3)).Sort().Rows() + tk.MustQuery(fmt.Sprintf("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > %d", c3)).Sort().Check(res) + tk.MustExec("commit;") + } + } + } + tk.MustExec("drop table t1") + } +} + +func TestIntersectionWorkerPanic(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1(c1 int, c2 bigint, c3 bigint, primary key(c1), key(c2), key(c3)) partition by hash(c1) partitions 10;") + tk.MustExec("insert into t1 values(1, 1, 3000), (2, 1, 1)") + tk.MustExec("analyze table t1;") + tk.MustExec("set tidb_partition_prune_mode = 'dynamic'") + res := tk.MustQuery("explain select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024").Rows() + require.Contains(t, res[1][0], "IndexMerge") + + // Test panic in intersection. + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionWorkerPanic", "panic")) + err := tk.QueryToErr("select /*+ use_index_merge(t1, primary, c2, c3) */ c1 from t1 where c2 < 1024 and c3 > 1024") + require.Contains(t, err.Error(), "IndexMergeReaderExecutor") + require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/executor/testIndexMergeIntersectionWorkerPanic")) +} + +func TestIntersectionMemQuota(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1(pk varchar(100) primary key, c1 int, c2 int, index idx1(c1), index idx2(c2))") + + insertStr := "insert into t1 values" + for i := 0; i < 20; i++ { + if i != 0 { + insertStr += ", " + } + insertStr += fmt.Sprintf("('%s', %d, %d)", testutil.RandStringRunes(100), 1, 1) + } + tk.MustExec(insertStr) + res := tk.MustQuery("explain select /*+ use_index_merge(t1, primary, idx1, idx2) */ c1 from t1 where c1 < 1024 and c2 < 1024").Rows() + require.Contains(t, res[1][0], "IndexMerge") + + tk.MustExec("set global tidb_mem_oom_action='CANCEL'") + defer tk.MustExec("set global tidb_mem_oom_action = DEFAULT") + tk.MustExec("set @@tidb_mem_quota_query = 4000") + err := tk.QueryToErr("select /*+ use_index_merge(t1, primary, idx1, idx2) */ c1 from t1 where c1 < 1024 and c2 < 1024") + require.Contains(t, err.Error(), "Out Of Memory Quota!") +} diff --git a/executor/infoschema_cluster_table_test.go b/executor/infoschema_cluster_table_test.go index 012cd98178443..bdf7ac14235e5 100644 --- a/executor/infoschema_cluster_table_test.go +++ b/executor/infoschema_cluster_table_test.go @@ -290,7 +290,7 @@ func TestTableStorageStats(t *testing.T) { "test 2", )) rows := tk.MustQuery("select TABLE_NAME from information_schema.TABLE_STORAGE_STATS where TABLE_SCHEMA = 'mysql';").Rows() - result := 40 + result := 42 require.Len(t, rows, result) // More tests about the privileges. diff --git a/executor/infoschema_reader.go b/executor/infoschema_reader.go index b3b881c1f65fa..472220bb2dcc6 100644 --- a/executor/infoschema_reader.go +++ b/executor/infoschema_reader.go @@ -386,7 +386,7 @@ func getAutoIncrementID(ctx sessionctx.Context, schema *model.DBInfo, tblInfo *m if err != nil { return 0, err } - return tbl.Allocators(ctx).Get(autoid.RowIDAllocType).Base() + 1, nil + return tbl.Allocators(ctx).Get(autoid.AutoIncrementType).Base() + 1, nil } func hasPriv(ctx sessionctx.Context, priv mysql.PrivilegeType) bool { @@ -2607,7 +2607,17 @@ func (e *tidbTrxTableRetriever) retrieve(ctx context.Context, sctx sessionctx.Co row = append(row, types.NewDatum(nil)) } } else { - row = append(row, e.txnInfo[i].ToDatum(c.Name.O)) + switch c.Name.O { + case txninfo.MemBufferBytesStr: + memDBFootprint := sctx.GetSessionVars().MemDBFootprint + var bytesConsumed int64 + if memDBFootprint != nil { + bytesConsumed = memDBFootprint.BytesConsumed() + } + row = append(row, types.NewDatum(bytesConsumed)) + default: + row = append(row, e.txnInfo[i].ToDatum(c.Name.O)) + } } } res = append(res, row) diff --git a/executor/insert.go b/executor/insert.go index 9b286297351b9..36af152899bc3 100644 --- a/executor/insert.go +++ b/executor/insert.go @@ -15,6 +15,7 @@ package executor import ( + "bytes" "context" "encoding/hex" "fmt" @@ -31,6 +32,7 @@ import ( "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/parser/terror" "github.com/pingcap/tidb/table" + "github.com/pingcap/tidb/table/tables" "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" @@ -70,7 +72,6 @@ func (e *InsertExec) exec(ctx context.Context, rows [][]types.Datum) error { return err } setOptionForTopSQL(sessVars.StmtCtx, txn) - txnSize := txn.Size() sessVars.StmtCtx.AddRecordRows(uint64(len(rows))) // If you use the IGNORE keyword, duplicate-key error that occurs while executing the INSERT statement are ignored. // For example, without IGNORE, a row that duplicates an existing UNIQUE index or PRIMARY KEY value in @@ -113,7 +114,6 @@ func (e *InsertExec) exec(ctx context.Context, rows [][]types.Datum) error { e.stats.CheckInsertTime += time.Since(start) } } - e.memTracker.Consume(int64(txn.Size() - txnSize)) return nil } @@ -264,6 +264,14 @@ func (e *InsertExec) batchUpdateDupRows(ctx context.Context, newRows [][]types.D } return err } + // Since the temp index stores deleted key with marked 'deleteu' for unique key at the end + // of value, So if return a key we check and skip deleted key. + if tablecodec.IsTempIndexKey(uk.newKey) { + rowVal := val[:len(val)-1] + if bytes.Equal(rowVal, tables.DeleteMarkerUnique) { + continue + } + } handle, err := tablecodec.DecodeHandleInUniqueIndexValue(val, uk.commonHandle) if err != nil { return err @@ -329,6 +337,9 @@ func (e *InsertExec) Next(ctx context.Context, req *chunk.Chunk) error { // Close implements the Executor Close interface. func (e *InsertExec) Close() error { + if e.runtimeStats != nil && e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } defer e.memTracker.ReplaceBytesUsed(0) e.ctx.GetSessionVars().CurrInsertValues = chunk.Row{} e.ctx.GetSessionVars().CurrInsertBatchExtraCols = e.ctx.GetSessionVars().CurrInsertBatchExtraCols[0:0:0] diff --git a/executor/insert_common.go b/executor/insert_common.go index 5bb7feb2441da..dbd4a5ae264cd 100644 --- a/executor/insert_common.go +++ b/executor/insert_common.go @@ -778,7 +778,8 @@ func (e *InsertValues) lazyAdjustAutoIncrementDatum(ctx context.Context, rows [] } // Use the value if it's not null and not 0. if recordID != 0 { - err = e.Table.Allocators(e.ctx).Get(autoid.RowIDAllocType).Rebase(ctx, recordID, true) + alloc := e.Table.Allocators(e.ctx).Get(autoid.AutoIncrementType) + err = alloc.Rebase(ctx, recordID, true) if err != nil { return nil, err } @@ -871,7 +872,7 @@ func (e *InsertValues) adjustAutoIncrementDatum(ctx context.Context, d types.Dat } // Use the value if it's not null and not 0. if recordID != 0 { - err = e.Table.Allocators(e.ctx).Get(autoid.RowIDAllocType).Rebase(ctx, recordID, true) + err = e.Table.Allocators(e.ctx).Get(autoid.AutoIncrementType).Rebase(ctx, recordID, true) if err != nil { return types.Datum{}, err } @@ -1091,12 +1092,7 @@ func (e *InsertValues) collectRuntimeStatsEnabled() bool { BasicRuntimeStats: e.runtimeStats, SnapshotRuntimeStats: snapshotStats, AllocatorRuntimeStats: autoid.NewAllocatorRuntimeStats(), - FKCheckStats: &FKCheckRuntimeStats{}, } - for _, fkc := range e.fkChecks { - fkc.stats = e.stats.FKCheckStats - } - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } return true } @@ -1299,7 +1295,6 @@ type InsertRuntimeStat struct { CheckInsertTime time.Duration Prefetch time.Duration FKCheckTime time.Duration - FKCheckStats *FKCheckRuntimeStats } func (e *InsertRuntimeStat) String() string { @@ -1341,10 +1336,8 @@ func (e *InsertRuntimeStat) String() string { execdetails.FormatDuration(e.CheckInsertTime), execdetails.FormatDuration(e.CheckInsertTime-e.Prefetch), execdetails.FormatDuration(e.Prefetch))) - if e.FKCheckStats != nil && e.FKCheckStats.Keys > 0 { - buf.WriteString(fmt.Sprintf(", fk_check: %v, fk_num: %v", - execdetails.FormatDuration(e.FKCheckTime), - e.FKCheckStats.Keys)) + if e.FKCheckTime > 0 { + buf.WriteString(fmt.Sprintf(", fk_check: %v", execdetails.FormatDuration(e.FKCheckTime))) } if e.SnapshotRuntimeStats != nil { if rpc := e.SnapshotRuntimeStats.String(); len(rpc) > 0 { @@ -1376,10 +1369,6 @@ func (e *InsertRuntimeStat) Clone() execdetails.RuntimeStats { if e.AllocatorRuntimeStats != nil { newRs.AllocatorRuntimeStats = e.AllocatorRuntimeStats.Clone() } - if e.FKCheckStats != nil { - fkCheckStats := *e.FKCheckStats - newRs.FKCheckStats = &fkCheckStats - } return newRs } diff --git a/executor/insert_test.go b/executor/insert_test.go index f3db8c6aca40f..b55c3a63765e3 100644 --- a/executor/insert_test.go +++ b/executor/insert_test.go @@ -895,6 +895,22 @@ func TestInsertErrorMsg(t *testing.T) { tk.MustExec(`create table t (a int primary key, b datetime, d date)`) tk.MustContainErrMsg(`insert into t values (1, '2019-02-11 30:00:00', '2019-01-31')`, "Incorrect datetime value: '2019-02-11 30:00:00' for column 'b' at row 1") + + // test for Issue #35289 + tk.MustExec("CREATE TABLE t1 (a BINARY(16) PRIMARY KEY);") + tk.MustExec(`INSERT INTO t1 VALUES (AES_ENCRYPT('a','a'));`) + err := tk.ExecToErr(`INSERT INTO t1 VALUES (AES_ENCRYPT('a','a'));`) + require.Error(t, err, `ERROR 1062 (23000): Duplicate entry '{ W]\xA1\x06u\x9D\xBD\xB1\xA3.\xE2\xD9\xA7t' for key 't1.PRIMARY'`) + + tk.MustExec(`INSERT INTO t1 VALUES (AES_ENCRYPT('b','b'));`) + err = tk.ExecToErr(`INSERT INTO t1 VALUES (AES_ENCRYPT('b','b'));`) + require.Error(t, err, "ERROR 1062 (23000): Duplicate entry '\\x0C\\x1E\\x8DG`\\xEB\\x93 F&BC\\xF0\\xB5\\xF4\\xB7' for key 't1.PRIMARY'") + + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1 (a bit primary key) engine=innodb;") + tk.MustExec("insert into t1 values (b'0');") + err = tk.ExecToErr(`insert into t1 values (b'0');`) + require.Error(t, err, `ERROR 1062 (23000): Duplicate entry '\x00' for key 't1.PRIMARY'`) } func TestIssue16366(t *testing.T) { @@ -1056,8 +1072,7 @@ func TestInsertRuntimeStat(t *testing.T) { stats.Merge(stats.Clone()) require.Equal(t, "prepare: 6s, check_insert: {total_time: 4s, mem_insert_time: 2s, prefetch: 2s}", stats.String()) stats.FKCheckTime = time.Second - stats.FKCheckStats = &executor.FKCheckRuntimeStats{Keys: 20} - require.Equal(t, "prepare: 6s, check_insert: {total_time: 4s, mem_insert_time: 2s, prefetch: 2s, fk_check: 1s, fk_num: 20}", stats.String()) + require.Equal(t, "prepare: 6s, check_insert: {total_time: 4s, mem_insert_time: 2s, prefetch: 2s, fk_check: 1s}", stats.String()) } func TestDuplicateEntryMessage(t *testing.T) { diff --git a/executor/issuetest/BUILD.bazel b/executor/issuetest/BUILD.bazel new file mode 100644 index 0000000000000..77bfaf7f11290 --- /dev/null +++ b/executor/issuetest/BUILD.bazel @@ -0,0 +1,27 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "issuetest_test", + srcs = [ + "executor_issue_test.go", + "main_test.go", + ], + flaky = True, + shard_count = 50, + deps = [ + "//config", + "//kv", + "//meta/autoid", + "//parser/auth", + "//parser/charset", + "//parser/mysql", + "//sessionctx/variable", + "//statistics", + "//testkit", + "//util", + "@com_github_pingcap_failpoint//:failpoint", + "@com_github_stretchr_testify//require", + "@com_github_tikv_client_go_v2//tikv", + "@org_uber_go_goleak//:goleak", + ], +) diff --git a/executor/executor_issue_test.go b/executor/issuetest/executor_issue_test.go similarity index 96% rename from executor/executor_issue_test.go rename to executor/issuetest/executor_issue_test.go index 5d2912f78f449..643339dd157d0 100644 --- a/executor/executor_issue_test.go +++ b/executor/issuetest/executor_issue_test.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package executor_test +package issuetest_test import ( "context" @@ -684,6 +684,9 @@ func TestIssue22231(t *testing.T) { tk.MustQuery("select cast('2020-05-28 23:59:59 00:00:00' as datetime)").Check(testkit.Rows("2020-05-28 23:59:59")) tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1292 Truncated incorrect datetime value: '2020-05-28 23:59:59 00:00:00'")) tk.MustExec("drop table if exists t_issue_22231") + + tk.MustQuery("SELECT CAST(\"1111111111-\" AS DATE);") + tk.MustQuery("SHOW WARNINGS").Check(testkit.Rows("Warning 1292 Incorrect datetime value: '1111111111-'")) } // TestIssue2612 is related with https://github.com/pingcap/tidb/issues/2612 @@ -1237,3 +1240,46 @@ func TestIssue33214(t *testing.T) { } } } + +func TestIssue982(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (c int auto_increment, key(c)) auto_id_cache 1;") + tk.MustExec("insert into t values();") + tk.MustExec("insert into t values();") + tk.MustQuery("select * from t;").Check(testkit.Rows("1", "2")) +} + +func TestIssue24627(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + for _, sql := range []string{ + "create table test(id float primary key clustered AUTO_INCREMENT, col1 int);", + "create table test(id float primary key nonclustered AUTO_INCREMENT, col1 int) AUTO_ID_CACHE 1;", + } { + tk.MustExec("drop table if exists test;") + tk.MustExec(sql) + tk.MustExec("replace into test(col1) values(1);") + tk.MustExec("replace into test(col1) values(2);") + tk.MustQuery("select * from test;").Check(testkit.Rows("1 1", "2 2")) + tk.MustExec("drop table test") + } + + for _, sql := range []string{ + "create table test2(id double primary key clustered AUTO_INCREMENT, col1 int);", + "create table test2(id double primary key nonclustered AUTO_INCREMENT, col1 int) AUTO_ID_CACHE 1;", + } { + tk.MustExec(sql) + tk.MustExec("replace into test2(col1) values(1);") + tk.MustExec("insert into test2(col1) values(1);") + tk.MustExec("replace into test2(col1) values(1);") + tk.MustExec("insert into test2(col1) values(1);") + tk.MustExec("replace into test2(col1) values(1);") + tk.MustExec("replace into test2(col1) values(1);") + tk.MustQuery("select * from test2").Check(testkit.Rows("1 1", "2 1", "3 1", "4 1", "5 1", "6 1")) + tk.MustExec("drop table test2") + } +} diff --git a/executor/issuetest/main_test.go b/executor/issuetest/main_test.go new file mode 100644 index 0000000000000..daecbf2f06859 --- /dev/null +++ b/executor/issuetest/main_test.go @@ -0,0 +1,45 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package issuetest + +import ( + "testing" + + "github.com/pingcap/tidb/config" + "github.com/pingcap/tidb/meta/autoid" + "github.com/tikv/client-go/v2/tikv" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + autoid.SetStep(5000) + config.UpdateGlobal(func(conf *config.Config) { + conf.Instance.SlowThreshold = 30000 // 30s + conf.TiKVClient.AsyncCommit.SafeWindow = 0 + conf.TiKVClient.AsyncCommit.AllowedClockDrift = 0 + conf.Experimental.AllowsExpressionIndex = true + }) + tikv.EnableFailpoints() + + opts := []goleak.Option{ + goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), + goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), + goleak.IgnoreTopFunction("go.etcd.io/etcd/client/pkg/v3/logutil.(*MergeLogger).outputLoop"), + goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), + goleak.IgnoreTopFunction("gopkg.in/natefinch/lumberjack%2ev2.(*Logger).millRun"), + goleak.IgnoreTopFunction("github.com/tikv/client-go/v2/txnkv/transaction.keepAlive"), + } + goleak.VerifyTestMain(m, opts...) +} diff --git a/executor/join.go b/executor/join.go index 072f0106d50ef..91533be2259cf 100644 --- a/executor/join.go +++ b/executor/join.go @@ -47,15 +47,28 @@ var ( ) type hashJoinCtx struct { + sessCtx sessionctx.Context + allocPool chunk.Allocator + // concurrency is the number of partition, build and join workers. + concurrency uint joinResultCh chan *hashjoinWorkerResult // closeCh add a lock for closing executor. - closeCh chan struct{} - finished atomic.Bool - useOuterToBuild bool - isOuterJoin bool - buildFinished chan error - rowContainer *hashRowContainer - joinType plannercore.JoinType + closeCh chan struct{} + finished atomic.Bool + useOuterToBuild bool + isOuterJoin bool + isNullEQ []bool + buildFinished chan error + rowContainer *hashRowContainer + joinType plannercore.JoinType + outerMatchedStatus []*bitmap.ConcurrentBitmap + stats *hashJoinRuntimeStats + probeTypes []*types.FieldType + buildTypes []*types.FieldType + outerFilter expression.CNFExprs + isNullAware bool + memTracker *memory.Tracker // track memory usage. + diskTracker *disk.Tracker // track disk usage. } // probeSideTupleFetcher reads tuples from probeSideExec and send them to probeWorkers. @@ -69,6 +82,11 @@ type probeSideTupleFetcher struct { } type probeWorker struct { + hashJoinCtx *hashJoinCtx + workerID uint + + probeKeyColIdx []int + probeNAKeyColIdx []int // We pre-alloc and reuse the Rows and RowPtrs for each probe goroutine, to avoid allocation frequently buildSideRows []chunk.Row buildSideRowPtrs []chunk.RowPtr @@ -81,42 +99,31 @@ type probeWorker struct { // for every naaj probe worker, pre-allocate the int slice for store the join column index to check. needCheckBuildRowPos []int needCheckProbeRowPos []int + probeChkResourceCh chan *probeChkResource + joinChkResourceCh chan *chunk.Chunk + probeResultCh chan *chunk.Chunk +} + +type buildWorker struct { + hashJoinCtx *hashJoinCtx + buildSideExec Executor + buildKeyColIdx []int + buildNAKeyColIdx []int } // HashJoinExec implements the hash join algorithm. type HashJoinExec struct { baseExecutor - - probeSideTupleFetcher *probeSideTupleFetcher *hashJoinCtx - probeWorkers []probeWorker - buildSideExec Executor - buildSideEstCount float64 - outerFilter expression.CNFExprs - probeKeys []*expression.Column - probeNAKeys []*expression.Column - buildKeys []*expression.Column - buildNAKeys []*expression.Column - isNullEQ []bool - probeTypes []*types.FieldType - buildTypes []*types.FieldType - - // concurrency is the number of partition, build and join workers. - concurrency uint - - worker util.WaitGroupWrapper - waiter util.WaitGroupWrapper - joinChkResourceCh []chan *chunk.Chunk - - memTracker *memory.Tracker // track memory usage. - diskTracker *disk.Tracker // track disk usage. + probeSideTupleFetcher *probeSideTupleFetcher + probeWorkers []*probeWorker + buildWorker *buildWorker - outerMatchedStatus []*bitmap.ConcurrentBitmap + workerWg util.WaitGroupWrapper + waiterWg util.WaitGroupWrapper prepared bool - - stats *hashJoinRuntimeStats } // probeChkResource stores the result of the join probe side fetch worker, @@ -157,14 +164,13 @@ func (e *HashJoinExec) Close() error { for i := range e.probeSideTupleFetcher.probeResultChs { channel.Clear(e.probeSideTupleFetcher.probeResultChs[i]) } - for i := range e.joinChkResourceCh { - close(e.joinChkResourceCh[i]) - channel.Clear(e.joinChkResourceCh[i]) + for i := range e.probeWorkers { + close(e.probeWorkers[i].joinChkResourceCh) + channel.Clear(e.probeWorkers[i].joinChkResourceCh) } e.probeSideTupleFetcher.probeChkResourceCh = nil - e.joinChkResourceCh = nil terror.Call(e.rowContainer.Close) - e.waiter.Wait() + e.waiterWg.Wait() } e.outerMatchedStatus = e.outerMatchedStatus[:0] for _, w := range e.probeWorkers { @@ -172,11 +178,15 @@ func (e *HashJoinExec) Close() error { w.buildSideRowPtrs = nil w.needCheckBuildRowPos = nil w.needCheckProbeRowPos = nil + w.joinChkResourceCh = nil } if e.stats != nil && e.rowContainer != nil { e.stats.hashStat = *e.rowContainer.stat } + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } err := e.baseExecutor.Close() return err } @@ -189,28 +199,21 @@ func (e *HashJoinExec) Open(ctx context.Context) error { return err } e.prepared = false - e.memTracker = memory.NewTracker(e.id, -1) - e.memTracker.AttachTo(e.ctx.GetSessionVars().StmtCtx.MemTracker) + e.hashJoinCtx.memTracker = memory.NewTracker(e.id, -1) + e.hashJoinCtx.memTracker.AttachTo(e.ctx.GetSessionVars().StmtCtx.MemTracker) e.diskTracker = disk.NewTracker(e.id, -1) e.diskTracker.AttachTo(e.ctx.GetSessionVars().StmtCtx.DiskTracker) - e.worker = util.WaitGroupWrapper{} - e.waiter = util.WaitGroupWrapper{} + e.workerWg = util.WaitGroupWrapper{} + e.waiterWg = util.WaitGroupWrapper{} e.closeCh = make(chan struct{}) e.finished.Store(false) - if e.probeTypes == nil { - e.probeTypes = retTypes(e.probeSideTupleFetcher.probeSideExec) - } - if e.buildTypes == nil { - e.buildTypes = retTypes(e.buildSideExec) - } if e.runtimeStats != nil { e.stats = &hashJoinRuntimeStats{ concurrent: int(e.concurrency), } - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } return nil } @@ -293,7 +296,7 @@ func (fetcher *probeSideTupleFetcher) wait4BuildSide() (emptyBuild bool, err err // fetchBuildSideRows fetches all rows from build side executor, and append them // to e.buildSideResult. -func (e *HashJoinExec) fetchBuildSideRows(ctx context.Context, chkCh chan<- *chunk.Chunk, errCh chan<- error, doneCh <-chan struct{}) { +func (w *buildWorker) fetchBuildSideRows(ctx context.Context, chkCh chan<- *chunk.Chunk, errCh chan<- error, doneCh <-chan struct{}) { defer close(chkCh) var err error failpoint.Inject("issue30289", func(val failpoint.Value) { @@ -303,12 +306,13 @@ func (e *HashJoinExec) fetchBuildSideRows(ctx context.Context, chkCh chan<- *chu return } }) + sessVars := w.hashJoinCtx.sessCtx.GetSessionVars() for { - if e.finished.Load() { + if w.hashJoinCtx.finished.Load() { return } - chk := e.ctx.GetSessionVars().GetNewChunkWithCapacity(e.buildSideExec.base().retFieldTypes, e.ctx.GetSessionVars().MaxChunkSize, e.ctx.GetSessionVars().MaxChunkSize, e.AllocPool) - err = Next(ctx, e.buildSideExec, chk) + chk := sessVars.GetNewChunkWithCapacity(w.buildSideExec.base().retFieldTypes, sessVars.MaxChunkSize, sessVars.MaxChunkSize, w.hashJoinCtx.allocPool) + err = Next(ctx, w.buildSideExec, chk) if err != nil { errCh <- errors.Trace(err) return @@ -321,7 +325,7 @@ func (e *HashJoinExec) fetchBuildSideRows(ctx context.Context, chkCh chan<- *chu select { case <-doneCh: return - case <-e.closeCh: + case <-w.hashJoinCtx.closeCh: return case chkCh <- chk: } @@ -340,6 +344,7 @@ func (e *HashJoinExec) initializeForProbe() { e.probeSideTupleFetcher.probeResultChs = make([]chan *chunk.Chunk, e.concurrency) for i := uint(0); i < e.concurrency; i++ { e.probeSideTupleFetcher.probeResultChs[i] = make(chan *chunk.Chunk, 1) + e.probeWorkers[i].probeResultCh = e.probeSideTupleFetcher.probeResultChs[i] } // e.probeChkResourceCh is for transmitting the used probeSideExec chunks from @@ -352,38 +357,30 @@ func (e *HashJoinExec) initializeForProbe() { } } - // e.joinChkResourceCh is for transmitting the reused join result chunks - // from the main thread to join worker goroutines. - e.joinChkResourceCh = make([]chan *chunk.Chunk, e.concurrency) + // e.probeWorker.joinChkResourceCh is for transmitting the reused join result chunks + // from the main thread to probe worker goroutines. for i := uint(0); i < e.concurrency; i++ { - e.joinChkResourceCh[i] = make(chan *chunk.Chunk, 1) - e.joinChkResourceCh[i] <- newFirstChunk(e) + e.probeWorkers[i].joinChkResourceCh = make(chan *chunk.Chunk, 1) + e.probeWorkers[i].joinChkResourceCh <- newFirstChunk(e) + e.probeWorkers[i].probeChkResourceCh = e.probeSideTupleFetcher.probeChkResourceCh } } func (e *HashJoinExec) fetchAndProbeHashTable(ctx context.Context) { e.initializeForProbe() - e.worker.RunWithRecover(func() { + e.workerWg.RunWithRecover(func() { defer trace.StartRegion(ctx, "HashJoinProbeSideFetcher").End() e.probeSideTupleFetcher.fetchProbeSideChunks(ctx, e.maxChunkSize) }, e.probeSideTupleFetcher.handleProbeSideFetcherPanic) - probeKeyColIdx := make([]int, len(e.probeKeys)) - probeNAKeColIdx := make([]int, len(e.probeNAKeys)) - for i := range e.probeKeys { - probeKeyColIdx[i] = e.probeKeys[i].Index - } - for i := range e.probeNAKeys { - probeNAKeColIdx[i] = e.probeNAKeys[i].Index - } for i := uint(0); i < e.concurrency; i++ { - workID := i - e.worker.RunWithRecover(func() { + workerID := i + e.workerWg.RunWithRecover(func() { defer trace.StartRegion(ctx, "HashJoinWorker").End() - e.runJoinWorker(workID, probeKeyColIdx, probeNAKeColIdx) - }, e.handleJoinWorkerPanic) + e.probeWorkers[workerID].runJoinWorker() + }, e.probeWorkers[workerID].handleProbeWorkerPanic) } - e.waiter.RunWithRecover(e.waitJoinWorkersAndCloseResultChan, nil) + e.waiterWg.RunWithRecover(e.waitJoinWorkersAndCloseResultChan, nil) } func (fetcher *probeSideTupleFetcher) handleProbeSideFetcherPanic(r interface{}) { @@ -395,6 +392,12 @@ func (fetcher *probeSideTupleFetcher) handleProbeSideFetcherPanic(r interface{}) } } +func (w *probeWorker) handleProbeWorkerPanic(r interface{}) { + if r != nil { + w.hashJoinCtx.joinResultCh <- &hashjoinWorkerResult{err: errors.Errorf("probeWorker[%d] meets error: %v", w.workerID, r)} + } +} + func (e *HashJoinExec) handleJoinWorkerPanic(r interface{}) { if r != nil { e.joinResultCh <- &hashjoinWorkerResult{err: errors.Errorf("%v", r)} @@ -402,27 +405,27 @@ func (e *HashJoinExec) handleJoinWorkerPanic(r interface{}) { } // Concurrently handling unmatched rows from the hash table -func (e *HashJoinExec) handleUnmatchedRowsFromHashTable(workerID uint) { - ok, joinResult := e.getNewJoinResult(workerID) +func (w *probeWorker) handleUnmatchedRowsFromHashTable() { + ok, joinResult := w.getNewJoinResult() if !ok { return } - numChks := e.rowContainer.NumChunks() - for i := int(workerID); i < numChks; i += int(e.concurrency) { - chk, err := e.rowContainer.GetChunk(i) + numChks := w.rowContainerForProbe.NumChunks() + for i := int(w.workerID); i < numChks; i += int(w.hashJoinCtx.concurrency) { + chk, err := w.rowContainerForProbe.GetChunk(i) if err != nil { // Catching the error and send it joinResult.err = err - e.joinResultCh <- joinResult + w.hashJoinCtx.joinResultCh <- joinResult return } for j := 0; j < chk.NumRows(); j++ { - if !e.outerMatchedStatus[i].UnsafeIsSet(j) { // process unmatched outer rows - e.probeWorkers[workerID].joiner.onMissMatch(false, chk.GetRow(j), joinResult.chk) + if !w.hashJoinCtx.outerMatchedStatus[i].UnsafeIsSet(j) { // process unmatched outer rows + w.joiner.onMissMatch(false, chk.GetRow(j), joinResult.chk) } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return } @@ -433,32 +436,32 @@ func (e *HashJoinExec) handleUnmatchedRowsFromHashTable(workerID uint) { if joinResult == nil { return } else if joinResult.err != nil || (joinResult.chk != nil && joinResult.chk.NumRows() > 0) { - e.joinResultCh <- joinResult + w.hashJoinCtx.joinResultCh <- joinResult } } func (e *HashJoinExec) waitJoinWorkersAndCloseResultChan() { - e.worker.Wait() + e.workerWg.Wait() if e.useOuterToBuild { // Concurrently handling unmatched rows from the hash table at the tail for i := uint(0); i < e.concurrency; i++ { var workerID = i - e.worker.RunWithRecover(func() { e.handleUnmatchedRowsFromHashTable(workerID) }, e.handleJoinWorkerPanic) + e.workerWg.RunWithRecover(func() { e.probeWorkers[workerID].handleUnmatchedRowsFromHashTable() }, e.handleJoinWorkerPanic) } - e.worker.Wait() + e.workerWg.Wait() } close(e.joinResultCh) } -func (e *HashJoinExec) runJoinWorker(workerID uint, probeKeyColIdx, probeNAKeyColIdx []int) { +func (w *probeWorker) runJoinWorker() { probeTime := int64(0) - if e.stats != nil { + if w.hashJoinCtx.stats != nil { start := time.Now() defer func() { t := time.Since(start) - atomic.AddInt64(&e.stats.probe, probeTime) - atomic.AddInt64(&e.stats.fetchAndProbe, int64(t)) - e.stats.setMaxFetchAndProbeTime(int64(t)) + atomic.AddInt64(&w.hashJoinCtx.stats.probe, probeTime) + atomic.AddInt64(&w.hashJoinCtx.stats.fetchAndProbe, int64(t)) + w.hashJoinCtx.stats.setMaxFetchAndProbeTime(int64(t)) }() } @@ -466,38 +469,38 @@ func (e *HashJoinExec) runJoinWorker(workerID uint, probeKeyColIdx, probeNAKeyCo probeSideResult *chunk.Chunk selected = make([]bool, 0, chunk.InitialCapacity) ) - ok, joinResult := e.getNewJoinResult(workerID) + ok, joinResult := w.getNewJoinResult() if !ok { return } // Read and filter probeSideResult, and join the probeSideResult with the build side rows. emptyProbeSideResult := &probeChkResource{ - dest: e.probeSideTupleFetcher.probeResultChs[workerID], + dest: w.probeResultCh, } hCtx := &hashContext{ - allTypes: e.probeTypes, - keyColIdx: probeKeyColIdx, - naKeyColIdx: probeNAKeyColIdx, + allTypes: w.hashJoinCtx.probeTypes, + keyColIdx: w.probeKeyColIdx, + naKeyColIdx: w.probeNAKeyColIdx, } for ok := true; ok; { - if e.finished.Load() { + if w.hashJoinCtx.finished.Load() { break } select { - case <-e.closeCh: + case <-w.hashJoinCtx.closeCh: return - case probeSideResult, ok = <-e.probeSideTupleFetcher.probeResultChs[workerID]: + case probeSideResult, ok = <-w.probeResultCh: } failpoint.Inject("ConsumeRandomPanic", nil) if !ok { break } start := time.Now() - if e.useOuterToBuild { - ok, joinResult = e.join2ChunkForOuterHashJoin(workerID, probeSideResult, hCtx, e.probeWorkers[workerID].rowContainerForProbe, joinResult) + if w.hashJoinCtx.useOuterToBuild { + ok, joinResult = w.join2ChunkForOuterHashJoin(probeSideResult, hCtx, joinResult) } else { - ok, joinResult = e.join2Chunk(workerID, probeSideResult, hCtx, e.probeWorkers[workerID].rowContainerForProbe, joinResult, selected) + ok, joinResult = w.join2Chunk(probeSideResult, hCtx, joinResult, selected) } probeTime += int64(time.Since(start)) if !ok { @@ -505,22 +508,22 @@ func (e *HashJoinExec) runJoinWorker(workerID uint, probeKeyColIdx, probeNAKeyCo } probeSideResult.Reset() emptyProbeSideResult.chk = probeSideResult - e.probeSideTupleFetcher.probeChkResourceCh <- emptyProbeSideResult + w.probeChkResourceCh <- emptyProbeSideResult } // note joinResult.chk may be nil when getNewJoinResult fails in loops if joinResult == nil { return } else if joinResult.err != nil || (joinResult.chk != nil && joinResult.chk.NumRows() > 0) { - e.joinResultCh <- joinResult + w.hashJoinCtx.joinResultCh <- joinResult } else if joinResult.chk != nil && joinResult.chk.NumRows() == 0 { - e.joinChkResourceCh[workerID] <- joinResult.chk + w.joinChkResourceCh <- joinResult.chk } } -func (e *HashJoinExec) joinMatchedProbeSideRow2ChunkForOuterHashJoin(workerID uint, probeKey uint64, probeSideRow chunk.Row, hCtx *hashContext, rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { +func (w *probeWorker) joinMatchedProbeSideRow2ChunkForOuterHashJoin(probeKey uint64, probeSideRow chunk.Row, hCtx *hashContext, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { var err error - e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].buildSideRowPtrs, err = rowContainer.GetMatchedRowsAndPtrs(probeKey, probeSideRow, hCtx, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].buildSideRowPtrs, true) - buildSideRows, rowsPtrs := e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].buildSideRowPtrs + w.buildSideRows, w.buildSideRowPtrs, err = w.rowContainerForProbe.GetMatchedRowsAndPtrs(probeKey, probeSideRow, hCtx, w.buildSideRows, w.buildSideRowPtrs, true) + buildSideRows, rowsPtrs := w.buildSideRows, w.buildSideRowPtrs if err != nil { joinResult.err = err return false, joinResult @@ -529,25 +532,25 @@ func (e *HashJoinExec) joinMatchedProbeSideRow2ChunkForOuterHashJoin(workerID ui return true, joinResult } - iter := e.probeWorkers[workerID].rowIters + iter := w.rowIters iter.Reset(buildSideRows) var outerMatchStatus []outerRowStatusFlag rowIdx, ok := 0, false for iter.Begin(); iter.Current() != iter.End(); { - outerMatchStatus, err = e.probeWorkers[workerID].joiner.tryToMatchOuters(iter, probeSideRow, joinResult.chk, outerMatchStatus) + outerMatchStatus, err = w.joiner.tryToMatchOuters(iter, probeSideRow, joinResult.chk, outerMatchStatus) if err != nil { joinResult.err = err return false, joinResult } for i := range outerMatchStatus { if outerMatchStatus[i] == outerRowMatched { - e.outerMatchedStatus[rowsPtrs[rowIdx+i].ChkIdx].Set(int(rowsPtrs[rowIdx+i].RowIdx)) + w.hashJoinCtx.outerMatchedStatus[rowsPtrs[rowIdx+i].ChkIdx].Set(int(rowsPtrs[rowIdx+i].RowIdx)) } } rowIdx += len(outerMatchStatus) if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -557,8 +560,7 @@ func (e *HashJoinExec) joinMatchedProbeSideRow2ChunkForOuterHashJoin(workerID ui } // joinNAALOSJMatchProbeSideRow2Chunk implement the matching logic for NA-AntiLeftOuterSemiJoin -func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKey uint64, probeKeyNullBits *bitmap.ConcurrentBitmap, probeSideRow chunk.Row, hCtx *hashContext, - rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { +func (w *probeWorker) joinNAALOSJMatchProbeSideRow2Chunk(probeKey uint64, probeKeyNullBits *bitmap.ConcurrentBitmap, probeSideRow chunk.Row, hCtx *hashContext, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { var ( err error ok bool @@ -568,17 +570,17 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe // because AntiLeftOuterSemiJoin cares about the scalar value. If we both have a match from null // bucket and same key bucket, we should return the result as from same-key bucket // rather than from null bucket. - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetMatchedRows(probeKey, probeSideRow, hCtx, e.probeWorkers[workerID].buildSideRows) - buildSideRows := e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetMatchedRows(probeKey, probeSideRow, hCtx, w.buildSideRows) + buildSideRows := w.buildSideRows if err != nil { joinResult.err = err return false, joinResult } if len(buildSideRows) != 0 { - iter1 := e.probeWorkers[workerID].rowIters + iter1 := w.rowIters iter1.Reset(buildSideRows) for iter1.Begin(); iter1.Current() != iter1.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk, LeftNotNullRightNotNull) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk, LeftNotNullRightNotNull) if err != nil { joinResult.err = err return false, joinResult @@ -589,8 +591,8 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -598,8 +600,8 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe } } // step2: match the null bucket secondly. - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].needCheckBuildRowPos, e.probeWorkers[workerID].needCheckProbeRowPos) - buildSideRows = e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, w.buildSideRows, w.needCheckBuildRowPos, w.needCheckProbeRowPos) + buildSideRows = w.buildSideRows if err != nil { joinResult.err = err return false, joinResult @@ -607,13 +609,13 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe if len(buildSideRows) == 0 { // when reach here, it means we couldn't find a valid same key match from same-key bucket yet // and the null bucket is empty. so the result should be . - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } - iter2 := e.probeWorkers[workerID].rowIters + iter2 := w.rowIters iter2.Reset(buildSideRows) for iter2.Begin(); iter2.Current() != iter2.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk, LeftNotNullRightHasNull) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk, LeftNotNullRightHasNull) if err != nil { joinResult.err = err return false, joinResult @@ -624,8 +626,8 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -635,7 +637,7 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe // case1: x NOT IN (empty set): if other key bucket don't have the valid rows yet. // case2: x NOT IN (l,m,n...): if other key bucket do have the valid rows. // both cases mean the result should be - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } // when left side has null values, all we want is to find a valid build side rows (past other condition) @@ -643,17 +645,17 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe // case1: NOT IN (empty set): ----------------------> result is . // case2: NOT IN (at least a valid inner row) ------------------> result is . // Step1: match null bucket (assumption that null bucket is quite smaller than all hash table bucket rows) - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].needCheckBuildRowPos, e.probeWorkers[workerID].needCheckProbeRowPos) - buildSideRows := e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, w.buildSideRows, w.needCheckBuildRowPos, w.needCheckProbeRowPos) + buildSideRows := w.buildSideRows if err != nil { joinResult.err = err return false, joinResult } if len(buildSideRows) != 0 { - iter1 := e.probeWorkers[workerID].rowIters + iter1 := w.rowIters iter1.Reset(buildSideRows) for iter1.Begin(); iter1.Current() != iter1.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk, LeftHasNullRightHasNull) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk, LeftHasNullRightHasNull) if err != nil { joinResult.err = err return false, joinResult @@ -664,8 +666,8 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -673,8 +675,8 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe } } // Step2: match all hash table bucket build rows (use probeKeyNullBits to filter if any). - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetAllMatchedRows(hCtx, probeSideRow, probeKeyNullBits, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].needCheckBuildRowPos, e.probeWorkers[workerID].needCheckProbeRowPos) - buildSideRows = e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetAllMatchedRows(hCtx, probeSideRow, probeKeyNullBits, w.buildSideRows, w.needCheckBuildRowPos, w.needCheckProbeRowPos) + buildSideRows = w.buildSideRows if err != nil { joinResult.err = err return false, joinResult @@ -682,13 +684,13 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe if len(buildSideRows) == 0 { // when reach here, it means we couldn't return it quickly in null bucket, and same-bucket is empty, // which means x NOT IN (empty set) or x NOT IN (l,m,n), the result should be - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } - iter2 := e.probeWorkers[workerID].rowIters + iter2 := w.rowIters iter2.Reset(buildSideRows) for iter2.Begin(); iter2.Current() != iter2.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk, LeftHasNullRightNotNull) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk, LeftHasNullRightNotNull) if err != nil { joinResult.err = err return false, joinResult @@ -699,8 +701,8 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -709,13 +711,12 @@ func (e *HashJoinExec) joinNAALOSJMatchProbeSideRow2Chunk(workerID uint, probeKe // step3: if we couldn't return it quickly in null bucket and all hash bucket, here means only one cases: // case1: NOT IN (empty set): // empty set comes from no rows from all bucket can pass other condition. the result should be - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } // joinNAASJMatchProbeSideRow2Chunk implement the matching logic for NA-AntiSemiJoin -func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey uint64, probeKeyNullBits *bitmap.ConcurrentBitmap, probeSideRow chunk.Row, hCtx *hashContext, - rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { +func (w *probeWorker) joinNAASJMatchProbeSideRow2Chunk(probeKey uint64, probeKeyNullBits *bitmap.ConcurrentBitmap, probeSideRow chunk.Row, hCtx *hashContext, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { var ( err error ok bool @@ -723,17 +724,17 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey if probeKeyNullBits == nil { // step1: match null bucket first. // need fetch the "valid" rows every time. (nullBits map check is necessary) - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].needCheckBuildRowPos, e.probeWorkers[workerID].needCheckProbeRowPos) - buildSideRows := e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, w.buildSideRows, w.needCheckBuildRowPos, w.needCheckProbeRowPos) + buildSideRows := w.buildSideRows if err != nil { joinResult.err = err return false, joinResult } if len(buildSideRows) != 0 { - iter1 := e.probeWorkers[workerID].rowIters + iter1 := w.rowIters iter1.Reset(buildSideRows) for iter1.Begin(); iter1.Current() != iter1.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk) if err != nil { joinResult.err = err return false, joinResult @@ -744,8 +745,8 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -753,8 +754,8 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey } } // step2: then same key bucket. - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetMatchedRows(probeKey, probeSideRow, hCtx, e.probeWorkers[workerID].buildSideRows) - buildSideRows = e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetMatchedRows(probeKey, probeSideRow, hCtx, w.buildSideRows) + buildSideRows = w.buildSideRows if err != nil { joinResult.err = err return false, joinResult @@ -762,13 +763,13 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey if len(buildSideRows) == 0 { // when reach here, it means we couldn't return it quickly in null bucket, and same-bucket is empty, // which means x NOT IN (empty set), accept the rhs row. - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } - iter2 := e.probeWorkers[workerID].rowIters + iter2 := w.rowIters iter2.Reset(buildSideRows) for iter2.Begin(); iter2.Current() != iter2.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk) if err != nil { joinResult.err = err return false, joinResult @@ -779,8 +780,8 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -790,7 +791,7 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey // case1: x NOT IN (empty set): if other key bucket don't have the valid rows yet. // case2: x NOT IN (l,m,n...): if other key bucket do have the valid rows. // both cases should accept the rhs row. - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } // when left side has null values, all we want is to find a valid build side rows (passed from other condition) @@ -798,17 +799,17 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey // case1: NOT IN (empty set): ----------------------> accept rhs row. // case2: NOT IN (at least a valid inner row) ------------------> unknown result, refuse rhs row. // Step1: match null bucket (assumption that null bucket is quite smaller than all hash table bucket rows) - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].needCheckBuildRowPos, e.probeWorkers[workerID].needCheckProbeRowPos) - buildSideRows := e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetNullBucketRows(hCtx, probeSideRow, probeKeyNullBits, w.buildSideRows, w.needCheckBuildRowPos, w.needCheckProbeRowPos) + buildSideRows := w.buildSideRows if err != nil { joinResult.err = err return false, joinResult } if len(buildSideRows) != 0 { - iter1 := e.probeWorkers[workerID].rowIters + iter1 := w.rowIters iter1.Reset(buildSideRows) for iter1.Begin(); iter1.Current() != iter1.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter1, joinResult.chk) if err != nil { joinResult.err = err return false, joinResult @@ -819,8 +820,8 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -828,8 +829,8 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey } } // Step2: match all hash table bucket build rows. - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetAllMatchedRows(hCtx, probeSideRow, probeKeyNullBits, e.probeWorkers[workerID].buildSideRows, e.probeWorkers[workerID].needCheckBuildRowPos, e.probeWorkers[workerID].needCheckProbeRowPos) - buildSideRows = e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetAllMatchedRows(hCtx, probeSideRow, probeKeyNullBits, w.buildSideRows, w.needCheckBuildRowPos, w.needCheckProbeRowPos) + buildSideRows = w.buildSideRows if err != nil { joinResult.err = err return false, joinResult @@ -837,13 +838,13 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey if len(buildSideRows) == 0 { // when reach here, it means we couldn't return it quickly in null bucket, and same-bucket is empty, // which means NOT IN (empty set) or NOT IN (no valid rows) accept the rhs row. - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } - iter2 := e.probeWorkers[workerID].rowIters + iter2 := w.rowIters iter2.Reset(buildSideRows) for iter2.Begin(); iter2.Current() != iter2.End(); { - matched, _, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk) + matched, _, err := w.joiner.tryToMatchInners(probeSideRow, iter2, joinResult.chk) if err != nil { joinResult.err = err return false, joinResult @@ -854,8 +855,8 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey return true, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -864,7 +865,7 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey // step3: if we couldn't return it quickly in null bucket and all hash bucket, here means only one cases: // case1: NOT IN (empty set): // empty set comes from no rows from all bucket can pass other condition. we should accept the rhs row. - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } @@ -887,38 +888,37 @@ func (e *HashJoinExec) joinNAASJMatchProbeSideRow2Chunk(workerID uint, probeKey // // For NA-AntiLeftOuterSemiJoin, we couldn't match null-bucket first, because once y set has a same key x and null // key, we should return the result as left side row appended with a scalar value 0 which is from same key matching failure. -func (e *HashJoinExec) joinNAAJMatchProbeSideRow2Chunk(workerID uint, probeKey uint64, probeKeyNullBits *bitmap.ConcurrentBitmap, probeSideRow chunk.Row, hCtx *hashContext, - rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { - NAAntiSemiJoin := e.joinType == plannercore.AntiSemiJoin && len(e.buildNAKeys) > 0 - NAAntiLeftOuterSemiJoin := e.joinType == plannercore.AntiLeftOuterSemiJoin && len(e.buildNAKeys) > 0 +func (w *probeWorker) joinNAAJMatchProbeSideRow2Chunk(probeKey uint64, probeKeyNullBits *bitmap.ConcurrentBitmap, probeSideRow chunk.Row, hCtx *hashContext, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { + NAAntiSemiJoin := w.hashJoinCtx.joinType == plannercore.AntiSemiJoin && w.hashJoinCtx.isNullAware + NAAntiLeftOuterSemiJoin := w.hashJoinCtx.joinType == plannercore.AntiLeftOuterSemiJoin && w.hashJoinCtx.isNullAware if NAAntiSemiJoin { - return e.joinNAASJMatchProbeSideRow2Chunk(workerID, probeKey, probeKeyNullBits, probeSideRow, hCtx, rowContainer, joinResult) + return w.joinNAASJMatchProbeSideRow2Chunk(probeKey, probeKeyNullBits, probeSideRow, hCtx, joinResult) } if NAAntiLeftOuterSemiJoin { - return e.joinNAALOSJMatchProbeSideRow2Chunk(workerID, probeKey, probeKeyNullBits, probeSideRow, hCtx, rowContainer, joinResult) + return w.joinNAALOSJMatchProbeSideRow2Chunk(probeKey, probeKeyNullBits, probeSideRow, hCtx, joinResult) } // shouldn't be here, not a valid NAAJ. return false, joinResult } -func (e *HashJoinExec) joinMatchedProbeSideRow2Chunk(workerID uint, probeKey uint64, probeSideRow chunk.Row, hCtx *hashContext, - rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { +func (w *probeWorker) joinMatchedProbeSideRow2Chunk(probeKey uint64, probeSideRow chunk.Row, hCtx *hashContext, + joinResult *hashjoinWorkerResult) (bool, *hashjoinWorkerResult) { var err error - e.probeWorkers[workerID].buildSideRows, err = rowContainer.GetMatchedRows(probeKey, probeSideRow, hCtx, e.probeWorkers[workerID].buildSideRows) - buildSideRows := e.probeWorkers[workerID].buildSideRows + w.buildSideRows, err = w.rowContainerForProbe.GetMatchedRows(probeKey, probeSideRow, hCtx, w.buildSideRows) + buildSideRows := w.buildSideRows if err != nil { joinResult.err = err return false, joinResult } if len(buildSideRows) == 0 { - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(false, probeSideRow, joinResult.chk) return true, joinResult } - iter := e.probeWorkers[workerID].rowIters + iter := w.rowIters iter.Reset(buildSideRows) hasMatch, hasNull, ok := false, false, false for iter.Begin(); iter.Current() != iter.End(); { - matched, isNull, err := e.probeWorkers[workerID].joiner.tryToMatchInners(probeSideRow, iter, joinResult.chk) + matched, isNull, err := w.joiner.tryToMatchInners(probeSideRow, iter, joinResult.chk) if err != nil { joinResult.err = err return false, joinResult @@ -927,36 +927,36 @@ func (e *HashJoinExec) joinMatchedProbeSideRow2Chunk(workerID uint, probeKey uin hasNull = hasNull || isNull if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } } } if !hasMatch { - e.probeWorkers[workerID].joiner.onMissMatch(hasNull, probeSideRow, joinResult.chk) + w.joiner.onMissMatch(hasNull, probeSideRow, joinResult.chk) } return true, joinResult } -func (e *HashJoinExec) getNewJoinResult(workerID uint) (bool, *hashjoinWorkerResult) { +func (w *probeWorker) getNewJoinResult() (bool, *hashjoinWorkerResult) { joinResult := &hashjoinWorkerResult{ - src: e.joinChkResourceCh[workerID], + src: w.joinChkResourceCh, } ok := true select { - case <-e.closeCh: + case <-w.hashJoinCtx.closeCh: ok = false - case joinResult.chk, ok = <-e.joinChkResourceCh[workerID]: + case joinResult.chk, ok = <-w.joinChkResourceCh: } return ok, joinResult } -func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx *hashContext, rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult, +func (w *probeWorker) join2Chunk(probeSideChk *chunk.Chunk, hCtx *hashContext, joinResult *hashjoinWorkerResult, selected []bool) (ok bool, _ *hashjoinWorkerResult) { var err error - selected, err = expression.VectorizedFilter(e.ctx, e.outerFilter, chunk.NewIterator4Chunk(probeSideChk), selected) + selected, err = expression.VectorizedFilter(w.hashJoinCtx.sessCtx, w.hashJoinCtx.outerFilter, chunk.NewIterator4Chunk(probeSideChk), selected) if err != nil { joinResult.err = err return false, joinResult @@ -967,8 +967,8 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx // By now, path 1 and 2 won't be conducted at the same time. // 1: write the row data of join key to hashVals. (normal EQ key should ignore the null values.) null-EQ for Except statement is an exception. for keyIdx, i := range hCtx.keyColIdx { - ignoreNull := len(e.isNullEQ) > keyIdx && e.isNullEQ[keyIdx] - err = codec.HashChunkSelected(rowContainer.sc, hCtx.hashVals, probeSideChk, hCtx.allTypes[keyIdx], i, hCtx.buf, hCtx.hasNull, selected, ignoreNull) + ignoreNull := len(w.hashJoinCtx.isNullEQ) > keyIdx && w.hashJoinCtx.isNullEQ[keyIdx] + err = codec.HashChunkSelected(w.rowContainerForProbe.sc, hCtx.hashVals, probeSideChk, hCtx.allTypes[keyIdx], i, hCtx.buf, hCtx.hasNull, selected, ignoreNull) if err != nil { joinResult.err = err return false, joinResult @@ -978,7 +978,7 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx isNAAJ := len(hCtx.naKeyColIdx) > 0 for keyIdx, i := range hCtx.naKeyColIdx { // NAAJ won't ignore any null values, but collect them up to probe. - err = codec.HashChunkSelected(rowContainer.sc, hCtx.hashVals, probeSideChk, hCtx.allTypes[keyIdx], i, hCtx.buf, hCtx.hasNull, selected, false) + err = codec.HashChunkSelected(w.rowContainerForProbe.sc, hCtx.hashVals, probeSideChk, hCtx.allTypes[keyIdx], i, hCtx.buf, hCtx.hasNull, selected, false) if err != nil { joinResult.err = err return false, joinResult @@ -996,7 +996,7 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx } for i := range selected { - killed := atomic.LoadUint32(&e.ctx.GetSessionVars().Killed) == 1 + killed := atomic.LoadUint32(&w.hashJoinCtx.sessCtx.GetSessionVars().Killed) == 1 failpoint.Inject("killedInJoin2Chunk", func(val failpoint.Value) { if val.(bool) { killed = true @@ -1009,13 +1009,13 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx if isNAAJ { if !selected[i] { // since this is the case of using inner to build, so for an outer row unselected, we should fill the result when it's outer join. - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideChk.GetRow(i), joinResult.chk) + w.joiner.onMissMatch(false, probeSideChk.GetRow(i), joinResult.chk) } if hCtx.naHasNull[i] { // here means the probe join connecting column has null value in it and this is special for matching all the hash buckets // for it. (probeKey is not necessary here) probeRow := probeSideChk.GetRow(i) - ok, joinResult = e.joinNAAJMatchProbeSideRow2Chunk(workerID, 0, hCtx.naColNullBitMap[i].Clone(), probeRow, hCtx, rowContainer, joinResult) + ok, joinResult = w.joinNAAJMatchProbeSideRow2Chunk(0, hCtx.naColNullBitMap[i].Clone(), probeRow, hCtx, joinResult) if !ok { return false, joinResult } @@ -1023,7 +1023,7 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx // here means the probe join connecting column without null values, where we should match same key bucket and null bucket for it at its order. // step1: process same key matched probe side rows probeKey, probeRow := hCtx.hashVals[i].Sum64(), probeSideChk.GetRow(i) - ok, joinResult = e.joinNAAJMatchProbeSideRow2Chunk(workerID, probeKey, nil, probeRow, hCtx, rowContainer, joinResult) + ok, joinResult = w.joinNAAJMatchProbeSideRow2Chunk(probeKey, nil, probeRow, hCtx, joinResult) if !ok { return false, joinResult } @@ -1031,18 +1031,18 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx } else { // since this is the case of using inner to build, so for an outer row unselected, we should fill the result when it's outer join. if !selected[i] || hCtx.hasNull[i] { // process unmatched probe side rows - e.probeWorkers[workerID].joiner.onMissMatch(false, probeSideChk.GetRow(i), joinResult.chk) + w.joiner.onMissMatch(false, probeSideChk.GetRow(i), joinResult.chk) } else { // process matched probe side rows probeKey, probeRow := hCtx.hashVals[i].Sum64(), probeSideChk.GetRow(i) - ok, joinResult = e.joinMatchedProbeSideRow2Chunk(workerID, probeKey, probeRow, hCtx, rowContainer, joinResult) + ok, joinResult = w.joinMatchedProbeSideRow2Chunk(probeKey, probeRow, hCtx, joinResult) if !ok { return false, joinResult } } } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -1052,17 +1052,17 @@ func (e *HashJoinExec) join2Chunk(workerID uint, probeSideChk *chunk.Chunk, hCtx } // join2ChunkForOuterHashJoin joins chunks when using the outer to build a hash table (refer to outer hash join) -func (e *HashJoinExec) join2ChunkForOuterHashJoin(workerID uint, probeSideChk *chunk.Chunk, hCtx *hashContext, rowContainer *hashRowContainer, joinResult *hashjoinWorkerResult) (ok bool, _ *hashjoinWorkerResult) { +func (w *probeWorker) join2ChunkForOuterHashJoin(probeSideChk *chunk.Chunk, hCtx *hashContext, joinResult *hashjoinWorkerResult) (ok bool, _ *hashjoinWorkerResult) { hCtx.initHash(probeSideChk.NumRows()) for keyIdx, i := range hCtx.keyColIdx { - err := codec.HashChunkColumns(rowContainer.sc, hCtx.hashVals, probeSideChk, hCtx.allTypes[keyIdx], i, hCtx.buf, hCtx.hasNull) + err := codec.HashChunkColumns(w.rowContainerForProbe.sc, hCtx.hashVals, probeSideChk, hCtx.allTypes[keyIdx], i, hCtx.buf, hCtx.hasNull) if err != nil { joinResult.err = err return false, joinResult } } for i := 0; i < probeSideChk.NumRows(); i++ { - killed := atomic.LoadUint32(&e.ctx.GetSessionVars().Killed) == 1 + killed := atomic.LoadUint32(&w.hashJoinCtx.sessCtx.GetSessionVars().Killed) == 1 failpoint.Inject("killedInJoin2ChunkForOuterHashJoin", func(val failpoint.Value) { if val.(bool) { killed = true @@ -1073,13 +1073,13 @@ func (e *HashJoinExec) join2ChunkForOuterHashJoin(workerID uint, probeSideChk *c return false, joinResult } probeKey, probeRow := hCtx.hashVals[i].Sum64(), probeSideChk.GetRow(i) - ok, joinResult = e.joinMatchedProbeSideRow2ChunkForOuterHashJoin(workerID, probeKey, probeRow, hCtx, rowContainer, joinResult) + ok, joinResult = w.joinMatchedProbeSideRow2ChunkForOuterHashJoin(probeKey, probeRow, hCtx, joinResult) if !ok { return false, joinResult } if joinResult.chk.IsFull() { - e.joinResultCh <- joinResult - ok, joinResult = e.getNewJoinResult(workerID) + w.hashJoinCtx.joinResultCh <- joinResult + ok, joinResult = w.getNewJoinResult() if !ok { return false, joinResult } @@ -1095,20 +1095,12 @@ func (e *HashJoinExec) join2ChunkForOuterHashJoin(workerID uint, probeSideChk *c func (e *HashJoinExec) Next(ctx context.Context, req *chunk.Chunk) (err error) { if !e.prepared { e.buildFinished = make(chan error, 1) - buildKeyColIdx := make([]int, len(e.buildKeys)) - for i := range e.buildKeys { - buildKeyColIdx[i] = e.buildKeys[i].Index - } - buildNAKeyColIdx := make([]int, len(e.buildNAKeys)) - for i := range e.buildNAKeys { - buildNAKeyColIdx[i] = e.buildNAKeys[i].Index - } hCtx := &hashContext{ allTypes: e.buildTypes, - keyColIdx: buildKeyColIdx, - naKeyColIdx: buildNAKeyColIdx, + keyColIdx: e.buildWorker.buildKeyColIdx, + naKeyColIdx: e.buildWorker.buildNAKeyColIdx, } - e.rowContainer = newHashRowContainer(e.ctx, int(e.buildSideEstCount), hCtx, retTypes(e.buildSideExec)) + e.rowContainer = newHashRowContainer(e.ctx, hCtx, retTypes(e.buildWorker.buildSideExec)) // we shallow copies rowContainer for each probe worker to avoid lock contention for i := uint(0); i < e.concurrency; i++ { if i == 0 { @@ -1120,7 +1112,7 @@ func (e *HashJoinExec) Next(ctx context.Context, req *chunk.Chunk) (err error) { for i := uint(0); i < e.concurrency; i++ { e.probeWorkers[i].rowIters = chunk.NewIterator4Slice([]chunk.Row{}).(*chunk.Iterator4Slice) } - e.worker.RunWithRecover(func() { + e.workerWg.RunWithRecover(func() { defer trace.StartRegion(ctx, "HashJoinHashTableBuilder").End() e.fetchAndBuildHashTable(ctx) }, e.handleFetchAndBuildHashTablePanic) @@ -1163,10 +1155,10 @@ func (e *HashJoinExec) fetchAndBuildHashTable(ctx context.Context) { buildSideResultCh := make(chan *chunk.Chunk, 1) doneCh := make(chan struct{}) fetchBuildSideRowsOk := make(chan error, 1) - e.worker.RunWithRecover( + e.workerWg.RunWithRecover( func() { defer trace.StartRegion(ctx, "HashJoinBuildSideFetcher").End() - e.fetchBuildSideRows(ctx, buildSideResultCh, fetchBuildSideRowsOk, doneCh) + e.buildWorker.fetchBuildSideRows(ctx, buildSideResultCh, fetchBuildSideRowsOk, doneCh) }, func(r interface{}) { if r != nil { @@ -1177,7 +1169,7 @@ func (e *HashJoinExec) fetchAndBuildHashTable(ctx context.Context) { ) // TODO: Parallel build hash table. Currently not support because `unsafeHashTable` is not thread-safe. - err := e.buildHashTableForList(buildSideResultCh) + err := e.buildWorker.buildHashTableForList(buildSideResultCh) if err != nil { e.buildFinished <- errors.Trace(err) close(doneCh) @@ -1195,41 +1187,42 @@ func (e *HashJoinExec) fetchAndBuildHashTable(ctx context.Context) { } // buildHashTableForList builds hash table from `list`. -func (e *HashJoinExec) buildHashTableForList(buildSideResultCh <-chan *chunk.Chunk) error { +func (w *buildWorker) buildHashTableForList(buildSideResultCh <-chan *chunk.Chunk) error { var err error var selected []bool - e.rowContainer.GetMemTracker().AttachTo(e.memTracker) - e.rowContainer.GetMemTracker().SetLabel(memory.LabelForBuildSideResult) - e.rowContainer.GetDiskTracker().AttachTo(e.diskTracker) - e.rowContainer.GetDiskTracker().SetLabel(memory.LabelForBuildSideResult) + rowContainer := w.hashJoinCtx.rowContainer + rowContainer.GetMemTracker().AttachTo(w.hashJoinCtx.memTracker) + rowContainer.GetMemTracker().SetLabel(memory.LabelForBuildSideResult) + rowContainer.GetDiskTracker().AttachTo(w.hashJoinCtx.diskTracker) + rowContainer.GetDiskTracker().SetLabel(memory.LabelForBuildSideResult) if variable.EnableTmpStorageOnOOM.Load() { - actionSpill := e.rowContainer.ActionSpill() + actionSpill := rowContainer.ActionSpill() failpoint.Inject("testRowContainerSpill", func(val failpoint.Value) { if val.(bool) { - actionSpill = e.rowContainer.rowContainer.ActionSpillForTest() + actionSpill = rowContainer.rowContainer.ActionSpillForTest() defer actionSpill.(*chunk.SpillDiskAction).WaitForTest() } }) - e.ctx.GetSessionVars().MemTracker.FallbackOldAndSetNewAction(actionSpill) + w.hashJoinCtx.sessCtx.GetSessionVars().MemTracker.FallbackOldAndSetNewAction(actionSpill) } for chk := range buildSideResultCh { - if e.finished.Load() { + if w.hashJoinCtx.finished.Load() { return nil } - if !e.useOuterToBuild { - err = e.rowContainer.PutChunk(chk, e.isNullEQ) + if !w.hashJoinCtx.useOuterToBuild { + err = rowContainer.PutChunk(chk, w.hashJoinCtx.isNullEQ) } else { var bitMap = bitmap.NewConcurrentBitmap(chk.NumRows()) - e.outerMatchedStatus = append(e.outerMatchedStatus, bitMap) - e.memTracker.Consume(bitMap.BytesConsumed()) - if len(e.outerFilter) == 0 { - err = e.rowContainer.PutChunk(chk, e.isNullEQ) + w.hashJoinCtx.outerMatchedStatus = append(w.hashJoinCtx.outerMatchedStatus, bitMap) + w.hashJoinCtx.memTracker.Consume(bitMap.BytesConsumed()) + if len(w.hashJoinCtx.outerFilter) == 0 { + err = w.hashJoinCtx.rowContainer.PutChunk(chk, w.hashJoinCtx.isNullEQ) } else { - selected, err = expression.VectorizedFilter(e.ctx, e.outerFilter, chunk.NewIterator4Chunk(chk), selected) + selected, err = expression.VectorizedFilter(w.hashJoinCtx.sessCtx, w.hashJoinCtx.outerFilter, chunk.NewIterator4Chunk(chk), selected) if err != nil { return err } - err = e.rowContainer.PutChunkSelected(chk, selected, e.isNullEQ) + err = rowContainer.PutChunkSelected(chk, selected, w.hashJoinCtx.isNullEQ) } } failpoint.Inject("ConsumeRandomPanic", nil) @@ -1283,7 +1276,6 @@ func (e *NestedLoopApplyExec) Close() error { e.memTracker = nil if e.runtimeStats != nil { runtimeStats := newJoinRuntimeStats() - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, runtimeStats) if e.canUseCache { var hitRatio float64 if e.cacheAccessCounter > 0 { @@ -1294,6 +1286,7 @@ func (e *NestedLoopApplyExec) Close() error { runtimeStats.setCacheInfo(false, 0) } runtimeStats.SetConcurrencyInfo(execdetails.NewConcurrencyInfo("Concurrency", 0)) + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, runtimeStats) } return e.outerExec.Close() } @@ -1551,6 +1544,17 @@ func (e *joinRuntimeStats) Tp() int { return execdetails.TpJoinRuntimeStats } +func (e *joinRuntimeStats) Clone() execdetails.RuntimeStats { + newJRS := &joinRuntimeStats{ + RuntimeStatsWithConcurrencyInfo: e.RuntimeStatsWithConcurrencyInfo, + applyCache: e.applyCache, + cache: e.cache, + hasHashStat: e.hasHashStat, + hashStat: e.hashStat, + } + return newJRS +} + type hashJoinRuntimeStats struct { fetchAndBuildHashTable time.Duration hashStat hashStatistic diff --git a/executor/join_test.go b/executor/join_test.go index be006d7dc0063..a5d5f6efc9fb5 100644 --- a/executor/join_test.go +++ b/executor/join_test.go @@ -1479,7 +1479,7 @@ func TestIndexNestedLoopHashJoin(t *testing.T) { " └─TableRowIDScan 27.00 cop[tikv] table:l2 keep order:false")) tk.MustQuery("select * from t l1 where exists ( select * from t l2 where l2.l_orderkey = l1.l_orderkey and l2.l_suppkey <> l1.l_suppkey )order by `l_orderkey`,`l_linenumber`;").Check(testkit.Rows("0 0 0 0", "0 1 0 1", "0 2 0 0", "1 0 1 0", "1 1 1 1", "1 2 1 0", "2 0 0 0", "2 1 0 1", "2 2 0 0")) tk.MustQuery("desc format = 'brief' select count(*) from t l1 where exists ( select * from t l2 where l2.l_orderkey = l1.l_orderkey and l2.l_suppkey <> l1.l_suppkey );").Check(testkit.Rows( - "HashAgg 1.00 root funcs:count(1)->Column#11", + "StreamAgg 1.00 root funcs:count(1)->Column#11", "└─IndexHashJoin 7.20 root semi join, inner:IndexLookUp, outer key:test.t.l_orderkey, inner key:test.t.l_orderkey, equal cond:eq(test.t.l_orderkey, test.t.l_orderkey), other cond:ne(test.t.l_suppkey, test.t.l_suppkey)", " ├─TableReader(Build) 9.00 root data:Selection", " │ └─Selection 9.00 cop[tikv] not(isnull(test.t.l_suppkey))", @@ -2307,16 +2307,14 @@ func TestIssue18070(t *testing.T) { tk.MustExec("insert into t1 values(1),(2)") tk.MustExec("insert into t2 values(1),(1),(2),(2)") tk.MustExec("set @@tidb_mem_quota_query=1000") - err := tk.QueryToErr("select /*+ inl_hash_join(t1)*/ * from t1 join t2 on t1.a = t2.a;") - require.True(t, strings.Contains(err.Error(), "Out Of Memory Quota!")) + tk.MustContainErrMsg("select /*+ inl_hash_join(t1)*/ * from t1 join t2 on t1.a = t2.a;", "Out Of Memory Quota!") fpName := "github.com/pingcap/tidb/executor/mockIndexMergeJoinOOMPanic" require.NoError(t, failpoint.Enable(fpName, `panic("ERROR 1105 (HY000): Out Of Memory Quota![conn_id=1]")`)) defer func() { require.NoError(t, failpoint.Disable(fpName)) }() - err = tk.QueryToErr("select /*+ inl_merge_join(t1)*/ * from t1 join t2 on t1.a = t2.a;") - require.True(t, strings.Contains(err.Error(), "Out Of Memory Quota!")) + tk.MustContainErrMsg("select /*+ inl_merge_join(t1)*/ * from t1 join t2 on t1.a = t2.a;", "Out Of Memory Quota!") } func TestIssue18564(t *testing.T) { diff --git a/executor/load_data.go b/executor/load_data.go index e11137c3916ae..a5db464ce705e 100644 --- a/executor/load_data.go +++ b/executor/load_data.go @@ -80,6 +80,9 @@ func (e *LoadDataExec) Next(ctx context.Context, req *chunk.Chunk) error { // Close implements the Executor Close interface. func (e *LoadDataExec) Close() error { + if e.runtimeStats != nil && e.loadDataInfo != nil && e.loadDataInfo.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.loadDataInfo.stats) + } return nil } diff --git a/executor/mem_reader.go b/executor/mem_reader.go index 3790a5d862539..647d785caeafc 100644 --- a/executor/mem_reader.go +++ b/executor/mem_reader.go @@ -595,6 +595,7 @@ type memIndexMergeReader struct { retFieldTypes []*types.FieldType indexMergeReader *IndexMergeReaderExecutor memReaders []memReader + isIntersection bool // partition mode partitionMode bool // if it is accessing a partition table @@ -651,6 +652,7 @@ func buildMemIndexMergeReader(ctx context.Context, us *UnionScanExec, indexMerge retFieldTypes: retTypes(us), indexMergeReader: indexMergeReader, memReaders: memReaders, + isIntersection: indexMergeReader.isIntersection, partitionMode: indexMergeReader.partitionTableMode, partitionTables: indexMergeReader.prunedPartitions, @@ -676,11 +678,20 @@ func (m *memIndexMergeReader) getMemRows(ctx context.Context) ([][]types.Datum, } else { kvRanges = append(kvRanges, m.indexMergeReader.keyRanges) } + if len(kvRanges) != len(tbls) { + return nil, errors.Errorf("length of tbls(size: %d) should be equals to length of kvRanges(size: %d)", len(tbls), len(kvRanges)) + } tblKVRanges := make([]kv.KeyRange, 0, 16) numHandles := 0 + var handles []kv.Handle + var err error for i, tbl := range tbls { - handles, err := m.unionHandles(kvRanges[i]) + if m.isIntersection { + handles, err = m.intersectionHandles(kvRanges[i]) + } else { + handles, err = m.unionHandles(kvRanges[i]) + } if err != nil { return nil, err } @@ -716,7 +727,7 @@ func (m *memIndexMergeReader) getMemRows(ctx context.Context) ([][]types.Datum, return memTblReader.getMemRows(ctx) } -// Union all handles of different Indexes. +// Union all handles of all partial paths. func (m *memIndexMergeReader) unionHandles(kvRanges [][]kv.KeyRange) (finalHandles []kv.Handle, err error) { if len(m.memReaders) != len(kvRanges) { return nil, errors.Errorf("len(kvRanges) should be equal to len(memReaders)") @@ -747,6 +758,44 @@ func (m *memIndexMergeReader) unionHandles(kvRanges [][]kv.KeyRange) (finalHandl return finalHandles, nil } +// Intersect handles of each partial paths. +func (m *memIndexMergeReader) intersectionHandles(kvRanges [][]kv.KeyRange) (finalHandles []kv.Handle, err error) { + if len(m.memReaders) != len(kvRanges) { + return nil, errors.Errorf("len(kvRanges) should be equal to len(memReaders)") + } + + hMap := kv.NewHandleMap() + var handles []kv.Handle + for i, reader := range m.memReaders { + switch r := reader.(type) { + case *memTableReader: + r.kvRanges = kvRanges[i] + case *memIndexReader: + r.kvRanges = kvRanges[i] + default: + return nil, errors.New("memReader have to be memTableReader or memIndexReader") + } + if handles, err = reader.getMemRowsHandle(); err != nil { + return nil, err + } + for _, h := range handles { + if cntPtr, ok := hMap.Get(h); !ok { + cnt := 1 + hMap.Set(h, &cnt) + } else { + *(cntPtr.(*int)) += 1 + } + } + } + hMap.Range(func(h kv.Handle, val interface{}) bool { + if *(val.(*int)) == len(m.memReaders) { + finalHandles = append(finalHandles, h) + } + return true + }) + return finalHandles, nil +} + func (m *memIndexMergeReader) getMemRowsHandle() ([]kv.Handle, error) { return nil, errors.New("getMemRowsHandle has not been implemented for memIndexMergeReader") } diff --git a/executor/parallel_apply.go b/executor/parallel_apply.go index 2c4499b14818c..a0d418cc0e441 100644 --- a/executor/parallel_apply.go +++ b/executor/parallel_apply.go @@ -176,7 +176,6 @@ func (e *ParallelNestedLoopApplyExec) Close() error { if e.runtimeStats != nil { runtimeStats := newJoinRuntimeStats() - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, runtimeStats) if e.useCache { var hitRatio float64 if e.cacheAccessCounter > 0 { @@ -187,6 +186,7 @@ func (e *ParallelNestedLoopApplyExec) Close() error { runtimeStats.setCacheInfo(false, 0) } runtimeStats.SetConcurrencyInfo(execdetails.NewConcurrencyInfo("Concurrency", e.concurrency)) + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, runtimeStats) } return err } diff --git a/executor/partition_table_test.go b/executor/partition_table_test.go index 50bb68a7b5235..15d2c2872ca9c 100644 --- a/executor/partition_table_test.go +++ b/executor/partition_table_test.go @@ -84,7 +84,7 @@ partition p2 values less than (10))`) // Table reader: one partition tk.MustQuery("select * from pt where c > 8").Check(testkit.Rows("9 9")) // Table reader: more than one partition - tk.MustQuery("select * from pt where c < 2 or c >= 9").Check(testkit.Rows("0 0", "9 9")) + tk.MustQuery("select * from pt where c < 2 or c >= 9").Sort().Check(testkit.Rows("0 0", "9 9")) // Index reader tk.MustQuery("select c from pt").Sort().Check(testkit.Rows("0", "2", "4", "6", "7", "9", "")) @@ -96,7 +96,7 @@ partition p2 values less than (10))`) tk.MustQuery("select /*+ use_index(pt, i_id) */ * from pt").Sort().Check(testkit.Rows("0 0", "2 2", "4 4", "6 6", "7 7", "9 9", " ")) tk.MustQuery("select /*+ use_index(pt, i_id) */ * from pt where id < 4 and c > 10").Check(testkit.Rows()) tk.MustQuery("select /*+ use_index(pt, i_id) */ * from pt where id < 10 and c > 8").Check(testkit.Rows("9 9")) - tk.MustQuery("select /*+ use_index(pt, i_id) */ * from pt where id < 10 and c < 2 or c >= 9").Check(testkit.Rows("0 0", "9 9")) + tk.MustQuery("select /*+ use_index(pt, i_id) */ * from pt where id < 10 and c < 2 or c >= 9").Sort().Check(testkit.Rows("0 0", "9 9")) // Index Merge tk.MustExec("set @@tidb_enable_index_merge = 1") @@ -377,14 +377,92 @@ func TestOrderByandLimit(t *testing.T) { // regular table tk.MustExec("create table tregular(a int, b int, index idx_a(a))") + // range partition table with int pk + tk.MustExec(`create table trange_intpk(a int primary key, b int) partition by range(a) ( + partition p0 values less than(300), + partition p1 values less than (500), + partition p2 values less than(1100));`) + + // hash partition table with int pk + tk.MustExec("create table thash_intpk(a int primary key, b int) partition by hash(a) partitions 4;") + + // regular table with int pk + tk.MustExec("create table tregular_intpk(a int primary key, b int)") + + // range partition table with clustered index + tk.MustExec(`create table trange_clustered(a int, b int, primary key(a, b) clustered) partition by range(a) ( + partition p0 values less than(300), + partition p1 values less than (500), + partition p2 values less than(1100));`) + + // hash partition table with clustered index + tk.MustExec("create table thash_clustered(a int, b int, primary key(a, b) clustered) partition by hash(a) partitions 4;") + + // regular table with clustered index + tk.MustExec("create table tregular_clustered(a int, b int, primary key(a, b) clustered)") + // generate some random data to be inserted vals := make([]string, 0, 2000) for i := 0; i < 2000; i++ { vals = append(vals, fmt.Sprintf("(%v, %v)", rand.Intn(1100), rand.Intn(2000))) } + + dedupValsA := make([]string, 0, 2000) + dedupMapA := make(map[int]struct{}, 2000) + for i := 0; i < 2000; i++ { + valA := rand.Intn(1100) + if _, ok := dedupMapA[valA]; ok { + continue + } + dedupValsA = append(dedupValsA, fmt.Sprintf("(%v, %v)", valA, rand.Intn(2000))) + dedupMapA[valA] = struct{}{} + } + + dedupValsAB := make([]string, 0, 2000) + dedupMapAB := make(map[string]struct{}, 2000) + for i := 0; i < 2000; i++ { + val := fmt.Sprintf("(%v, %v)", rand.Intn(1100), rand.Intn(2000)) + if _, ok := dedupMapAB[val]; ok { + continue + } + dedupValsAB = append(dedupValsAB, val) + dedupMapAB[val] = struct{}{} + } + tk.MustExec("insert into trange values " + strings.Join(vals, ",")) tk.MustExec("insert into thash values " + strings.Join(vals, ",")) tk.MustExec("insert into tregular values " + strings.Join(vals, ",")) + tk.MustExec("insert into trange_intpk values " + strings.Join(dedupValsA, ",")) + tk.MustExec("insert into thash_intpk values " + strings.Join(dedupValsA, ",")) + tk.MustExec("insert into tregular_intpk values " + strings.Join(dedupValsA, ",")) + tk.MustExec("insert into trange_clustered values " + strings.Join(dedupValsAB, ",")) + tk.MustExec("insert into thash_clustered values " + strings.Join(dedupValsAB, ",")) + tk.MustExec("insert into tregular_clustered values " + strings.Join(dedupValsAB, ",")) + + tk.MustExec("analyze table trange") + tk.MustExec("analyze table trange_intpk") + tk.MustExec("analyze table trange_clustered") + tk.MustExec("analyze table thash") + tk.MustExec("analyze table thash_intpk") + tk.MustExec("analyze table thash_clustered") + tk.MustExec("analyze table tregular") + tk.MustExec("analyze table tregular_intpk") + tk.MustExec("analyze table tregular_clustered") + + // Create virtual tiflash replica info. + dom := domain.GetDomain(tk.Session()) + is := dom.InfoSchema() + db, exists := is.SchemaByName(model.NewCIStr("test_orderby_limit")) + require.True(t, exists) + for _, tblInfo := range db.Tables { + if strings.HasPrefix(tblInfo.Name.L, "tr") || strings.HasPrefix(tblInfo.Name.L, "thash") { + tblInfo.TiFlashReplica = &model.TiFlashReplicaInfo{ + Count: 1, + Available: true, + } + } + } + tk.MustExec("set @@session.tidb_isolation_read_engines=\"tikv\"") // test indexLookUp for i := 0; i < 100; i++ { @@ -398,6 +476,29 @@ func TestOrderByandLimit(t *testing.T) { tk.MustQuery(queryPartition).Sort().Check(tk.MustQuery(queryRegular).Sort().Rows()) } + // test indexLookUp with order property pushed down. + for i := 0; i < 100; i++ { + // explain select * from t where a > {y} use index(idx_a) order by a limit {x}; // check if IndexLookUp is used + // select * from t where a > {y} use index(idx_a) order by a limit {x}; // it can return the correct result + x := rand.Intn(1099) + y := rand.Intn(2000) + 1 + // Since we only use order by a not order by a, b, the result is not stable when we read both a and b. + // We cut the max element so that the result can be stable. + maxEle := tk.MustQuery(fmt.Sprintf("select ifnull(max(a), 1100) from (select * from tregular use index(idx_a) where a > %v order by a limit %v) t", x, y)).Rows()[0][0] + queryRangePartitionWithLimitHint := fmt.Sprintf("select /*+ LIMIT_TO_COP() */ * from trange use index(idx_a) where a > %v and a < greatest(%v+1, %v) order by a limit %v", x, x+1, maxEle, y) + queryHashPartitionWithLimitHint := fmt.Sprintf("select /*+ LIMIT_TO_COP() */ * from thash use index(idx_a) where a > %v and a < greatest(%v+1, %v) order by a limit %v", x, x+1, maxEle, y) + queryRegular := fmt.Sprintf("select * from tregular use index(idx_a) where a > %v and a < greatest(%v+1, %v) order by a limit %v;", x, x+1, maxEle, y) + require.True(t, tk.HasPlan(queryRangePartitionWithLimitHint, "Limit")) + require.True(t, tk.HasPlan(queryRangePartitionWithLimitHint, "IndexLookUp")) + require.True(t, tk.HasPlan(queryHashPartitionWithLimitHint, "Limit")) + require.True(t, tk.HasPlan(queryHashPartitionWithLimitHint, "IndexLookUp")) + require.True(t, tk.HasPlan(queryRangePartitionWithLimitHint, "TopN")) // but not fully pushed + require.True(t, tk.HasPlan(queryHashPartitionWithLimitHint, "TopN")) + regularResult := tk.MustQuery(queryRegular).Sort().Rows() + tk.MustQuery(queryRangePartitionWithLimitHint).Sort().Check(regularResult) + tk.MustQuery(queryHashPartitionWithLimitHint).Sort().Check(regularResult) + } + // test tableReader for i := 0; i < 100; i++ { // explain select * from t where a > {y} ignore index(idx_a) order by a limit {x}; // check if IndexLookUp is used @@ -410,6 +511,90 @@ func TestOrderByandLimit(t *testing.T) { tk.MustQuery(queryPartition).Sort().Check(tk.MustQuery(queryRegular).Sort().Rows()) } + // test tableReader with order property pushed down. + for i := 0; i < 100; i++ { + // explain select * from t where a > {y} ignore index(idx_a) order by a limit {x}; // check if IndexLookUp is used + // select * from t where a > {y} ignore index(idx_a) order by a limit {x}; // it can return the correct result + x := rand.Intn(1099) + y := rand.Intn(2000) + 1 + queryRangePartition := fmt.Sprintf("select /*+ LIMIT_TO_COP() */ * from trange ignore index(idx_a) where a > %v order by a, b limit %v;", x, y) + queryHashPartition := fmt.Sprintf("select /*+ LIMIT_TO_COP() */ * from thash ignore index(idx_a) where a > %v order by a, b limit %v;", x, y) + queryRegular := fmt.Sprintf("select * from tregular ignore index(idx_a) where a > %v order by a, b limit %v;", x, y) + require.True(t, tk.HasPlan(queryRangePartition, "TableReader")) // check if tableReader is used + require.True(t, tk.HasPlan(queryHashPartition, "TableReader")) + require.False(t, tk.HasPlan(queryRangePartition, "Limit")) // check if order property is not pushed + require.False(t, tk.HasPlan(queryHashPartition, "Limit")) + regularResult := tk.MustQuery(queryRegular).Sort().Rows() + tk.MustQuery(queryRangePartition).Sort().Check(regularResult) + tk.MustQuery(queryHashPartition).Sort().Check(regularResult) + + // test int pk + // To be simplified, we only read column a. + queryRangePartition = fmt.Sprintf("select /*+ LIMIT_TO_COP() */ a from trange_intpk use index(primary) where a > %v order by a limit %v", x, y) + queryHashPartition = fmt.Sprintf("select /*+ LIMIT_TO_COP() */ a from thash_intpk use index(primary) where a > %v order by a limit %v", x, y) + queryRegular = fmt.Sprintf("select a from tregular_intpk where a > %v order by a limit %v", x, y) + require.True(t, tk.HasPlan(queryRangePartition, "TableReader")) + require.True(t, tk.HasPlan(queryHashPartition, "TableReader")) + require.True(t, tk.HasPlan(queryRangePartition, "Limit")) // check if order property is not pushed + require.True(t, tk.HasPlan(queryHashPartition, "Limit")) + regularResult = tk.MustQuery(queryRegular).Rows() + tk.MustQuery(queryRangePartition).Check(regularResult) + tk.MustQuery(queryHashPartition).Check(regularResult) + + // test clustered index + queryRangePartition = fmt.Sprintf("select /*+ LIMIT_TO_COP() */ * from trange_clustered use index(primary) where a > %v order by a, b limit %v;", x, y) + queryHashPartition = fmt.Sprintf("select /*+ LIMIT_TO_COP() */ * from thash_clustered use index(primary) where a > %v order by a, b limit %v;", x, y) + queryRegular = fmt.Sprintf("select * from tregular_clustered where a > %v order by a, b limit %v;", x, y) + require.True(t, tk.HasPlan(queryRangePartition, "TableReader")) // check if tableReader is used + require.True(t, tk.HasPlan(queryHashPartition, "TableReader")) + require.True(t, tk.HasPlan(queryRangePartition, "Limit")) // check if order property is pushed + require.True(t, tk.HasPlan(queryHashPartition, "Limit")) + require.True(t, tk.HasPlan(queryRangePartition, "TopN")) // but not fully pushed + require.True(t, tk.HasPlan(queryHashPartition, "TopN")) + regularResult = tk.MustQuery(queryRegular).Rows() + tk.MustQuery(queryRangePartition).Check(regularResult) + tk.MustQuery(queryHashPartition).Check(regularResult) + + tk.MustExec(" set @@tidb_allow_mpp=1;") + tk.MustExec("set @@session.tidb_isolation_read_engines=\"tiflash,tikv\"") + queryPartitionWithTiFlash := fmt.Sprintf("select /*+ read_from_storage(tiflash[trange_intpk]) */ * from trange_intpk where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + // but order is not pushed + require.False(t, tk.HasPlan(queryPartitionWithTiFlash, "Limit"), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[trange_intpk]) */ /*+ LIMIT_TO_COP() */ * from trange_intpk where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + // but order is not pushed + require.False(t, tk.HasPlan(queryPartitionWithTiFlash, "Limit"), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[trange_clustered]) */ * from trange_clustered where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[trange_clustered]) */ /*+ LIMIT_TO_COP() */ * from trange_clustered where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash)) + // but order is not pushed + require.False(t, tk.HasPlan(queryPartitionWithTiFlash, "Limit"), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[thash_intpk]) */ * from thash_intpk where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[thash_intpk]) */ /*+ LIMIT_TO_COP() */ * from thash_intpk where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash)) + // but order is not pushed + require.False(t, tk.HasPlan(queryPartitionWithTiFlash, "Limit"), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[thash_clustered]) */ * from thash_clustered where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + queryPartitionWithTiFlash = fmt.Sprintf("select /*+ read_from_storage(tiflash[thash_clustered]) */ /*+ LIMIT_TO_COP() */ * from thash_clustered where a > %v order by a limit %v", x, y) + // check if tiflash is used + require.True(t, tk.HasTiFlashPlan(queryPartitionWithTiFlash)) + // but order is not pushed + require.False(t, tk.HasPlan(queryPartitionWithTiFlash, "Limit"), fmt.Sprintf("%v", tk.MustQuery("explain "+queryPartitionWithTiFlash).Rows())) + tk.MustExec(" set @@tidb_allow_mpp=0;") + tk.MustExec("set @@session.tidb_isolation_read_engines=\"tikv\"") + } + // test indexReader for i := 0; i < 100; i++ { // explain select a from t where a > {y} use index(idx_a) order by a limit {x}; // check if IndexLookUp is used @@ -422,6 +607,24 @@ func TestOrderByandLimit(t *testing.T) { tk.MustQuery(queryPartition).Sort().Check(tk.MustQuery(queryRegular).Sort().Rows()) } + // test indexReader with order property pushed down. + for i := 0; i < 100; i++ { + // explain select a from t where a > {y} use index(idx_a) order by a limit {x}; // check if IndexLookUp is used + // select a from t where a > {y} use index(idx_a) order by a limit {x}; // it can return the correct result + x := rand.Intn(1099) + y := rand.Intn(2000) + 1 + queryRangePartition := fmt.Sprintf("select /*+ LIMIT_TO_COP() */ a from trange use index(idx_a) where a > %v order by a limit %v;", x, y) + queryHashPartition := fmt.Sprintf("select /*+ LIMIT_TO_COP() */ a from trange use index(idx_a) where a > %v order by a limit %v;", x, y) + queryRegular := fmt.Sprintf("select a from tregular use index(idx_a) where a > %v order by a limit %v;", x, y) + require.True(t, tk.HasPlan(queryRangePartition, "IndexReader")) // check if indexReader is used + require.True(t, tk.HasPlan(queryHashPartition, "IndexReader")) + require.True(t, tk.HasPlan(queryRangePartition, "Limit")) // check if order property is pushed + require.True(t, tk.HasPlan(queryHashPartition, "Limit")) + regularResult := tk.MustQuery(queryRegular).Sort().Rows() + tk.MustQuery(queryRangePartition).Sort().Check(regularResult) + tk.MustQuery(queryHashPartition).Sort().Check(regularResult) + } + // test indexMerge for i := 0; i < 100; i++ { // explain select /*+ use_index_merge(t) */ * from t where a > 2 or b < 5 order by a limit {x}; // check if IndexMerge is used @@ -2834,7 +3037,7 @@ partition p1 values less than (7), partition p2 values less than (10))`) tk.MustExec("alter table p add unique idx(id)") tk.MustExec("insert into p values (1,3), (3,4), (5,6), (7,9)") - tk.MustQuery("select id from p use index (idx)").Check(testkit.Rows("1", "3", "5", "7")) + tk.MustQuery("select id from p use index (idx) order by id").Check(testkit.Rows("1", "3", "5", "7")) } func TestGlobalIndexDoubleRead(t *testing.T) { @@ -3531,11 +3734,11 @@ func TestPartitionTableExplain(t *testing.T) { " └─IndexFullScan 1.00 cop[tikv] table:t, partition:p1, index:b(b) keep order:false")) tk.MustQuery(`explain format = 'brief' select * from t,t2 where t2.a = 1 and t2.b = t.b and t.a = 1`).Check(testkit.Rows( "HashJoin 1.00 root inner join, equal:[eq(testpartitiontableexplain.t.b, testpartitiontableexplain.t2.b)]", - "├─TableReader(Build) 1.00 root data:Selection", - "│ └─Selection 1.00 cop[tikv] eq(testpartitiontableexplain.t2.a, 1), not(isnull(testpartitiontableexplain.t2.b))", - "│ └─TableFullScan 3.00 cop[tikv] table:t2 keep order:false", - "└─Selection(Probe) 1.00 root not(isnull(testpartitiontableexplain.t.b))", - " └─Point_Get 1.00 root table:t, partition:p1 handle:1")) + `├─Selection(Build) 1.00 root not(isnull(testpartitiontableexplain.t.b))`, + `│ └─Point_Get 1.00 root table:t, partition:p1 handle:1`, + `└─TableReader(Probe) 1.00 root data:Selection`, + ` └─Selection 1.00 cop[tikv] eq(testpartitiontableexplain.t2.a, 1), not(isnull(testpartitiontableexplain.t2.b))`, + ` └─TableFullScan 3.00 cop[tikv] table:t2 keep order:false`)) tk.MustExec("set @@tidb_partition_prune_mode = 'dynamic'") tk.MustExec(`analyze table t`) diff --git a/executor/plan_replayer.go b/executor/plan_replayer.go index ea6ff6155bf44..490e65ef96dd2 100644 --- a/executor/plan_replayer.go +++ b/executor/plan_replayer.go @@ -27,6 +27,7 @@ import ( "github.com/pingcap/errors" "github.com/pingcap/tidb/domain" "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/parser/ast" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessionctx/variable" @@ -43,8 +44,15 @@ var _ Executor = &PlanReplayerLoadExec{} // PlanReplayerExec represents a plan replayer executor. type PlanReplayerExec struct { baseExecutor - DumpInfo *PlanReplayerDumpInfo - endFlag bool + CaptureInfo *PlanReplayerCaptureInfo + DumpInfo *PlanReplayerDumpInfo + endFlag bool +} + +// PlanReplayerCaptureInfo indicates capture info +type PlanReplayerCaptureInfo struct { + SQLDigest string + PlanDigest string } // PlanReplayerDumpInfo indicates dump info @@ -63,6 +71,9 @@ func (e *PlanReplayerExec) Next(ctx context.Context, req *chunk.Chunk) error { if e.endFlag { return nil } + if e.CaptureInfo != nil { + return e.registerCaptureTask(ctx) + } err := e.createFile() if err != nil { return err @@ -89,6 +100,27 @@ func (e *PlanReplayerExec) Next(ctx context.Context, req *chunk.Chunk) error { return nil } +func (e *PlanReplayerExec) registerCaptureTask(ctx context.Context) error { + ctx1 := kv.WithInternalSourceType(ctx, kv.InternalTxnStats) + exists, err := domain.CheckPlanReplayerTaskExists(ctx1, e.ctx, e.CaptureInfo.SQLDigest, e.CaptureInfo.PlanDigest) + if err != nil { + return err + } + if exists { + return errors.New("plan replayer capture task already exists") + } + exec := e.ctx.(sqlexec.SQLExecutor) + _, err = exec.ExecuteInternal(ctx1, fmt.Sprintf("insert into mysql.plan_replayer_task (sql_digest, plan_digest) values ('%s','%s')", + e.CaptureInfo.SQLDigest, e.CaptureInfo.PlanDigest)) + if err != nil { + logutil.BgLogger().Warn("insert mysql.plan_replayer_status record failed", + zap.Error(err)) + return err + } + e.endFlag = true + return nil +} + func (e *PlanReplayerExec) createFile() error { var err error e.DumpInfo.File, e.DumpInfo.FileName, err = domain.GeneratePlanReplayerFile() diff --git a/executor/point_get.go b/executor/point_get.go index f65c52c06cb1b..3e3cddb08d9ba 100644 --- a/executor/point_get.go +++ b/executor/point_get.go @@ -80,7 +80,6 @@ func (b *executorBuilder) buildPointGet(p *plannercore.PointGetPlan) Executor { SnapshotRuntimeStats: snapshotStats, } e.snapshot.SetOption(kv.CollectRuntimeStats, snapshotStats) - b.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } if p.IndexInfo != nil { @@ -194,6 +193,9 @@ func (e *PointGetExecutor) Open(context.Context) error { // Close implements the Executor interface. func (e *PointGetExecutor) Close() error { + if e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.runtimeStats != nil && e.snapshot != nil { e.snapshot.SetOption(kv.CollectRuntimeStats, nil) } @@ -347,8 +349,8 @@ func (e *PointGetExecutor) Next(ctx context.Context, req *chunk.Chunk) error { return err } - err = FillVirtualColumnValue(e.virtualColumnRetFieldTypes, e.virtualColumnIndex, - e.schema, e.columns, e.ctx, req) + err = table.FillVirtualColumnValue(e.virtualColumnRetFieldTypes, e.virtualColumnIndex, + e.schema.Columns, e.columns, e.ctx, req) if err != nil { return err } diff --git a/executor/projection.go b/executor/projection.go index 27ce1bafc0b8a..c6c33d02651ff 100644 --- a/executor/projection.go +++ b/executor/projection.go @@ -94,7 +94,7 @@ func (e *ProjectionExec) Open(ctx context.Context) error { return e.open(ctx) } -func (e *ProjectionExec) open(ctx context.Context) error { +func (e *ProjectionExec) open(_ context.Context) error { e.prepared = false e.parentReqRows = int64(e.maxChunkSize) @@ -364,14 +364,14 @@ func (f *projectionInputFetcher) run(ctx context.Context) { }() for { - input := readProjectionInput(f.inputCh, f.globalFinishCh) - if input == nil { + input, isNil := readProjection[*projectionInput](f.inputCh, f.globalFinishCh) + if isNil { return } targetWorker := input.targetWorker - output = readProjectionOutput(f.outputCh, f.globalFinishCh) - if output == nil { + output, isNil = readProjection[*projectionOutput](f.outputCh, f.globalFinishCh) + if isNil { f.proj.memTracker.Consume(-input.chk.MemoryUsage()) return } @@ -431,13 +431,13 @@ func (w *projectionWorker) run(ctx context.Context) { w.proj.wg.Done() }() for { - input := readProjectionInput(w.inputCh, w.globalFinishCh) - if input == nil { + input, isNil := readProjection[*projectionInput](w.inputCh, w.globalFinishCh) + if isNil { return } - output = readProjectionOutput(w.outputCh, w.globalFinishCh) - if output == nil { + output, isNil = readProjection[*projectionOutput](w.outputCh, w.globalFinishCh) + if isNil { return } @@ -462,26 +462,14 @@ func recoveryProjection(output *projectionOutput, r interface{}) { logutil.BgLogger().Error("projection executor panicked", zap.String("error", fmt.Sprintf("%v", r)), zap.Stack("stack")) } -func readProjectionInput(inputCh <-chan *projectionInput, finishCh <-chan struct{}) *projectionInput { +func readProjection[T any](ch <-chan T, finishCh <-chan struct{}) (t T, isNil bool) { select { case <-finishCh: - return nil - case input, ok := <-inputCh: - if !ok { - return nil - } - return input - } -} - -func readProjectionOutput(outputCh <-chan *projectionOutput, finishCh <-chan struct{}) *projectionOutput { - select { - case <-finishCh: - return nil - case output, ok := <-outputCh: + return t, true + case t, ok := <-ch: if !ok { - return nil + return t, true } - return output + return t, false } } diff --git a/executor/replace.go b/executor/replace.go index 221cbf87b2504..f028d5e6db32c 100644 --- a/executor/replace.go +++ b/executor/replace.go @@ -43,6 +43,9 @@ type ReplaceExec struct { // Close implements the Executor Close interface. func (e *ReplaceExec) Close() error { e.setMessage() + if e.runtimeStats != nil && e.stats != nil { + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) + } if e.SelectExec != nil { return e.SelectExec.Close() } diff --git a/executor/seqtest/main_test.go b/executor/seqtest/main_test.go index 299cc69a8a26f..067680fb23365 100644 --- a/executor/seqtest/main_test.go +++ b/executor/seqtest/main_test.go @@ -31,7 +31,7 @@ func TestMain(m *testing.M) { opts := []goleak.Option{ goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), - goleak.IgnoreTopFunction("github.com/pingcap/tidb/executor.readProjectionInput"), + goleak.IgnoreTopFunction("github.com/pingcap/tidb/executor.readProjection[...]"), goleak.IgnoreTopFunction("go.etcd.io/etcd/client/pkg/v3/logutil.(*MergeLogger).outputLoop"), goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), } diff --git a/executor/seqtest/seq_executor_test.go b/executor/seqtest/seq_executor_test.go index 7f16fd68da5e7..bf78e40e7ac3d 100644 --- a/executor/seqtest/seq_executor_test.go +++ b/executor/seqtest/seq_executor_test.go @@ -773,43 +773,45 @@ func HelperTestAdminShowNextID(t *testing.T, store kv.Storage, str string) { tk.MustExec("create table t(id int, c int)") // Start handle is 1. r := tk.MustQuery(str + " t next_row_id") - r.Check(testkit.Rows("test t _tidb_rowid 1 AUTO_INCREMENT")) + r.Check(testkit.Rows("test t _tidb_rowid 1 _TIDB_ROWID")) // Row ID is step + 1. tk.MustExec("insert into t values(1, 1)") r = tk.MustQuery(str + " t next_row_id") - r.Check(testkit.Rows("test t _tidb_rowid 11 AUTO_INCREMENT")) + r.Check(testkit.Rows("test t _tidb_rowid 11 _TIDB_ROWID")) // Row ID is original + step. for i := 0; i < int(step); i++ { tk.MustExec("insert into t values(10000, 1)") } r = tk.MustQuery(str + " t next_row_id") - r.Check(testkit.Rows("test t _tidb_rowid 21 AUTO_INCREMENT")) + r.Check(testkit.Rows("test t _tidb_rowid 21 _TIDB_ROWID")) tk.MustExec("drop table t") // test for a table with the primary key tk.MustExec("create table tt(id int primary key auto_increment, c int)") // Start handle is 1. r = tk.MustQuery(str + " tt next_row_id") - r.Check(testkit.Rows("test tt id 1 AUTO_INCREMENT")) + r.Check(testkit.Rows("test tt id 1 _TIDB_ROWID", "test tt id 1 AUTO_INCREMENT")) // After rebasing auto ID, row ID is 20 + step + 1. tk.MustExec("insert into tt values(20, 1)") r = tk.MustQuery(str + " tt next_row_id") - r.Check(testkit.Rows("test tt id 31 AUTO_INCREMENT")) + r.Check(testkit.Rows("test tt id 31 _TIDB_ROWID", "test tt id 1 AUTO_INCREMENT")) // test for renaming the table tk.MustExec("drop database if exists test1") tk.MustExec("create database test1") tk.MustExec("rename table test.tt to test1.tt") tk.MustExec("use test1") r = tk.MustQuery(str + " tt next_row_id") - r.Check(testkit.Rows("test1 tt id 31 AUTO_INCREMENT")) + r.Check(testkit.Rows("test1 tt id 31 _TIDB_ROWID", "test1 tt id 1 AUTO_INCREMENT")) tk.MustExec("insert test1.tt values ()") r = tk.MustQuery(str + " tt next_row_id") - r.Check(testkit.Rows("test1 tt id 41 AUTO_INCREMENT")) + r.Check(testkit.Rows("test1 tt id 41 _TIDB_ROWID", "test1 tt id 1 AUTO_INCREMENT")) tk.MustExec("drop table tt") tk.MustExec("drop table if exists t;") tk.MustExec("create table t (a int auto_increment primary key nonclustered, b int);") - tk.MustQuery("show table t next_row_id;").Check(testkit.Rows("test1 t _tidb_rowid 1 AUTO_INCREMENT")) + tk.MustQuery("show table t next_row_id;").Check(testkit.Rows( + "test1 t _tidb_rowid 1 _TIDB_ROWID", + "test1 t _tidb_rowid 1 AUTO_INCREMENT")) tk.MustExec("set @@allow_auto_random_explicit_insert = true") @@ -830,19 +832,19 @@ func HelperTestAdminShowNextID(t *testing.T, store kv.Storage, str string) { // Test for a sequence. tk.MustExec("create sequence seq1 start 15 cache 57") r = tk.MustQuery(str + " seq1 next_row_id") - r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 AUTO_INCREMENT", "test1 seq1 15 SEQUENCE")) + r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 _TIDB_ROWID", "test1 seq1 15 SEQUENCE")) r = tk.MustQuery("select nextval(seq1)") r.Check(testkit.Rows("15")) r = tk.MustQuery(str + " seq1 next_row_id") - r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 AUTO_INCREMENT", "test1 seq1 72 SEQUENCE")) + r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 _TIDB_ROWID", "test1 seq1 72 SEQUENCE")) r = tk.MustQuery("select nextval(seq1)") r.Check(testkit.Rows("16")) r = tk.MustQuery(str + " seq1 next_row_id") - r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 AUTO_INCREMENT", "test1 seq1 72 SEQUENCE")) + r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 _TIDB_ROWID", "test1 seq1 72 SEQUENCE")) r = tk.MustQuery("select setval(seq1, 96)") r.Check(testkit.Rows("96")) r = tk.MustQuery(str + " seq1 next_row_id") - r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 AUTO_INCREMENT", "test1 seq1 97 SEQUENCE")) + r.Check(testkit.Rows("test1 seq1 _tidb_rowid 1 _TIDB_ROWID", "test1 seq1 97 SEQUENCE")) } func TestNoHistoryWhenDisableRetry(t *testing.T) { diff --git a/executor/set_test.go b/executor/set_test.go index 697209d64836a..734fdab8750fe 100644 --- a/executor/set_test.go +++ b/executor/set_test.go @@ -853,6 +853,23 @@ func TestSetVar(t *testing.T) { tk.MustQuery("select @@global.tidb_opt_range_max_size").Check(testkit.Rows("1048576")) tk.MustExec("set session tidb_opt_range_max_size = 2097152") tk.MustQuery("select @@session.tidb_opt_range_max_size").Check(testkit.Rows("2097152")) + + // test for password validation + tk.MustQuery("SELECT @@GLOBAL.validate_password.enable").Check(testkit.Rows("0")) + tk.MustQuery("SELECT @@GLOBAL.validate_password.length").Check(testkit.Rows("8")) + tk.MustExec("SET GLOBAL validate_password.length = 3") + tk.MustQuery("SELECT @@GLOBAL.validate_password.length").Check(testkit.Rows("4")) + tk.MustExec("SET GLOBAL validate_password.mixed_case_count = 2") + tk.MustQuery("SELECT @@GLOBAL.validate_password.length").Check(testkit.Rows("6")) + + // test tidb_cdc_write_source + require.Equal(t, uint64(0), tk.Session().GetSessionVars().CDCWriteSource) + tk.MustQuery("select @@tidb_cdc_write_source").Check(testkit.Rows("0")) + tk.MustExec("set @@session.tidb_cdc_write_source = 2") + tk.MustQuery("select @@tidb_cdc_write_source").Check(testkit.Rows("2")) + require.Equal(t, uint64(2), tk.Session().GetSessionVars().CDCWriteSource) + tk.MustExec("set @@session.tidb_cdc_write_source = 0") + require.Equal(t, uint64(0), tk.Session().GetSessionVars().CDCWriteSource) } func TestGetSetNoopVars(t *testing.T) { @@ -1407,14 +1424,11 @@ func TestValidateSetVar(t *testing.T) { tk.MustExec("set @@innodb_lock_wait_timeout = 1073741825") tk.MustQuery("show warnings").Check(testkit.RowsWithSep("|", "Warning|1292|Truncated incorrect innodb_lock_wait_timeout value: '1073741825'")) - tk.MustExec("set @@global.validate_password_number_count=-1") - tk.MustQuery("show warnings").Check(testkit.RowsWithSep("|", "Warning|1292|Truncated incorrect validate_password_number_count value: '-1'")) - - tk.MustExec("set @@global.validate_password_length=-1") - tk.MustQuery("show warnings").Check(testkit.RowsWithSep("|", "Warning|1292|Truncated incorrect validate_password_length value: '-1'")) + tk.MustExec("set @@global.validate_password.number_count=-1") + tk.MustQuery("show warnings").Check(testkit.RowsWithSep("|", "Warning|1292|Truncated incorrect validate_password.number_count value: '-1'")) - tk.MustExec("set @@global.validate_password_length=8") - tk.MustQuery("show warnings").Check(testkit.Rows()) + tk.MustExec("set @@global.validate_password.length=-1") + tk.MustQuery("show warnings").Check(testkit.RowsWithSep("|", "Warning|1292|Truncated incorrect validate_password.length value: '-1'")) err = tk.ExecToErr("set @@tx_isolation=''") require.True(t, terror.ErrorEqual(err, variable.ErrWrongValueForVar), fmt.Sprintf("err %v", err)) diff --git a/executor/show.go b/executor/show.go index 72bd63a785623..9f1e08129dacc 100644 --- a/executor/show.go +++ b/executor/show.go @@ -39,6 +39,7 @@ import ( "github.com/pingcap/tidb/parser/ast" "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/charset" + parserformat "github.com/pingcap/tidb/parser/format" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/parser/terror" @@ -368,6 +369,8 @@ func (e *ShowExec) fetchShowBind() error { hint.Charset, hint.Collation, hint.Source, + hint.SQLDigest, + hint.PlanDigest, }) } } @@ -1222,6 +1225,28 @@ func ConstructResultOfShowCreateTable(ctx sessionctx.Context, tableInfo *model.T // add partition info here. ddl.AppendPartitionInfo(tableInfo.Partition, buf, sqlMode) + + if tableInfo.TTLInfo != nil { + restoreFlags := parserformat.RestoreStringSingleQuotes | parserformat.RestoreNameBackQuotes + restoreCtx := parserformat.NewRestoreCtx(restoreFlags, buf) + + columnName := ast.ColumnName{Name: tableInfo.TTLInfo.ColumnName} + timeUnit := ast.TimeUnitExpr{Unit: ast.TimeUnitType(tableInfo.TTLInfo.IntervalTimeUnit)} + + restoreCtx.WriteKeyWord(" TTL ") + restoreCtx.WritePlain("= ") + restoreCtx.WriteName(columnName.String()) + restoreCtx.WritePlainf(" + INTERVAL %s ", tableInfo.TTLInfo.IntervalExprStr) + err = timeUnit.Restore(restoreCtx) + if err != nil { + return err + } + if tableInfo.TTLInfo.Enable { + fmt.Fprintf(buf, " TTL_ENABLE = 'ON'") + } else { + fmt.Fprintf(buf, " TTL_ENABLE = 'OFF'") + } + } return nil } @@ -1487,7 +1512,8 @@ func (e *ShowExec) fetchShowCreateUser(ctx context.Context) error { exec := e.ctx.(sqlexec.RestrictedSQLExecutor) - rows, _, err := exec.ExecRestrictedSQL(ctx, nil, `SELECT plugin, Account_locked, JSON_UNQUOTE(JSON_EXTRACT(user_attributes, '$.metadata')), Token_issuer + rows, _, err := exec.ExecRestrictedSQL(ctx, nil, + `SELECT plugin, Account_locked, JSON_UNQUOTE(JSON_EXTRACT(user_attributes, '$.metadata')), Token_issuer, Password_reuse_history, Password_reuse_time, Password_expired, Password_lifetime FROM %n.%n WHERE User=%? AND Host=%?`, mysql.SystemDB, mysql.UserTable, userName, strings.ToLower(hostName)) if err != nil { @@ -1521,6 +1547,34 @@ func (e *ShowExec) fetchShowCreateUser(ctx context.Context) error { tokenIssuer = " token_issuer " + tokenIssuer } + var passwordHistory string + if rows[0].IsNull(4) { + passwordHistory = "DEFALUT" + } else { + passwordHistory = strconv.FormatUint(rows[0].GetUint64(4), 10) + } + + var passwordReuseInterval string + if rows[0].IsNull(5) { + passwordReuseInterval = "DEFALUT" + } else { + passwordReuseInterval = strconv.FormatUint(rows[0].GetUint64(5), 10) + " DAY" + } + + passwordExpired := rows[0].GetEnum(6).String() + passwordLifetime := int64(-1) + if !rows[0].IsNull(7) { + passwordLifetime = rows[0].GetInt64(7) + } + passwordExpiredStr := "PASSWORD EXPIRE DEFAULT" + if passwordExpired == "Y" { + passwordExpiredStr = "PASSWORD EXPIRE" + } else if passwordLifetime == 0 { + passwordExpiredStr = "PASSWORD EXPIRE NEVER" + } else if passwordLifetime > 0 { + passwordExpiredStr = fmt.Sprintf("PASSWORD EXPIRE INTERVAL %d DAY", passwordLifetime) + } + rows, _, err = exec.ExecRestrictedSQL(ctx, nil, `SELECT Priv FROM %n.%n WHERE User=%? AND Host=%?`, mysql.SystemDB, mysql.GlobalPrivTable, userName, hostName) if err != nil { return errors.Trace(err) @@ -1544,8 +1598,8 @@ func (e *ShowExec) fetchShowCreateUser(ctx context.Context) error { } // FIXME: the returned string is not escaped safely - showStr := fmt.Sprintf("CREATE USER '%s'@'%s' IDENTIFIED WITH '%s'%s REQUIRE %s%s PASSWORD EXPIRE DEFAULT ACCOUNT %s%s", - e.User.Username, e.User.Hostname, authplugin, authStr, require, tokenIssuer, accountLocked, userAttributes) + showStr := fmt.Sprintf("CREATE USER '%s'@'%s' IDENTIFIED WITH '%s'%s REQUIRE %s%s %s ACCOUNT %s%s PASSWORD HISTORY %s PASSWORD REUSE INTERVAL %s", + e.User.Username, e.User.Hostname, authplugin, authStr, require, tokenIssuer, passwordExpiredStr, accountLocked, userAttributes, passwordHistory, passwordReuseInterval) e.appendRow([]interface{}{showStr}) return nil } diff --git a/executor/showtest/BUILD.bazel b/executor/showtest/BUILD.bazel index 807e00c8e88ec..aa61ad5bacd3b 100644 --- a/executor/showtest/BUILD.bazel +++ b/executor/showtest/BUILD.bazel @@ -15,6 +15,7 @@ go_test( "//executor", "//infoschema", "//meta/autoid", + "//parser", "//parser/auth", "//parser/model", "//parser/mysql", diff --git a/executor/showtest/show_test.go b/executor/showtest/show_test.go index 3566b1589a271..5444b2deeca96 100644 --- a/executor/showtest/show_test.go +++ b/executor/showtest/show_test.go @@ -23,6 +23,7 @@ import ( "github.com/pingcap/failpoint" "github.com/pingcap/tidb/executor" "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/parser" "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" @@ -1057,11 +1058,11 @@ func TestShowCreateUser(t *testing.T) { // Create a new user. tk.MustExec(`CREATE USER 'test_show_create_user'@'%' IDENTIFIED BY 'root';`) tk.MustQuery("show create user 'test_show_create_user'@'%'"). - Check(testkit.Rows(`CREATE USER 'test_show_create_user'@'%' IDENTIFIED WITH 'mysql_native_password' AS '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK`)) + Check(testkit.Rows(`CREATE USER 'test_show_create_user'@'%' IDENTIFIED WITH 'mysql_native_password' AS '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) tk.MustExec(`CREATE USER 'test_show_create_user'@'localhost' IDENTIFIED BY 'test';`) tk.MustQuery("show create user 'test_show_create_user'@'localhost';"). - Check(testkit.Rows(`CREATE USER 'test_show_create_user'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK`)) + Check(testkit.Rows(`CREATE USER 'test_show_create_user'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) // Case: the user exists but the host portion doesn't match err := tk.QueryToErr("show create user 'test_show_create_user'@'asdf';") @@ -1073,10 +1074,10 @@ func TestShowCreateUser(t *testing.T) { tk.Session().Auth(&auth.UserIdentity{Username: "root", Hostname: "127.0.0.1", AuthUsername: "root", AuthHostname: "%"}, nil, nil) tk.MustQuery("show create user current_user"). - Check(testkit.Rows("CREATE USER 'root'@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK")) + Check(testkit.Rows("CREATE USER 'root'@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT")) tk.MustQuery("show create user current_user()"). - Check(testkit.Rows("CREATE USER 'root'@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK")) + Check(testkit.Rows("CREATE USER 'root'@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT")) tk.MustExec("create user 'check_priv'") @@ -1089,9 +1090,9 @@ func TestShowCreateUser(t *testing.T) { // "show create user" for current user doesn't check privileges. tk1.MustQuery("show create user current_user"). - Check(testkit.Rows("CREATE USER 'check_priv'@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK")) + Check(testkit.Rows("CREATE USER 'check_priv'@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT")) - // Creating users with `IDENTIFIED WITH 'caching_sha2_password'` + // Creating users with `IDENTIFIED WITH 'caching_sha2_password'`. tk.MustExec("CREATE USER 'sha_test'@'%' IDENTIFIED WITH 'caching_sha2_password' BY 'temp_passwd'") // Compare only the start of the output as the salt changes every time. @@ -1102,29 +1103,46 @@ func TestShowCreateUser(t *testing.T) { // Compare only the start of the output as the salt changes every time. rows = tk.MustQuery("SHOW CREATE USER 'sock'@'%'") - require.Equal(t, "CREATE USER 'sock'@'%' IDENTIFIED WITH 'auth_socket' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK", rows.Rows()[0][0].(string)) + require.Equal(t, "CREATE USER 'sock'@'%' IDENTIFIED WITH 'auth_socket' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT", rows.Rows()[0][0].(string)) tk.MustExec("CREATE USER 'sock2'@'%' IDENTIFIED WITH 'auth_socket' AS 'sock3'") // Compare only the start of the output as the salt changes every time. rows = tk.MustQuery("SHOW CREATE USER 'sock2'@'%'") - require.Equal(t, "CREATE USER 'sock2'@'%' IDENTIFIED WITH 'auth_socket' AS 'sock3' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK", rows.Rows()[0][0].(string)) + require.Equal(t, "CREATE USER 'sock2'@'%' IDENTIFIED WITH 'auth_socket' AS 'sock3' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT", rows.Rows()[0][0].(string)) - // Test ACCOUNT LOCK/UNLOCK + // Test ACCOUNT LOCK/UNLOCK. tk.MustExec("CREATE USER 'lockness'@'%' IDENTIFIED BY 'monster' ACCOUNT LOCK") rows = tk.MustQuery("SHOW CREATE USER 'lockness'@'%'") - require.Equal(t, "CREATE USER 'lockness'@'%' IDENTIFIED WITH 'mysql_native_password' AS '*BC05309E7FE12AFD4EBB9FFE7E488A6320F12FF3' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT LOCK", rows.Rows()[0][0].(string)) + require.Equal(t, "CREATE USER 'lockness'@'%' IDENTIFIED WITH 'mysql_native_password' AS '*BC05309E7FE12AFD4EBB9FFE7E488A6320F12FF3' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT LOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT", rows.Rows()[0][0].(string)) - // Test COMMENT and ATTRIBUTE + // Test COMMENT and ATTRIBUTE. tk.MustExec("CREATE USER commentUser COMMENT '1234'") - tk.MustQuery("SHOW CREATE USER commentUser").Check(testkit.Rows(`CREATE USER 'commentUser'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"comment": "1234"}`)) + tk.MustQuery("SHOW CREATE USER commentUser").Check(testkit.Rows(`CREATE USER 'commentUser'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"comment": "1234"} PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) tk.MustExec(`CREATE USER attributeUser attribute '{"name": "Tom", "age": 19}'`) - tk.MustQuery("SHOW CREATE USER attributeUser").Check(testkit.Rows(`CREATE USER 'attributeUser'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"age": 19, "name": "Tom"}`)) + tk.MustQuery("SHOW CREATE USER attributeUser").Check(testkit.Rows(`CREATE USER 'attributeUser'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"age": 19, "name": "Tom"} PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) - // Creating users with 'IDENTIFIED WITH 'tidb_auth_token'' + // Creating users with IDENTIFIED WITH 'tidb_auth_token'. tk.MustExec(`CREATE USER 'token_user'@'%' IDENTIFIED WITH 'tidb_auth_token' ATTRIBUTE '{"email": "user@pingcap.com"}'`) - tk.MustQuery("SHOW CREATE USER token_user").Check(testkit.Rows(`CREATE USER 'token_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"email": "user@pingcap.com"}`)) + tk.MustQuery("SHOW CREATE USER token_user").Check(testkit.Rows(`CREATE USER 'token_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"email": "user@pingcap.com"} PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) tk.MustExec(`ALTER USER 'token_user'@'%' REQUIRE token_issuer 'issuer-ABC'`) - tk.MustQuery("SHOW CREATE USER token_user").Check(testkit.Rows(`CREATE USER 'token_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE token_issuer issuer-ABC PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"email": "user@pingcap.com"}`)) + tk.MustQuery("SHOW CREATE USER token_user").Check(testkit.Rows(`CREATE USER 'token_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE token_issuer issuer-ABC PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ATTRIBUTE {"email": "user@pingcap.com"} PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) + + // create users with password reuse. + tk.MustExec(`CREATE USER 'reuse_user'@'%' IDENTIFIED WITH 'tidb_auth_token' PASSWORD HISTORY 5 PASSWORD REUSE INTERVAL 3 DAY`) + tk.MustQuery("SHOW CREATE USER reuse_user").Check(testkit.Rows(`CREATE USER 'reuse_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY 5 PASSWORD REUSE INTERVAL 3 DAY`)) + tk.MustExec(`ALTER USER 'reuse_user'@'%' PASSWORD HISTORY 50`) + tk.MustQuery("SHOW CREATE USER reuse_user").Check(testkit.Rows(`CREATE USER 'reuse_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY 50 PASSWORD REUSE INTERVAL 3 DAY`)) + tk.MustExec(`ALTER USER 'reuse_user'@'%' PASSWORD REUSE INTERVAL 31 DAY`) + tk.MustQuery("SHOW CREATE USER reuse_user").Check(testkit.Rows(`CREATE USER 'reuse_user'@'%' IDENTIFIED WITH 'tidb_auth_token' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY 50 PASSWORD REUSE INTERVAL 31 DAY`)) + + tk.MustExec("CREATE USER 'jeffrey1'@'localhost' PASSWORD EXPIRE") + tk.MustQuery("SHOW CREATE USER 'jeffrey1'@'localhost'").Check(testkit.Rows(`CREATE USER 'jeffrey1'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) + tk.MustExec("CREATE USER 'jeffrey2'@'localhost' PASSWORD EXPIRE DEFAULT") + tk.MustQuery("SHOW CREATE USER 'jeffrey2'@'localhost'").Check(testkit.Rows(`CREATE USER 'jeffrey2'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) + tk.MustExec("CREATE USER 'jeffrey3'@'localhost' PASSWORD EXPIRE NEVER") + tk.MustQuery("SHOW CREATE USER 'jeffrey3'@'localhost'").Check(testkit.Rows(`CREATE USER 'jeffrey3'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE NEVER ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) + tk.MustExec("CREATE USER 'jeffrey4'@'localhost' PASSWORD EXPIRE INTERVAL 180 DAY") + tk.MustQuery("SHOW CREATE USER 'jeffrey4'@'localhost'").Check(testkit.Rows(`CREATE USER 'jeffrey4'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE INTERVAL 180 DAY ACCOUNT UNLOCK PASSWORD HISTORY DEFALUT PASSWORD REUSE INTERVAL DEFALUT`)) } func TestUnprivilegedShow(t *testing.T) { @@ -1989,3 +2007,53 @@ func TestShowLimitReturnRow(t *testing.T) { rows = result.Rows() require.Equal(t, rows[0][2], "idx_b") } + +func TestShowTTLOption(t *testing.T) { + parser.TTLFeatureGate = true + + store := testkit.CreateMockStore(t) + + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(created_at datetime) ttl = `created_at` + INTERVAL 100 YEAR") + tk.MustQuery("show create table t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `created_at` + INTERVAL 100 YEAR TTL_ENABLE = 'ON'")) + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(created_at datetime) ttl = `created_at` + INTERVAL 100 YEAR ttl_enable = 'OFF'") + tk.MustQuery("show create table t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `created_at` + INTERVAL 100 YEAR TTL_ENABLE = 'OFF'")) + + tk.MustExec("drop table if exists t") + tk.MustExec("create table t (created_at datetime) TTL = created_at + INTERVAL 3.14159 HOUR_MINUTE") + tk.MustQuery("show create table t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `created_at` + INTERVAL 3.14159 HOUR_MINUTE TTL_ENABLE = 'ON'")) + + tk.MustExec("drop table if exists t") + tk.MustExec("create table t (created_at datetime) TTL = created_at + INTERVAL \"15:20\" HOUR_MINUTE") + tk.MustQuery("show create table t").Check(testkit.Rows("t CREATE TABLE `t` (\n `created_at` datetime DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin TTL = `created_at` + INTERVAL _utf8mb4'15:20' HOUR_MINUTE TTL_ENABLE = 'ON'")) +} + +func TestShowBindingDigestField(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t1, t2") + tk.MustExec("create table t1(id int, key(id))") + tk.MustExec("create table t2(id int, key(id))") + tk.MustExec("create binding for select * from t1, t2 where t1.id = t2.id using select /*+ merge_join(t1, t2)*/ * from t1, t2 where t1.id = t2.id") + result := tk.MustQuery("show bindings;") + rows := result.Rows()[0] + require.Equal(t, len(rows), 11) + require.Equal(t, rows[9], "ac1ceb4eb5c01f7c03e29b7d0d6ab567e563f4c93164184cde218f20d07fd77c") + tk.MustExec("drop binding for select * from t1, t2 where t1.id = t2.id") + result = tk.MustQuery("show bindings;") + require.Equal(t, len(result.Rows()), 0) + + tk.MustExec("create global binding for select * from t1, t2 where t1.id = t2.id using select /*+ merge_join(t1, t2)*/ * from t1, t2 where t1.id = t2.id") + result = tk.MustQuery("show global bindings;") + rows = result.Rows()[0] + require.Equal(t, len(rows), 11) + require.Equal(t, rows[9], "ac1ceb4eb5c01f7c03e29b7d0d6ab567e563f4c93164184cde218f20d07fd77c") + tk.MustExec("drop global binding for select * from t1, t2 where t1.id = t2.id") + result = tk.MustQuery("show global bindings;") + require.Equal(t, len(result.Rows()), 0) +} diff --git a/executor/simple.go b/executor/simple.go index 2ab99b101dde1..ec04cfd32ee36 100644 --- a/executor/simple.go +++ b/executor/simple.go @@ -19,7 +19,9 @@ import ( "context" "encoding/json" "fmt" + "math" "os" + "strconv" "strings" "syscall" "time" @@ -51,15 +53,18 @@ import ( "github.com/pingcap/tidb/util/collate" "github.com/pingcap/tidb/util/hack" "github.com/pingcap/tidb/util/logutil" + "github.com/pingcap/tidb/util/mathutil" + pwdValidator "github.com/pingcap/tidb/util/password-validation" "github.com/pingcap/tidb/util/sem" "github.com/pingcap/tidb/util/sqlexec" "github.com/pingcap/tidb/util/timeutil" "github.com/pingcap/tidb/util/tls" "github.com/pingcap/tipb/go-tipb" - tikvutil "github.com/tikv/client-go/v2/util" "go.uber.org/zap" ) +const notSpecified = -1 + var ( transactionDurationPessimisticRollback = metrics.TransactionDuration.WithLabelValues(metrics.LblPessimistic, metrics.LblRollback) transactionDurationOptimisticRollback = metrics.TransactionDuration.WithLabelValues(metrics.LblOptimistic, metrics.LblRollback) @@ -85,6 +90,28 @@ type SimpleExec struct { staleTxnStartTS uint64 } +type passwordLockInfo struct { + lockAccount string + passwordExpired string + passwordLifetime any + passwordHistory int64 + passwordHistoryFlag bool + passwordReuseInterval int64 + passwordReuseIntervalFlag bool +} + +type passwordReuseInfo struct { + passwordHistory int64 + passwordReuseInterval int64 +} + +type userInfo struct { + host string + user string + pLI *passwordLockInfo + pwd string +} + func (e *baseExecutor) getSysSession() (sessionctx.Context, error) { dom := domain.GetDomain(e.ctx) sysSessionPool := dom.SysSessionPool() @@ -110,6 +137,16 @@ func (e *baseExecutor) releaseSysSession(ctx context.Context, sctx sessionctx.Co sysSessionPool.Put(sctx.(pools.Resource)) } +// clearSysSession close the session does not return the session. +// Since the environment variables in the session are changed, the session object is not returned. +func clearSysSession(ctx context.Context, sctx sessionctx.Context) { + if sctx == nil { + return + } + _, _ = sctx.(sqlexec.SQLExecutor).ExecuteInternal(ctx, "rollback") + sctx.(pools.Resource).Close() +} + // Next implements the Executor Next interface. func (e *SimpleExec) Next(ctx context.Context, req *chunk.Chunk) (err error) { if e.done { @@ -783,6 +820,87 @@ func (e *SimpleExec) executeRollback(s *ast.RollbackStmt) error { return nil } +func whetherSavePasswordHistory(passwdlockinfo *passwordLockInfo) bool { + passwdSaveNum, passwdSaveTime := passwdlockinfo.passwordHistory, passwdlockinfo.passwordReuseInterval + if passwdSaveNum == notSpecified { + passwdSaveNum = variable.PasswordHistory.Load() + } + if passwdSaveTime == notSpecified { + passwdSaveTime = variable.PasswordReuseInterval.Load() + } + return passwdSaveTime > 0 || passwdSaveNum > 0 +} + +func (pLinfo *passwordLockInfo) analyzeLockPasswordInfo(PasswordOrLockOptions []*ast.PasswordOrLockOption) error { + if length := len(PasswordOrLockOptions); length > 0 { + // If "ACCOUNT LOCK" or "ACCOUNT UNLOCK" appears many times, + // only the last declaration takes effect. + for i := length - 1; i >= 0; i-- { + if PasswordOrLockOptions[i].Type == ast.Lock { + pLinfo.lockAccount = "Y" + break + } else if PasswordOrLockOptions[i].Type == ast.Unlock { + pLinfo.lockAccount = "N" + break + } + } + // If "PASSWORD EXPIRE ..." appears many times, + // only the last declaration takes effect. + Loop: + for i := length - 1; i >= 0; i-- { + switch PasswordOrLockOptions[i].Type { + case ast.PasswordExpire: + pLinfo.passwordExpired = "Y" + break Loop + case ast.PasswordExpireDefault: + pLinfo.passwordLifetime = nil + break Loop + case ast.PasswordExpireNever: + pLinfo.passwordLifetime = 0 + break Loop + case ast.PasswordExpireInterval: + if PasswordOrLockOptions[i].Count == 0 || PasswordOrLockOptions[i].Count > math.MaxUint16 { + return types.ErrWrongValue2.GenWithStackByArgs("DAY", fmt.Sprintf("%v", PasswordOrLockOptions[i].Count)) + } + pLinfo.passwordLifetime = PasswordOrLockOptions[i].Count + break Loop + } + } + } + for _, option := range PasswordOrLockOptions { + switch option.Type { + case ast.PasswordHistory: + pLinfo.passwordHistory = mathutil.Min(option.Count, math.MaxUint16) + pLinfo.passwordHistoryFlag = true + case ast.PasswordHistoryDefault: + pLinfo.passwordHistory = notSpecified + pLinfo.passwordHistoryFlag = true + case ast.PasswordReuseInterval: + pLinfo.passwordReuseInterval = mathutil.Min(option.Count, math.MaxUint16) + pLinfo.passwordReuseIntervalFlag = true + case ast.PasswordReuseDefault: + pLinfo.passwordReuseInterval = notSpecified + pLinfo.passwordReuseIntervalFlag = true + } + } + return nil +} + +func (e *SimpleExec) authUsingCleartextPwd(authOpt *ast.AuthOption, authPlugin string) bool { + if authOpt == nil || !authOpt.ByAuthString { + return false + } + return mysql.IsAuthPluginClearText(authPlugin) +} + +func (e *SimpleExec) isValidatePasswordEnabled() bool { + validatePwdEnable, err := e.ctx.GetSessionVars().GlobalVarsAccessor.GetGlobalSysVar(variable.ValidatePasswordEnable) + if err != nil { + return false + } + return variable.TiDBOptOn(validatePwdEnable) +} + func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStmt) error { internalCtx := kv.WithInternalSourceType(context.Background(), kv.InternalTxnPrivilege) // Check `CREATE USER` privilege. @@ -810,21 +928,22 @@ func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStm return err } - lockAccount := "N" - if length := len(s.PasswordOrLockOptions); length > 0 { - // If "ACCOUNT LOCK" or "ACCOUNT UNLOCK" appears many times, - // the last declaration takes effect. - for i := length - 1; i >= 0; i-- { - if s.PasswordOrLockOptions[i].Type == ast.Lock { - lockAccount = "Y" - break - } else if s.PasswordOrLockOptions[i].Type == ast.Unlock { - break - } - } + passwdlockinfo := &passwordLockInfo{ + lockAccount: "N", + passwordExpired: "N", + passwordLifetime: nil, + passwordHistory: notSpecified, + passwordReuseInterval: notSpecified, + passwordHistoryFlag: false, + passwordReuseIntervalFlag: false, + } + err = passwdlockinfo.analyzeLockPasswordInfo(s.PasswordOrLockOptions) + if err != nil { + return err } if s.IsCreateRole { - lockAccount = "Y" + passwdlockinfo.lockAccount = "Y" + passwdlockinfo.passwordExpired = "Y" } var userAttributes any = nil @@ -845,13 +964,26 @@ func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStm } sql := new(strings.Builder) - sqlexec.MustFormatSQL(sql, `INSERT INTO %n.%n (Host, User, authentication_string, plugin, user_attributes, Account_locked, Token_issuer) VALUES `, mysql.SystemDB, mysql.UserTable) + sqlPasswordHistory := new(strings.Builder) + passwordInit := true + // Get changed user password reuse info. + savePasswdHistory := whetherSavePasswordHistory(passwdlockinfo) + sqlTemplate := "INSERT INTO %n.%n (Host, User, authentication_string, plugin, user_attributes, Account_locked, Token_issuer, Password_expired, Password_lifetime, Password_reuse_time, Password_reuse_history) VALUES " + valueTemplate := "(%?, %?, %?, %?, %?, %?, %?, %?, %?" + + sqlexec.MustFormatSQL(sql, sqlTemplate, mysql.SystemDB, mysql.UserTable) + if savePasswdHistory { + sqlexec.MustFormatSQL(sqlPasswordHistory, `INSERT INTO %n.%n (Host, User, Password) VALUES `, mysql.SystemDB, mysql.PasswordHistoryTable) + } users := make([]*auth.UserIdentity, 0, len(s.Specs)) for _, spec := range s.Specs { if len(spec.User.Username) > auth.UserNameMaxLength { return ErrWrongStringLength.GenWithStackByArgs(spec.User.Username, "user name", auth.UserNameMaxLength) } + if len(spec.User.Username) == 0 && passwdlockinfo.passwordExpired == "Y" { + return ErrPasswordExpireAnonymousUser.GenWithStackByArgs() + } if len(spec.User.Hostname) > auth.HostNameMaxLength { return ErrWrongStringLength.GenWithStackByArgs(spec.User.Hostname, "host name", auth.HostNameMaxLength) } @@ -874,15 +1006,25 @@ func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStm e.ctx.GetSessionVars().StmtCtx.AppendNote(err) continue } + authPlugin := mysql.AuthNativePassword + if spec.AuthOpt != nil && spec.AuthOpt.AuthPlugin != "" { + authPlugin = spec.AuthOpt.AuthPlugin + } + if e.isValidatePasswordEnabled() && !s.IsCreateRole { + if spec.AuthOpt == nil || !spec.AuthOpt.ByAuthString && spec.AuthOpt.HashString == "" { + return variable.ErrNotValidPassword.GenWithStackByArgs() + } + if e.authUsingCleartextPwd(spec.AuthOpt, authPlugin) { + if err := pwdValidator.ValidatePassword(e.ctx.GetSessionVars(), spec.AuthOpt.AuthString); err != nil { + return err + } + } + } pwd, ok := spec.EncodedPassword() if !ok { return errors.Trace(ErrPasswordFormat) } - authPlugin := mysql.AuthNativePassword - if spec.AuthOpt != nil && spec.AuthOpt.AuthPlugin != "" { - authPlugin = spec.AuthOpt.AuthPlugin - } switch authPlugin { case mysql.AuthNativePassword, mysql.AuthCachingSha2Password, mysql.AuthTiDBSM3Password, mysql.AuthSocket, mysql.AuthTiDBAuthToken: @@ -901,7 +1043,29 @@ func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStm } hostName := strings.ToLower(spec.User.Hostname) - sqlexec.MustFormatSQL(sql, `(%?, %?, %?, %?, %?, %?, %?)`, hostName, spec.User.Username, pwd, authPlugin, userAttributes, lockAccount, recordTokenIssuer) + sqlexec.MustFormatSQL(sql, valueTemplate, hostName, spec.User.Username, pwd, authPlugin, userAttributes, passwdlockinfo.lockAccount, recordTokenIssuer, passwdlockinfo.passwordExpired, passwdlockinfo.passwordLifetime) + // add Password_reuse_time value. + if passwdlockinfo.passwordReuseInterval != notSpecified { + sqlexec.MustFormatSQL(sql, `, %?`, passwdlockinfo.passwordReuseInterval) + } else { + sqlexec.MustFormatSQL(sql, `, %?`, nil) + } + // add Password_reuse_history value. + if passwdlockinfo.passwordHistory != notSpecified { + sqlexec.MustFormatSQL(sql, `, %?`, passwdlockinfo.passwordHistory) + } else { + sqlexec.MustFormatSQL(sql, `, %?`, nil) + } + sqlexec.MustFormatSQL(sql, `)`) + // The empty password does not count in the password history and is subject to reuse at any time. + if savePasswdHistory && len(pwd) != 0 { + if !passwordInit { + sqlexec.MustFormatSQL(sqlPasswordHistory, ",") + } else { + passwordInit = false + } + sqlexec.MustFormatSQL(sqlPasswordHistory, `( %?, %?, %?)`, hostName, spec.User.Username, pwd) + } users = append(users, spec.User) } if len(users) == 0 { @@ -925,6 +1089,17 @@ func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStm } return err } + + if savePasswdHistory && !passwordInit { + _, err = sqlExecutor.ExecuteInternal(internalCtx, sqlPasswordHistory.String()) + if err != nil { + if _, rollbackErr := sqlExecutor.ExecuteInternal(internalCtx, "rollback"); rollbackErr != nil { + return errors.Trace(rollbackErr) + } + return errors.Trace(err) + } + } + if len(privData) != 0 { sql.Reset() sqlexec.MustFormatSQL(sql, "INSERT IGNORE INTO %n.%n (Host, User, Priv) VALUES ", mysql.SystemDB, mysql.GlobalPrivTable) @@ -948,7 +1123,252 @@ func (e *SimpleExec) executeCreateUser(ctx context.Context, s *ast.CreateUserStm return domain.GetDomain(e.ctx).NotifyUpdatePrivilege() } +func getUserPasswordLimit(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, name string, host string, passwdlockinfo *passwordLockInfo) (*passwordReuseInfo, error) { + res := &passwordReuseInfo{notSpecified, notSpecified} + sql := new(strings.Builder) + sqlexec.MustFormatSQL(sql, `SELECT Password_reuse_history,Password_reuse_time FROM %n.%n WHERE User=%? AND Host=%?;`, + mysql.SystemDB, mysql.UserTable, name, strings.ToLower(host)) + // Query the specified user password reuse rules. + recordSet, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return nil, err + } + rows, err := sqlexec.DrainRecordSet(ctx, recordSet, 3) + if err != nil { + return nil, err + } + for _, row := range rows { + if !row.IsNull(0) { + res.passwordHistory = int64(row.GetUint64(0)) + } else { + res.passwordHistory = variable.PasswordHistory.Load() + } + if !row.IsNull(1) { + res.passwordReuseInterval = int64(row.GetUint64(1)) + } else { + res.passwordReuseInterval = variable.PasswordReuseInterval.Load() + } + } + if passwdlockinfo.passwordHistoryFlag { + res.passwordHistory = passwdlockinfo.passwordHistory + } + if passwdlockinfo.passwordReuseIntervalFlag { + res.passwordReuseInterval = passwdlockinfo.passwordReuseInterval + } + return res, nil +} + +// getValidTime get the boundary of password valid time. +func getValidTime(sctx sessionctx.Context, passwordReuse *passwordReuseInfo) string { + nowTime := time.Now().In(sctx.GetSessionVars().TimeZone) + nowTimeS := nowTime.Unix() + beforeTimeS := nowTimeS - passwordReuse.passwordReuseInterval*24*int64(time.Hour/time.Second) + if beforeTimeS < 0 { + beforeTimeS = 0 + } + return time.Unix(beforeTimeS, 0).Format("2006-01-02 15:04:05.999999999") +} + +// deleteHistoricalData delete useless password history. +// The deleted password must meet the following conditions at the same time. +// 1. Exceeded the maximum number of saves. +// 2. The password has exceeded the prohibition time. +func deleteHistoricalData(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo, maxDelRows int64, passwordReuse *passwordReuseInfo, sctx sessionctx.Context) error { + //never times out or no row need delete. + if (passwordReuse.passwordReuseInterval > math.MaxInt32) || maxDelRows == 0 { + return nil + } + sql := new(strings.Builder) + // no prohibition time. + if passwordReuse.passwordReuseInterval == 0 { + deleteTemplate := `DELETE from %n.%n WHERE User= %? AND Host= %? order by Password_timestamp ASC LIMIT ` + deleteTemplate = deleteTemplate + strconv.FormatInt(maxDelRows, 10) + sqlexec.MustFormatSQL(sql, deleteTemplate, mysql.SystemDB, mysql.PasswordHistoryTable, + userDetail.user, strings.ToLower(userDetail.host)) + _, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return err + } + } else { + beforeDate := getValidTime(sctx, passwordReuse) + // Deletion must satisfy 1. Exceed the prohibition time 2. Exceed the maximum number of saved records. + deleteTemplate := `DELETE from %n.%n WHERE User= %? AND Host= %? AND Password_timestamp < %? order by Password_timestamp ASC LIMIT ` + deleteTemplate = deleteTemplate + strconv.FormatInt(maxDelRows, 10) + sql.Reset() + sqlexec.MustFormatSQL(sql, deleteTemplate, mysql.SystemDB, mysql.PasswordHistoryTable, + userDetail.user, strings.ToLower(userDetail.host), beforeDate) + _, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return err + } + } + return nil +} + +func addHistoricalData(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo, passwordReuse *passwordReuseInfo) error { + if passwordReuse.passwordHistory <= 0 && passwordReuse.passwordReuseInterval <= 0 { + return nil + } + sql := new(strings.Builder) + sqlexec.MustFormatSQL(sql, `INSERT INTO %n.%n (Host, User, Password) VALUES (%?, %?, %?) `, mysql.SystemDB, mysql.PasswordHistoryTable, strings.ToLower(userDetail.host), userDetail.user, userDetail.pwd) + _, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return errors.Trace(err) + } + return nil +} + +func getUserPasswordNum(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo) (int64, error) { + sql := new(strings.Builder) + sqlexec.MustFormatSQL(sql, `SELECT count(*) FROM %n.%n WHERE User=%? AND Host=%?;`, mysql.SystemDB, mysql.PasswordHistoryTable, userDetail.user, strings.ToLower(userDetail.host)) + recordSet, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return 0, err + } + + rows, err := sqlexec.DrainRecordSet(ctx, recordSet, 3) + if err != nil { + return 0, err + } + if len(rows) != 1 { + err := fmt.Errorf("`%s`@`%s` is not unique, please confirm the mysql.password_history table structure", userDetail.user, strings.ToLower(userDetail.host)) + return 0, err + } + + return rows[0].GetInt64(0), nil +} + +func fullRecordCheck(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo) (bool, error) { + sql := new(strings.Builder) + sqlexec.MustFormatSQL(sql, `SELECT count(*) FROM %n.%n WHERE User= %? AND Host= %? AND Password = %?;`, mysql.SystemDB, mysql.PasswordHistoryTable, userDetail.user, strings.ToLower(userDetail.host), userDetail.pwd) + recordSet, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return false, err + } + rows, err := sqlexec.DrainRecordSet(ctx, recordSet, 3) + if err != nil { + return false, err + } + if rows[0].GetInt64(0) == 0 { + return true, nil + } + return false, nil +} + +func checkPasswordHistoryRule(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo, passwordReuse *passwordReuseInfo) (bool, error) { + sql := new(strings.Builder) + // Exceeded the maximum number of saved items, only check the ones within the limit. + checkRows := `SELECT count(*) FROM (SELECT Password FROM %n.%n WHERE User=%? AND Host=%? ORDER BY Password_timestamp DESC LIMIT ` + checkRows = checkRows + strconv.FormatInt(passwordReuse.passwordHistory, 10) + checkRows = checkRows + ` ) as t where t.Password = %? ` + sqlexec.MustFormatSQL(sql, checkRows, mysql.SystemDB, mysql.PasswordHistoryTable, userDetail.user, strings.ToLower(userDetail.host), userDetail.pwd) + recordSet, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return false, err + } + rows, err := sqlexec.DrainRecordSet(ctx, recordSet, 3) + if err != nil { + return false, err + } + if rows[0].GetInt64(0) != 0 { + return false, nil + } + return true, nil +} + +func checkPasswordTimeRule(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo, passwordReuse *passwordReuseInfo, + sctx sessionctx.Context) (bool, error) { + sql := new(strings.Builder) + beforeDate := getValidTime(sctx, passwordReuse) + sqlexec.MustFormatSQL(sql, `SELECT count(*) FROM %n.%n WHERE User=%? AND Host=%? AND Password = %? AND Password_timestamp >= %?;`, + mysql.SystemDB, mysql.PasswordHistoryTable, userDetail.user, strings.ToLower(userDetail.host), userDetail.pwd, beforeDate) + recordSet, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) + if err != nil { + return false, err + } + rows, err := sqlexec.DrainRecordSet(ctx, recordSet, 3) + if err != nil { + return false, err + } + if rows[0].GetInt64(0) == 0 { + return true, nil + } + return false, nil +} + +func passwordVerification(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo, passwordReuse *passwordReuseInfo, sctx sessionctx.Context) (bool, int64, error) { + passwordNum, err := getUserPasswordNum(ctx, sqlExecutor, userDetail) + if err != nil { + return false, 0, err + } + + // the maximum number of records that can be deleted. + canDeleteNum := passwordNum - passwordReuse.passwordHistory + 1 + if canDeleteNum < 0 { + canDeleteNum = 0 + } + + if passwordReuse.passwordHistory <= 0 && passwordReuse.passwordReuseInterval <= 0 { + return true, canDeleteNum, nil + } + + // The maximum number of saves has not been exceeded. + // There are too many retention days, and it is impossible to time out in one's lifetime. + if (passwordNum <= passwordReuse.passwordHistory) || (passwordReuse.passwordReuseInterval > math.MaxInt32) { + passChecking, err := fullRecordCheck(ctx, sqlExecutor, userDetail) + return passChecking, canDeleteNum, err + } + + if passwordReuse.passwordHistory > 0 { + passChecking, err := checkPasswordHistoryRule(ctx, sqlExecutor, userDetail, passwordReuse) + if err != nil || !passChecking { + return false, 0, err + } + } + if passwordReuse.passwordReuseInterval > 0 { + passChecking, err := checkPasswordTimeRule(ctx, sqlExecutor, userDetail, passwordReuse, sctx) + if err != nil || !passChecking { + return false, 0, err + } + } + return true, canDeleteNum, nil +} + +func checkPasswordReusePolicy(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, userDetail *userInfo, sctx sessionctx.Context) error { + // read password reuse info from mysql.user and global variables. + passwdReuseInfo, err := getUserPasswordLimit(ctx, sqlExecutor, userDetail.user, userDetail.host, userDetail.pLI) + if err != nil { + return err + } + // check whether password can be used. + res, maxDelNum, err := passwordVerification(ctx, sqlExecutor, userDetail, passwdReuseInfo, sctx) + if err != nil { + return err + } + if !res { + return ErrExistsInHistoryPassword.GenWithStackByArgs(userDetail.user, userDetail.host) + } + err = deleteHistoricalData(ctx, sqlExecutor, userDetail, maxDelNum, passwdReuseInfo, sctx) + if err != nil { + return err + } + // insert password history. + err = addHistoricalData(ctx, sqlExecutor, userDetail, passwdReuseInfo) + if err != nil { + return err + } + return nil +} + func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) error { + disableSandBoxMode := false + var err error + if e.ctx.InSandBoxMode() { + if err = e.checkSandboxMode(s.Specs); err != nil { + return err + } + disableSandBoxMode = true + } ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnPrivilege) if s.CurrentAuth != nil { user := e.ctx.GetSessionVars().User @@ -965,19 +1385,18 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) s.Specs = []*ast.UserSpec{spec} } - lockAccount := "" - if len(s.PasswordOrLockOptions) > 0 { - // If "ACCOUNT LOCK" or "ACCOUNT UNLOCK" appears many times, - // the last declaration takes effect. - for i := len(s.PasswordOrLockOptions) - 1; i >= 0; i-- { - if s.PasswordOrLockOptions[i].Type == ast.Lock { - lockAccount = "Y" - break - } else if s.PasswordOrLockOptions[i].Type == ast.Unlock { - lockAccount = "N" - break - } - } + passwdlockinfo := &passwordLockInfo{ + lockAccount: "", + passwordExpired: "", + passwordLifetime: notSpecified, + passwordHistory: notSpecified, + passwordReuseInterval: notSpecified, + passwordHistoryFlag: false, + passwordReuseIntervalFlag: false, + } + err = passwdlockinfo.analyzeLockPasswordInfo(s.PasswordOrLockOptions) + if err != nil { + return err } privData, err := tlsOption2GlobalPriv(s.AuthTokenOrTLSOptions) @@ -986,6 +1405,7 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) } failedUsers := make([]string, 0, len(s.Specs)) + needRollback := false checker := privilege.GetPrivilegeManager(e.ctx) if checker == nil { return errors.New("could not load privilege checker") @@ -1003,6 +1423,24 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) } } + sysSession, err := e.getSysSession() + defer clearSysSession(ctx, sysSession) + if err != nil { + return err + } + sqlExecutor := sysSession.(sqlexec.SQLExecutor) + // session isolation level changed to READ-COMMITTED. + // When tidb is at the RR isolation level, executing `begin` will obtain a consistent state. + // When operating the same user concurrently, it may happen that historical versions are read. + // In order to avoid this risk, change the isolation level to RC. + _, err = sqlExecutor.ExecuteInternal(ctx, "set tx_isolation = 'READ-COMMITTED'") + if err != nil { + return err + } + if _, err := sqlExecutor.ExecuteInternal(ctx, "BEGIN PESSIMISTIC"); err != nil { + return err + } + for _, spec := range s.Specs { user := e.ctx.GetSessionVars().User if spec.User.CurrentUser || ((user != nil) && (user.Username == spec.User.Username) && (user.AuthHostname == spec.User.Hostname)) { @@ -1036,7 +1474,7 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) } } - exists, err := userExists(ctx, e.ctx, spec.User.Username, spec.User.Hostname) + exists, err := userExistsInternal(ctx, sqlExecutor, spec.User.Username, spec.User.Hostname) if err != nil { return err } @@ -1057,25 +1495,23 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) RequireAuthTokenOptions ) authTokenOptionHandler := NoNeedAuthTokenOptions - if currentAuthPlugin, err := e.userAuthPlugin(spec.User.Username, spec.User.Hostname); err != nil { + currentAuthPlugin, err := privilege.GetPrivilegeManager(e.ctx).GetAuthPlugin(spec.User.Username, spec.User.Hostname) + if err != nil { return err - } else if currentAuthPlugin == mysql.AuthTiDBAuthToken { + } + if currentAuthPlugin == mysql.AuthTiDBAuthToken { authTokenOptionHandler = OptionalAuthTokenOptions } - exec := e.ctx.(sqlexec.RestrictedSQLExecutor) type alterField struct { expr string - value string + value any } var fields []alterField if spec.AuthOpt != nil { + fields = append(fields, alterField{"password_last_changed=current_timestamp()", nil}) if spec.AuthOpt.AuthPlugin == "" { - authplugin, err := e.userAuthPlugin(spec.User.Username, spec.User.Hostname) - if err != nil { - return err - } - spec.AuthOpt.AuthPlugin = authplugin + spec.AuthOpt.AuthPlugin = currentAuthPlugin } switch spec.AuthOpt.AuthPlugin { case mysql.AuthNativePassword, mysql.AuthCachingSha2Password, mysql.AuthTiDBSM3Password, mysql.AuthSocket, "": @@ -1087,18 +1523,64 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) default: return ErrPluginIsNotLoaded.GenWithStackByArgs(spec.AuthOpt.AuthPlugin) } + if e.isValidatePasswordEnabled() && e.authUsingCleartextPwd(spec.AuthOpt, spec.AuthOpt.AuthPlugin) { + if err := pwdValidator.ValidatePassword(e.ctx.GetSessionVars(), spec.AuthOpt.AuthString); err != nil { + return err + } + } pwd, ok := spec.EncodedPassword() if !ok { return errors.Trace(ErrPasswordFormat) } - fields = append(fields, - alterField{"authentication_string=%?", pwd}, - alterField{"plugin=%?", spec.AuthOpt.AuthPlugin}, - ) + // for Support Password Reuse Policy. + // The empty password does not count in the password history and is subject to reuse at any time. + // https://dev.mysql.com/doc/refman/8.0/en/password-management.html#password-reuse-policy + if len(pwd) != 0 { + userDetail := &userInfo{spec.User.Hostname, spec.User.Username, passwdlockinfo, pwd} + err := checkPasswordReusePolicy(ctx, sqlExecutor, userDetail, e.ctx) + if err != nil { + return err + } + } + fields = append(fields, alterField{"authentication_string=%?", pwd}) + if spec.AuthOpt.AuthPlugin != "" { + fields = append(fields, alterField{"plugin=%?", spec.AuthOpt.AuthPlugin}) + } + if spec.AuthOpt.ByAuthString || spec.AuthOpt.ByHashString { + if passwdlockinfo.passwordExpired == "" { + passwdlockinfo.passwordExpired = "N" + } + } } - if len(lockAccount) != 0 { - fields = append(fields, alterField{"account_locked=%?", lockAccount}) + if len(passwdlockinfo.lockAccount) != 0 { + fields = append(fields, alterField{"account_locked=%?", passwdlockinfo.lockAccount}) + } + + // support alter Password_reuse_history and Password_reuse_time. + if passwdlockinfo.passwordHistoryFlag { + if passwdlockinfo.passwordHistory == notSpecified { + fields = append(fields, alterField{"Password_reuse_history = NULL ", ""}) + } else { + fields = append(fields, alterField{"Password_reuse_history = %? ", strconv.FormatInt(passwdlockinfo.passwordHistory, 10)}) + } + } + if passwdlockinfo.passwordReuseIntervalFlag { + if passwdlockinfo.passwordReuseInterval == notSpecified { + fields = append(fields, alterField{"Password_reuse_time = NULL ", ""}) + } else { + fields = append(fields, alterField{"Password_reuse_time = %? ", strconv.FormatInt(passwdlockinfo.passwordReuseInterval, 10)}) + } + } + + if len(passwdlockinfo.passwordExpired) != 0 { + if len(spec.User.Username) == 0 && passwdlockinfo.passwordExpired == "Y" { + return ErrPasswordExpireAnonymousUser.GenWithStackByArgs() + } + fields = append(fields, alterField{"password_expired=%?", passwdlockinfo.passwordExpired}) + } + if passwdlockinfo.passwordLifetime != notSpecified { + fields = append(fields, alterField{"password_lifetime=%?", passwdlockinfo.passwordLifetime}) } if s.CommentOrAttributeOption != nil { @@ -1108,7 +1590,7 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) } else { newAttributesStr = fmt.Sprintf(`{"metadata": %s}`, s.CommentOrAttributeOption.Value) } - fields = append(fields, alterField{"user_attributes=json_merge_patch(user_attributes, %?)", newAttributesStr}) + fields = append(fields, alterField{"user_attributes=json_merge_patch(coalesce(user_attributes, '{}'), %?)", newAttributesStr}) } switch authTokenOptionHandler { @@ -1144,31 +1626,27 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) } } sqlexec.MustFormatSQL(sql, " WHERE Host=%? and User=%?;", spec.User.Hostname, spec.User.Username) - _, _, err := exec.ExecRestrictedSQL(ctx, nil, sql.String()) + _, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) if err != nil { failedUsers = append(failedUsers, spec.User.String()) + needRollback = true continue } } if len(privData) > 0 { - _, _, err := exec.ExecRestrictedSQL(ctx, nil, "INSERT INTO %n.%n (Host, User, Priv) VALUES (%?,%?,%?) ON DUPLICATE KEY UPDATE Priv = values(Priv)", mysql.SystemDB, mysql.GlobalPrivTable, spec.User.Hostname, spec.User.Username, string(hack.String(privData))) + sql := new(strings.Builder) + sqlexec.MustFormatSQL(sql, "INSERT INTO %n.%n (Host, User, Priv) VALUES (%?,%?,%?) ON DUPLICATE KEY UPDATE Priv = values(Priv)", mysql.SystemDB, mysql.GlobalPrivTable, spec.User.Hostname, spec.User.Username, string(hack.String(privData))) + _, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) if err != nil { failedUsers = append(failedUsers, spec.User.String()) + needRollback = true } } } if len(failedUsers) > 0 { - // Commit the transaction even if we returns error - txn, err := e.ctx.Txn(true) - if err != nil { - return err - } - err = txn.Commit(tikvutil.SetSessionID(context.TODO(), e.ctx.GetSessionVars().ConnectionID)) - if err != nil { - return err - } - if !s.IfExists { + // Compatible with MySQL 8.0, `ALTER USER` realizes atomic operation. + if !s.IfExists || needRollback { return ErrCannotUser.GenWithStackByArgs("ALTER USER", strings.Join(failedUsers, ",")) } for _, user := range failedUsers { @@ -1176,7 +1654,30 @@ func (e *SimpleExec) executeAlterUser(ctx context.Context, s *ast.AlterUserStmt) e.ctx.GetSessionVars().StmtCtx.AppendNote(err) } } - return domain.GetDomain(e.ctx).NotifyUpdatePrivilege() + if _, err := sqlExecutor.ExecuteInternal(ctx, "commit"); err != nil { + return err + } + if err = domain.GetDomain(e.ctx).NotifyUpdatePrivilege(); err != nil { + return err + } + if disableSandBoxMode { + e.ctx.DisableSandBoxMode() + } + return nil +} + +func (e *SimpleExec) checkSandboxMode(specs []*ast.UserSpec) error { + for _, spec := range specs { + if spec.AuthOpt == nil { + continue + } + if spec.AuthOpt.ByAuthString || spec.AuthOpt.ByHashString { + if spec.User.CurrentUser || e.ctx.GetSessionVars().User.Username == spec.User.Username { + return nil + } + } + } + return errMustChangePassword.GenWithStackByArgs() } func (e *SimpleExec) executeGrantRole(ctx context.Context, s *ast.GrantRoleStmt) error { @@ -1246,10 +1747,9 @@ func (e *SimpleExec) executeRenameUser(s *ast.RenameUserStmt) error { } sqlExecutor := sysSession.(sqlexec.SQLExecutor) - if _, err := sqlExecutor.ExecuteInternal(ctx, "begin"); err != nil { + if _, err := sqlExecutor.ExecuteInternal(ctx, "BEGIN PESSIMISTIC"); err != nil { return err } - for _, userToUser := range s.UserToUsers { oldUser, newUser := userToUser.OldUser, userToUser.NewUser if len(newUser.Username) > auth.UserNameMaxLength { @@ -1322,6 +1822,12 @@ func (e *SimpleExec) executeRenameUser(s *ast.RenameUserStmt) error { break } + // rename passwordhistory from PasswordHistoryTable. + if err = renameUserHostInSystemTable(sqlExecutor, mysql.PasswordHistoryTable, "USER", "HOST", userToUser); err != nil { + failedUser = oldUser.String() + " TO " + newUser.String() + " " + mysql.PasswordHistoryTable + " error" + break + } + // rename relationship from mysql.global_grants // TODO: add global_grants into the parser // TODO: need update columns_priv once we implement columns_priv functionality. @@ -1426,6 +1932,14 @@ func (e *SimpleExec) executeDropUser(ctx context.Context, s *ast.DropUserStmt) e break } + // delete password history from mysql.password_history. + sql.Reset() + sqlexec.MustFormatSQL(sql, `DELETE FROM %n.%n WHERE Host = %? and User = %?;`, mysql.SystemDB, mysql.PasswordHistoryTable, strings.ToLower(user.Hostname), user.Username) + if _, err = sqlExecutor.ExecuteInternal(internalCtx, sql.String()); err != nil { + failedUsers = append(failedUsers, user.String()) + break + } + // delete privileges from mysql.global_priv sql.Reset() sqlexec.MustFormatSQL(sql, `DELETE FROM %n.%n WHERE Host = %? and User = %?;`, mysql.SystemDB, mysql.GlobalPrivTable, user.Hostname, user.Username) @@ -1546,7 +2060,7 @@ func userExists(ctx context.Context, sctx sessionctx.Context, name string, host // use the same internal executor to read within the same transaction, otherwise same as userExists func userExistsInternal(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, name string, host string) (bool, error) { sql := new(strings.Builder) - sqlexec.MustFormatSQL(sql, `SELECT * FROM %n.%n WHERE User=%? AND Host=%?;`, mysql.SystemDB, mysql.UserTable, name, strings.ToLower(host)) + sqlexec.MustFormatSQL(sql, `SELECT * FROM %n.%n WHERE User=%? AND Host=%? FOR UPDATE;`, mysql.SystemDB, mysql.UserTable, name, strings.ToLower(host)) recordSet, err := sqlExecutor.ExecuteInternal(ctx, sql.String()) if err != nil { return false, err @@ -1564,18 +2078,29 @@ func userExistsInternal(ctx context.Context, sqlExecutor sqlexec.SQLExecutor, na return rows > 0, err } -func (e *SimpleExec) userAuthPlugin(name string, host string) (string, error) { - pm := privilege.GetPrivilegeManager(e.ctx) - authplugin, err := pm.GetAuthPlugin(name, host) +func (e *SimpleExec) executeSetPwd(ctx context.Context, s *ast.SetPwdStmt) error { + ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnPrivilege) + sysSession, err := e.getSysSession() + defer clearSysSession(ctx, sysSession) + if err != nil { + return err + } + + sqlExecutor := sysSession.(sqlexec.SQLExecutor) + // session isolation level changed to READ-COMMITTED. + // When tidb is at the RR isolation level, executing `begin` will obtain a consistent state. + // When operating the same user concurrently, it may happen that historical versions are read. + // In order to avoid this risk, change the isolation level to RC. + _, err = sqlExecutor.ExecuteInternal(ctx, "set tx_isolation = 'READ-COMMITTED'") if err != nil { - return "", err + return err + } + if _, err := sqlExecutor.ExecuteInternal(ctx, "BEGIN PESSIMISTIC"); err != nil { + return err } - return authplugin, nil -} -func (e *SimpleExec) executeSetPwd(ctx context.Context, s *ast.SetPwdStmt) error { - ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnPrivilege) var u, h string + disableSandboxMode := false if s.User == nil || s.User.CurrentUser { if e.ctx.GetSessionVars().User == nil { return errors.New("Session error is empty") @@ -1591,18 +2116,29 @@ func (e *SimpleExec) executeSetPwd(ctx context.Context, s *ast.SetPwdStmt) error u = s.User.Username h = s.User.Hostname } - exists, err := userExists(ctx, e.ctx, u, h) + exists, err := userExistsInternal(ctx, sqlExecutor, u, h) if err != nil { return err } if !exists { return errors.Trace(ErrPasswordNoMatch) } + if e.ctx.InSandBoxMode() { + if s.User == nil || s.User.CurrentUser || + e.ctx.GetSessionVars().User.AuthUsername == u && e.ctx.GetSessionVars().User.AuthHostname == strings.ToLower(h) { + disableSandboxMode = true + } + } - authplugin, err := e.userAuthPlugin(u, h) + authplugin, err := privilege.GetPrivilegeManager(e.ctx).GetAuthPlugin(u, h) if err != nil { return err } + if e.isValidatePasswordEnabled() { + if err := pwdValidator.ValidatePassword(e.ctx.GetSessionVars(), s.Password); err != nil { + return err + } + } var pwd string switch authplugin { case mysql.AuthCachingSha2Password, mysql.AuthTiDBSM3Password: @@ -1614,13 +2150,38 @@ func (e *SimpleExec) executeSetPwd(ctx context.Context, s *ast.SetPwdStmt) error pwd = auth.EncodePassword(s.Password) } + // for Support Password Reuse Policy. + passwdlockinfo := + &passwordLockInfo{lockAccount: "", passwordHistory: notSpecified, + passwordReuseInterval: notSpecified, passwordHistoryFlag: false, + passwordReuseIntervalFlag: false} + // The empty password does not count in the password history and is subject to reuse at any time. + // https://dev.mysql.com/doc/refman/8.0/en/password-management.html#password-reuse-policy + if len(pwd) != 0 { + userDetail := &userInfo{h, u, passwdlockinfo, pwd} + err := checkPasswordReusePolicy(ctx, sqlExecutor, userDetail, e.ctx) + if err != nil { + return err + } + } // update mysql.user - exec := e.ctx.(sqlexec.RestrictedSQLExecutor) - _, _, err = exec.ExecRestrictedSQL(ctx, nil, `UPDATE %n.%n SET authentication_string=%? WHERE User=%? AND Host=%?;`, mysql.SystemDB, mysql.UserTable, pwd, u, strings.ToLower(h)) + sql := new(strings.Builder) + sqlexec.MustFormatSQL(sql, `UPDATE %n.%n SET authentication_string=%?,password_expired='N',password_last_changed=current_timestamp() WHERE User=%? AND Host=%?;`, mysql.SystemDB, mysql.UserTable, pwd, u, strings.ToLower(h)) + _, err = sqlExecutor.ExecuteInternal(ctx, sql.String()) if err != nil { return err } - return domain.GetDomain(e.ctx).NotifyUpdatePrivilege() + if _, err := sqlExecutor.ExecuteInternal(ctx, "commit"); err != nil { + return err + } + err = domain.GetDomain(e.ctx).NotifyUpdatePrivilege() + if err != nil { + return err + } + if disableSandboxMode { + e.ctx.DisableSandBoxMode() + } + return nil } func (e *SimpleExec) executeKillStmt(ctx context.Context, s *ast.KillStmt) error { diff --git a/executor/simple_test.go b/executor/simple_test.go index 8b284fb9b42e5..e18a2e1988b8d 100644 --- a/executor/simple_test.go +++ b/executor/simple_test.go @@ -105,7 +105,9 @@ func TestUserAttributes(t *testing.T) { // https://dev.mysql.com/doc/refman/8.0/en/alter-user.html#alter-user-comments-attributes rootTK.MustExec(`ALTER USER testuser1 ATTRIBUTE '{"age": 20, "sex": "male"}'`) rootTK.MustQueryWithContext(ctx, `SELECT attribute FROM information_schema.user_attributes WHERE user = 'testuser1'`).Check(testkit.Rows(`{"age": 20, "name": "Tom", "sex": "male"}`)) - rootTK.MustExec(`ALTER USER testuser1 ATTRIBUTE '{"sex": null}'`) + rootTK.MustExec(`ALTER USER testuser1 ATTRIBUTE '{"hobby": "soccer"}'`) + rootTK.MustQueryWithContext(ctx, `SELECT attribute FROM information_schema.user_attributes WHERE user = 'testuser1'`).Check(testkit.Rows(`{"age": 20, "hobby": "soccer", "name": "Tom", "sex": "male"}`)) + rootTK.MustExec(`ALTER USER testuser1 ATTRIBUTE '{"sex": null, "hobby": null}'`) rootTK.MustQueryWithContext(ctx, `SELECT attribute FROM information_schema.user_attributes WHERE user = 'testuser1'`).Check(testkit.Rows(`{"age": 20, "name": "Tom"}`)) rootTK.MustExec(`ALTER USER testuser1 COMMENT '5678'`) rootTK.MustQueryWithContext(ctx, `SELECT attribute FROM information_schema.user_attributes WHERE user = 'testuser1'`).Check(testkit.Rows(`{"age": 20, "comment": "5678", "name": "Tom"}`)) @@ -121,4 +123,178 @@ func TestUserAttributes(t *testing.T) { tk.MustQueryWithContext(ctx, `SELECT user, host, attribute FROM information_schema.user_attributes ORDER BY user`).Check( testkit.Rows("root % ", "testuser % {\"comment\": \"1234\"}", "testuser1 % {\"age\": 20, \"name\": \"Tom\"}", "testuser2 % ")) tk.MustGetErrCode(`SELECT user, host, user_attributes FROM mysql.user ORDER BY user`, mysql.ErrTableaccessDenied) + + // https://github.com/pingcap/tidb/issues/39207 + rootTK.MustExec("create user usr1@'%' identified by 'passord'") + rootTK.MustExec("alter user usr1 comment 'comment1'") + rootTK.MustQuery("select user_attributes from mysql.user where user = 'usr1'").Check(testkit.Rows(`{"metadata": {"comment": "comment1"}}`)) +} + +func TestValidatePassword(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + subtk := testkit.NewTestKit(t, store) + err := tk.Session().Auth(&auth.UserIdentity{Username: "root", Hostname: "%"}, nil, nil) + require.NoError(t, err) + tk.MustExec("CREATE USER ''@'localhost'") + tk.MustExec("GRANT ALL PRIVILEGES ON mysql.* TO ''@'localhost';") + err = subtk.Session().Auth(&auth.UserIdentity{Hostname: "localhost"}, nil, nil) + require.NoError(t, err) + + authPlugins := []string{mysql.AuthNativePassword, mysql.AuthCachingSha2Password, mysql.AuthTiDBSM3Password} + tk.MustQuery("SELECT @@global.validate_password.enable").Check(testkit.Rows("0")) + tk.MustExec("SET GLOBAL validate_password.enable = 1") + tk.MustQuery("SELECT @@global.validate_password.enable").Check(testkit.Rows("1")) + + for _, authPlugin := range authPlugins { + tk.MustExec("DROP USER IF EXISTS testuser") + tk.MustExec(fmt.Sprintf("CREATE USER testuser IDENTIFIED WITH %s BY '!Abc12345678'", authPlugin)) + + tk.MustExec("SET GLOBAL validate_password.policy = 'LOW'") + // check user name + tk.MustQuery("SELECT @@global.validate_password.check_user_name").Check(testkit.Rows("1")) + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!Abcdroot1234'", "Password Contains User Name") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!Abcdtoor1234'", "Password Contains Reversed User Name") + tk.MustExec("SET PASSWORD FOR 'testuser' = 'testuser'") // password the same as the user name, but run by root + tk.MustExec("ALTER USER testuser IDENTIFIED BY 'testuser'") + tk.MustExec("SET GLOBAL validate_password.check_user_name = 0") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abcdroot1234'") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abcdtoor1234'") + tk.MustExec("SET GLOBAL validate_password.check_user_name = 1") + + // LOW: Length + tk.MustExec("SET GLOBAL validate_password.length = 8") + tk.MustQuery("SELECT @@global.validate_password.length").Check(testkit.Rows("8")) + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '1234567'", "Require Password Length: 8") + tk.MustExec("SET GLOBAL validate_password.length = 12") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!Abcdefg123'", "Require Password Length: 12") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abcdefg1234'") + tk.MustExec("SET GLOBAL validate_password.length = 8") + + // MEDIUM: Length; numeric, lowercase/uppercase, and special characters + tk.MustExec("SET GLOBAL validate_password.policy = 'MEDIUM'") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abc1234567'") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!ABC1234567'", "Require Password Lowercase Count: 1") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!abc1234567'", "Require Password Uppercase Count: 1") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!ABCDabcd'", "Require Password Digit Count: 1") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY 'Abc1234567'", "Require Password Non-alphanumeric Count: 1") + tk.MustExec("SET GLOBAL validate_password.special_char_count = 0") + tk.MustExec("ALTER USER testuser IDENTIFIED BY 'Abc1234567'") + tk.MustExec("SET GLOBAL validate_password.special_char_count = 1") + tk.MustExec("SET GLOBAL validate_password.length = 3") + tk.MustQuery("SELECT @@GLOBAL.validate_password.length").Check(testkit.Rows("4")) + + // STRONG: Length; numeric, lowercase/uppercase, and special characters; dictionary file + tk.MustExec("SET GLOBAL validate_password.policy = 'STRONG'") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abc1234567'") + tk.MustExec(fmt.Sprintf("SET GLOBAL validate_password.dictionary = '%s'", "1234;5678")) + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abc123567'") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abc43218765'") + tk.MustContainErrMsg("ALTER USER testuser IDENTIFIED BY '!Abc1234567'", "Password contains word in the dictionary") + tk.MustExec("SET GLOBAL validate_password.dictionary = ''") + tk.MustExec("ALTER USER testuser IDENTIFIED BY '!Abc1234567'") + + // "IDENTIFIED AS 'xxx'" is not affected by validation + tk.MustExec(fmt.Sprintf("ALTER USER testuser IDENTIFIED WITH '%s' AS ''", authPlugin)) + } + tk.MustContainErrMsg("CREATE USER 'testuser1'@'localhost'", "Your password does not satisfy the current policy requirements") + tk.MustContainErrMsg("CREATE USER 'testuser1'@'localhost' IDENTIFIED WITH 'caching_sha2_password'", "Your password does not satisfy the current policy requirements") + tk.MustContainErrMsg("CREATE USER 'testuser1'@'localhost' IDENTIFIED WITH 'caching_sha2_password' AS ''", "Your password does not satisfy the current policy requirements") + + // if the username is '', all password can pass the check_user_name + subtk.MustQuery("SELECT user(), current_user()").Check(testkit.Rows("@localhost @localhost")) + subtk.MustQuery("SELECT @@global.validate_password.check_user_name").Check(testkit.Rows("1")) + subtk.MustQuery("SELECT @@global.validate_password.enable").Check(testkit.Rows("1")) + tk.MustExec("SET GLOBAL validate_password.number_count = 0") + tk.MustExec("SET GLOBAL validate_password.special_char_count = 0") + tk.MustExec("SET GLOBAL validate_password.mixed_case_count = 0") + tk.MustExec("SET GLOBAL validate_password.length = 0") + subtk.MustExec("ALTER USER ''@'localhost' IDENTIFIED BY ''") + subtk.MustExec("ALTER USER ''@'localhost' IDENTIFIED BY 'abcd'") + + // CREATE ROLE is not affected by password validation + tk.MustExec("SET GLOBAL validate_password.enable = 1") + tk.MustExec("SET GLOBAL validate_password.number_count = default") + tk.MustExec("SET GLOBAL validate_password.special_char_count = default") + tk.MustExec("SET GLOBAL validate_password.mixed_case_count = default") + tk.MustExec("SET GLOBAL validate_password.length = default") + tk.MustExec("CREATE ROLE role1") +} + +func expectedPasswordExpiration(t *testing.T, tk *testkit.TestKit, testuser, expired string, lifetime string) { + res := tk.MustQuery(fmt.Sprintf("SELECT password_expired, password_last_changed, password_lifetime FROM mysql.user WHERE user = '%s'", testuser)) + rows := res.Rows() + require.NotEmpty(t, rows) + row := rows[0] + require.Equal(t, 3, len(row)) + require.Equal(t, expired, row[0].(string), testuser) + require.True(t, len(row[1].(string)) > 0, testuser) + require.Equal(t, lifetime, row[2].(string), testuser) +} + +func TestPasswordExpiration(t *testing.T) { + store, _ := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + + // CREATE USER + tk.MustExec(`CREATE USER testuser`) + expectedPasswordExpiration(t, tk, "testuser", "N", "") + tk.MustExec(`CREATE USER testuser1 PASSWORD EXPIRE`) + expectedPasswordExpiration(t, tk, "testuser1", "Y", "") + tk.MustExec(`CREATE USER testuser2 PASSWORD EXPIRE DEFAULT`) + expectedPasswordExpiration(t, tk, "testuser2", "N", "") + tk.MustExec(`CREATE USER testuser3 PASSWORD EXPIRE NEVER`) + expectedPasswordExpiration(t, tk, "testuser3", "N", "0") + tk.MustExec(`CREATE USER testuser4 PASSWORD EXPIRE INTERVAL 3 DAY`) + expectedPasswordExpiration(t, tk, "testuser4", "N", "3") + tk.MustExec(`CREATE ROLE role1`) + expectedPasswordExpiration(t, tk, "role1", "Y", "") + + // ALTER USER + testcases := []struct { + user string + expired string + }{ + {"testuser", "N"}, + {"testuser1", "Y"}, + {"testuser2", "N"}, + {"testuser3", "N"}, + {"testuser4", "N"}, + {"role1", "Y"}, + } + for _, testcase := range testcases { + tk.MustExec(fmt.Sprintf("ALTER USER %s PASSWORD EXPIRE NEVER", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, testcase.expired, "0") + tk.MustExec(fmt.Sprintf("ALTER USER %s PASSWORD EXPIRE DEFAULT", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, testcase.expired, "") + tk.MustExec(fmt.Sprintf("ALTER USER %s PASSWORD EXPIRE INTERVAL 3 DAY", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, testcase.expired, "3") + tk.MustExec(fmt.Sprintf("ALTER USER %s PASSWORD EXPIRE", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, "Y", "3") + tk.MustExec(fmt.Sprintf("ALTER USER %s IDENTIFIED BY '' PASSWORD EXPIRE", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, "Y", "3") + tk.MustExec(fmt.Sprintf("ALTER USER %s IDENTIFIED WITH 'mysql_native_password' AS ''", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, "N", "3") + tk.MustExec(fmt.Sprintf("ALTER USER %s IDENTIFIED BY ''", testcase.user)) + expectedPasswordExpiration(t, tk, testcase.user, "N", "3") + } + + // SET PASSWORD + tk.MustExec("ALTER USER testuser PASSWORD EXPIRE") + expectedPasswordExpiration(t, tk, "testuser", "Y", "3") + tk.MustExec("SET PASSWORD FOR testuser = '1234'") + expectedPasswordExpiration(t, tk, "testuser", "N", "3") + + tk.MustGetErrCode(`CREATE USER ''@localhost IDENTIFIED BY 'pass' PASSWORD EXPIRE`, mysql.ErrPasswordExpireAnonymousUser) + tk.MustExec(`CREATE USER ''@localhost IDENTIFIED BY 'pass'`) + tk.MustGetErrCode(`ALTER USER ''@localhost PASSWORD EXPIRE`, mysql.ErrPasswordExpireAnonymousUser) + + // different cleartext authentication plugin + for _, authplugin := range []string{mysql.AuthNativePassword, mysql.AuthCachingSha2Password, mysql.AuthTiDBSM3Password} { + tk.MustExec("DROP USER IF EXISTS 'u1'@'localhost'") + tk.MustExec(fmt.Sprintf("CREATE USER 'u1'@'localhost' IDENTIFIED WITH '%s'", authplugin)) + tk.MustExec("ALTER USER 'u1'@'localhost' IDENTIFIED BY 'pass'") + tk.MustExec("ALTER USER 'u1'@'localhost' PASSWORD EXPIRE") + tk.MustQuery("SELECT password_expired FROM mysql.user WHERE user = 'u1'").Check(testkit.Rows("Y")) + } } diff --git a/executor/simpletest/simple_test.go b/executor/simpletest/simple_test.go index 738a5808be6fa..b774892d70ea7 100644 --- a/executor/simpletest/simple_test.go +++ b/executor/simpletest/simple_test.go @@ -747,7 +747,7 @@ func TestUser(t *testing.T) { alterUserSQL = `ALTER USER 'test1'@'localhost' IDENTIFIED BY '222', 'test_not_exist'@'localhost' IDENTIFIED BY '111';` tk.MustGetErrCode(alterUserSQL, mysql.ErrCannotUser) result = tk.MustQuery(`SELECT authentication_string FROM mysql.User WHERE User="test1" and Host="localhost"`) - result.Check(testkit.Rows(auth.EncodePassword("222"))) + result.Check(testkit.Rows(auth.EncodePassword("111"))) alterUserSQL = `ALTER USER 'test4'@'localhost' IDENTIFIED WITH 'auth_socket';` tk.MustExec(alterUserSQL) result = tk.MustQuery(`SELECT plugin FROM mysql.User WHERE User="test4" and Host="localhost"`) @@ -1105,3 +1105,241 @@ func TestDropStatsForMultipleTable(t *testing.T) { require.True(t, statsTbl2.Pseudo) h.SetLease(0) } + +func TestUserReuseControl(t *testing.T) { + store := testkit.CreateMockStore(t) + rootTK := testkit.NewTestKit(t, store) + rootTK.MustQuery(`show variables like "password_history"`).Check(testkit.Rows("password_history 0")) + rootTK.MustQuery(`show variables like "password_reuse_interval"`).Check(testkit.Rows("password_reuse_interval 0")) + rootTK.MustExec(`set global password_history = -1`) + rootTK.MustExec(`set global password_reuse_interval = -1`) + rootTK.MustQuery(`show variables like "password_history"`).Check(testkit.Rows("password_history 0")) + rootTK.MustQuery(`show variables like "password_reuse_interval"`).Check(testkit.Rows("password_reuse_interval 0")) + rootTK.MustExec(`set global password_history = 4294967295`) + rootTK.MustExec(`set global password_reuse_interval = 4294967295`) + rootTK.MustQuery(`show variables like "password_history"`).Check(testkit.Rows("password_history 4294967295")) + rootTK.MustQuery(`show variables like "password_reuse_interval"`).Check(testkit.Rows("password_reuse_interval 4294967295")) + rootTK.MustExec(`set global password_history = 4294967296`) + rootTK.MustExec(`set global password_reuse_interval = 4294967296`) + rootTK.MustQuery(`show variables like "password_history"`).Check(testkit.Rows("password_history 4294967295")) + rootTK.MustQuery(`show variables like "password_reuse_interval"`).Check(testkit.Rows("password_reuse_interval 4294967295")) + rootTK.MustGetErrCode(`set session password_history = 42949`, 1229) + rootTK.MustGetErrCode(`set session password_reuse_interval = 42949`, 1229) +} + +func TestUserReuseInfo(t *testing.T) { + store := testkit.CreateMockStore(t) + rootTK := testkit.NewTestKit(t, store) + rootTK.MustExec(`CREATE USER testReuse`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(` `)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY 5`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`5 `)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY 0`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`0 `)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY DEFAULT`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(` `)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY 65536`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 `)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD REUSE INTERVAL 5 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 5`)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD REUSE INTERVAL 0 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 0`)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD REUSE INTERVAL DEFAULT`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 `)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD REUSE INTERVAL 65536 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 65535`)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY 6 PASSWORD REUSE INTERVAL 6 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`6 6`)) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY 6 PASSWORD HISTORY 7 `) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`7 6`)) + + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustExec(`CREATE USER testReuse PASSWORD HISTORY 5`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`5 `)) + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustExec(`CREATE USER testReuse PASSWORD REUSE INTERVAL 5 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(` 5`)) + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustExec(`CREATE USER testReuse PASSWORD REUSE INTERVAL 5 DAY PASSWORD REUSE INTERVAL 6 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(` 6`)) + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustExec(`CREATE USER testReuse PASSWORD HISTORY 5 PASSWORD REUSE INTERVAL 6 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`5 6`)) + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustExec(`CREATE USER testReuse PASSWORD REUSE INTERVAL 6 DAY PASSWORD HISTORY 5`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`5 6`)) + + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustGetErrCode(`CREATE USER testReuse PASSWORD HISTORY -5`, 1064) + rootTK.MustGetErrCode(`CREATE USER testReuse PASSWORD REUSE INTERVAL -6 DAY`, 1064) + rootTK.MustExec(`CREATE USER testReuse PASSWORD HISTORY 65535 PASSWORD REUSE INTERVAL 65535 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 65535`)) + rootTK.MustExec(`drop USER testReuse`) + rootTK.MustExec(`CREATE USER testReuse PASSWORD HISTORY 65536 PASSWORD REUSE INTERVAL 65536 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user = 'testReuse'`).Check(testkit.Rows(`65535 65535`)) +} + +func TestUserReuseFunction(t *testing.T) { + store := testkit.CreateMockStore(t) + rootTK := testkit.NewTestKit(t, store) + rootTK.MustExec(`CREATE USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + rootTK.MustExec(`set global password_history = 1;`) + rootTK.MustExec(`alter USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test'`, 3638) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`DROP USER testReuse`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + + rootTK.MustExec(`set global password_history = 0;`) + rootTK.MustExec(`set global password_reuse_interval = 1;`) + rootTK.MustExec(`CREATE USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test'`, 3638) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`2`)) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`3`)) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`4`)) + rootTK.MustExec(`update mysql.password_history set Password_timestamp = date_sub(Password_timestamp,interval '1 0:0:1' DAY_SECOND)`) + rootTK.MustExec(`alter USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`drop USER testReuse `) + + rootTK.MustExec(`set global password_reuse_interval = 0;`) + //password nil is not stored + rootTK.MustExec(`CREATE USER testReuse PASSWORD HISTORY 5 PASSWORD REUSE INTERVAL 6 DAY`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + rootTK.MustExec(`drop USER testReuse `) + + rootTK.MustExec(`CREATE USER testReuse identified by 'test' PASSWORD HISTORY 5`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`4`)) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test'`, 3638) + rootTK.MustExec(`alter USER testReuse identified by 'test4'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`5`)) + rootTK.MustExec(`alter USER testReuse identified by 'test5'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`5`)) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test1'`, 3638) + rootTK.MustExec(`alter USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`5`)) + rootTK.MustExec(`drop USER testReuse`) + + rootTK.MustExec(`CREATE USER testReuse identified by 'test' PASSWORD HISTORY 5 PASSWORD REUSE INTERVAL 3 DAY`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustExec(`alter USER testReuse identified by 'test4'`) + rootTK.MustExec(`alter USER testReuse identified by 'test5'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`6`)) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test'`, 3638) + rootTK.MustExec(`update mysql.password_history set Password_timestamp = date_sub(Password_timestamp,interval '3 0:0:1' DAY_SECOND) where user = 'testReuse' order by Password_timestamp asc limit 1`) + rootTK.MustExec(`alter USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`6`)) + rootTK.MustExec(`drop USER testReuse`) + + rootTK.MustExec(`CREATE USER testReuse identified by 'test' PASSWORD HISTORY 5 PASSWORD REUSE INTERVAL 3 DAY`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustExec(`update mysql.password_history set Password_timestamp = date_sub(Password_timestamp,interval '3 0:0:1' DAY_SECOND) where user = 'testReuse' order by Password_timestamp asc limit 1`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`4`)) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test'`, 3638) + rootTK.MustExec(`ALTER USER testReuse PASSWORD HISTORY 3`) + rootTK.MustExec(`alter USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`4`)) + rootTK.MustExec(`drop USER testReuse`) + + rootTK.MustExec(`set global password_history = 1;`) + rootTK.MustExec(`set global password_reuse_interval = 1;`) + rootTK.MustExec(`CREATE USER testReuse identified by 'test' PASSWORD HISTORY 0 PASSWORD REUSE INTERVAL 0 DAY`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + rootTK.MustExec(`alter USER testReuse identified by 'test'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + rootTK.MustExec(`drop USER testReuse`) + + rootTK.MustExec(`set global password_history = 0;`) + rootTK.MustExec(`set global password_reuse_interval = 360000000;`) + rootTK.MustExec(`CREATE USER testReuse identified by 'test'`) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustGetErrCode(`alter USER testReuse identified by 'test'`, 3638) + rootTK.MustGetErrCode(`set PASSWORD FOR testReuse = 'test'`, 3638) + rootTK.MustExec(`alter USER testReuse identified by ''`) + rootTK.MustExec(`alter USER testReuse identified by ''`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`2`)) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustExec(`set global password_reuse_interval = 4294967295;`) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`4`)) + rootTK.MustExec(`set PASSWORD FOR testReuse = 'test4'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`5`)) + rootTK.MustExec(`drop USER testReuse`) + + rootTK.MustExec(`set global password_reuse_interval = 0;`) + rootTK.MustExec(`CREATE USER testReuse identified by 'test' PASSWORD HISTORY 5`) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`2`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1' PASSWORD HISTORY 0`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1' PASSWORD HISTORY 2 PASSWORD REUSE INTERVAL 1 DAY`) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustExec(`alter USER testReuse identified by 'test1' PASSWORD HISTORY 2 PASSWORD REUSE INTERVAL 0 DAY`) +} + +func TestUserReuseMultiuser(t *testing.T) { + store := testkit.CreateMockStore(t) + rootTK := testkit.NewTestKit(t, store) + //alter multi user success + rootTK.MustExec(`CREATE USER testReuse identified by 'test', testReuse1 identified by 'test', testReuse2 identified by 'test' PASSWORD HISTORY 65535 PASSWORD REUSE INTERVAL 65535 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user like 'testReuse%'`).Check(testkit.Rows(`65535 65535`, `65535 65535`, `65535 65535`)) + rootTK.MustExec(`ALTER USER testReuse identified by 'test1', testReuse1 identified by 'test1', testReuse2 identified by 'test1' PASSWORD HISTORY 3 PASSWORD REUSE INTERVAL 3 DAY`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user like 'testReuse%'`).Check(testkit.Rows(`3 3`, `3 3`, `3 3`)) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user like 'testReuse%' group by user`).Check(testkit.Rows(`2`, `2`, `2`)) + //alter multi user fail + rootTK.MustExec(`CREATE USER testReuse3 identified by 'test'`) + rootTK.MustQuery(`SELECT Password_reuse_history,Password_reuse_time FROM mysql.user WHERE user like 'testReuse%'`).Check(testkit.Rows(`3 3`, `3 3`, `3 3`, ` `)) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user like 'testReuse%' group by user`).Check(testkit.Rows(`2`, `2`, `2`)) + rootTK.MustGetErrCode(`ALTER USER testReuse identified by 'test1', testReuse3 identified by 'test1'`, 3638) + //drop user + rootTK.MustExec(`drop User testReuse, testReuse1, testReuse2, testReuse3`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user like 'testReuse%' `).Check(testkit.Rows(`0`)) +} + +func TestUserReuseRename(t *testing.T) { + store := testkit.CreateMockStore(t) + rootTK := testkit.NewTestKit(t, store) + rootTK.MustExec(`CREATE USER testReuse identified by 'test' PASSWORD HISTORY 5`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`1`)) + rootTK.MustExec(`alter USER testReuse identified by 'test1'`) + rootTK.MustExec(`alter USER testReuse identified by 'test2'`) + rootTK.MustExec(`alter USER testReuse identified by 'test3'`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`4`)) + rootTK.MustExec(`rename USER testReuse to testReuse1`) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse'`).Check(testkit.Rows(`0`)) + rootTK.MustQuery(`SELECT count(*) FROM mysql.password_history WHERE user = 'testReuse1'`).Check(testkit.Rows(`4`)) +} + +func TestUserAlterUser(t *testing.T) { + store := testkit.CreateMockStore(t) + rootTK := testkit.NewTestKit(t, store) + rootTK.MustExec(`CREATE USER test1 IDENTIFIED WITH 'mysql_native_password' BY '1234'`) + alterUserSQL := `ALTER USER 'test1' IDENTIFIED BY '222', 'test_not_exist'@'localhost' IDENTIFIED BY '111';` + rootTK.MustGetErrCode(alterUserSQL, mysql.ErrCannotUser) + result := rootTK.MustQuery(`SELECT authentication_string FROM mysql.User WHERE User="test1" and Host="%"`) + result.Check(testkit.Rows(auth.EncodePassword("1234"))) + alterUserSQL = `ALTER USER IF EXISTS 'test1' IDENTIFIED BY '222', 'test_not_exist'@'localhost' IDENTIFIED BY '111';` + rootTK.MustExec(alterUserSQL) + rootTK.MustQuery("show warnings").Check(testkit.RowsWithSep("|", "Note|3162|User 'test_not_exist'@'localhost' does not exist.")) + result = rootTK.MustQuery(`SELECT authentication_string FROM mysql.User WHERE User="test1" and Host="%"`) + result.Check(testkit.Rows(auth.EncodePassword("222"))) +} diff --git a/executor/table_reader.go b/executor/table_reader.go index 500b3ba3ab771..984212dcf7328 100644 --- a/executor/table_reader.go +++ b/executor/table_reader.go @@ -61,7 +61,7 @@ func (sr selectResultHook) SelectResult(ctx context.Context, sctx sessionctx.Con } type kvRangeBuilder interface { - buildKeyRange(ranges []*ranger.Range) ([]kv.KeyRange, error) + buildKeyRange(ranges []*ranger.Range) ([][]kv.KeyRange, error) buildKeyRangeSeparately(ranges []*ranger.Range) ([]int64, [][]kv.KeyRange, error) } @@ -205,13 +205,13 @@ func (e *TableReaderExecutor) Open(ctx context.Context) error { if err != nil { return err } - e.kvRanges = append(e.kvRanges, kvReq.KeyRanges...) + e.kvRanges = kvReq.KeyRanges.AppendSelfTo(e.kvRanges) if len(secondPartRanges) != 0 { kvReq, err = e.buildKVReq(ctx, secondPartRanges) if err != nil { return err } - e.kvRanges = append(e.kvRanges, kvReq.KeyRanges...) + e.kvRanges = kvReq.KeyRanges.AppendSelfTo(e.kvRanges) } return nil } @@ -256,7 +256,7 @@ func (e *TableReaderExecutor) Next(ctx context.Context, req *chunk.Chunk) error return err } - err := FillVirtualColumnValue(e.virtualColumnRetFieldTypes, e.virtualColumnIndex, e.schema, e.columns, e.ctx, req) + err := table.FillVirtualColumnValue(e.virtualColumnRetFieldTypes, e.virtualColumnIndex, e.schema.Columns, e.columns, e.ctx, req) if err != nil { return err } @@ -314,10 +314,10 @@ func (e *TableReaderExecutor) buildResp(ctx context.Context, ranges []*ranger.Ra if err != nil { return nil, err } - slices.SortFunc(kvReq.KeyRanges, func(i, j kv.KeyRange) bool { + kvReq.KeyRanges.SortByFunc(func(i, j kv.KeyRange) bool { return bytes.Compare(i.StartKey, j.StartKey) < 0 }) - e.kvRanges = append(e.kvRanges, kvReq.KeyRanges...) + e.kvRanges = kvReq.KeyRanges.AppendSelfTo(e.kvRanges) result, err := e.SelectResult(ctx, e.ctx, kvReq, retTypes(e), e.feedback, getPhysicalPlanIDs(e.plans), e.id) if err != nil { @@ -409,7 +409,7 @@ func (e *TableReaderExecutor) buildKVReq(ctx context.Context, ranges []*ranger.R if err != nil { return nil, err } - reqBuilder = builder.SetKeyRanges(kvRange) + reqBuilder = builder.SetPartitionKeyRanges(kvRange) } else { reqBuilder = builder.SetHandleRanges(e.ctx.GetSessionVars().StmtCtx, getPhysicalTableID(e.table), e.table.Meta() != nil && e.table.Meta().IsCommonHandle, ranges, e.feedback) } diff --git a/executor/testdata/executor_suite_out.json b/executor/testdata/executor_suite_out.json index c06ee935e8b37..e0fbfecb07095 100644 --- a/executor/testdata/executor_suite_out.json +++ b/executor/testdata/executor_suite_out.json @@ -674,7 +674,7 @@ { "SQL": "select count(*) from t as t1 inner join t as t2 on t1.c1 = t2.c1 where t1.c1 != NULL", "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#7", + "StreamAgg 1.00 root funcs:count(1)->Column#7", "└─MergeJoin 0.00 root inner join, left key:test.t.c1, right key:test.t.c1", " ├─TableDual(Build) 0.00 root rows:0", " └─TableDual(Probe) 0.00 root rows:0" @@ -704,7 +704,7 @@ { "SQL": "select count(*) from t as t1 left join t as t2 on t1.c1 = t2.c1 where t1.c1 != NULL", "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#7", + "StreamAgg 1.00 root funcs:count(1)->Column#7", "└─MergeJoin 0.00 root left outer join, left key:test.t.c1, right key:test.t.c1", " ├─TableDual(Build) 0.00 root rows:0", " └─TableDual(Probe) 0.00 root rows:0" diff --git a/executor/tiflashtest/tiflash_test.go b/executor/tiflashtest/tiflash_test.go index becdb2ec1956c..2198182a8950e 100644 --- a/executor/tiflashtest/tiflash_test.go +++ b/executor/tiflashtest/tiflash_test.go @@ -462,6 +462,7 @@ func TestPartitionTable(t *testing.T) { store := testkit.CreateMockStore(t, withMockTiFlash(2)) tk := testkit.NewTestKit(t, store) tk.MustExec("use test") + tk.MustExec("set tidb_cost_model_version=1") tk.MustExec("drop table if exists t") tk.MustExec("drop table if exists t1") tk.MustExec("drop table if exists t2") @@ -1206,6 +1207,35 @@ func TestAggPushDownCountStar(t *testing.T) { tk.MustQuery("select count(*) from c, o where c.c_id=o.c_id").Check(testkit.Rows("5")) } +func TestGroupStreamAggOnTiFlash(t *testing.T) { + store := testkit.CreateMockStore(t, withMockTiFlash(2)) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists foo") + tk.MustExec("create table foo(a int, b int, c int, d int, primary key(a,b,c,d))") + tk.MustExec("alter table foo set tiflash replica 1") + tk.MustExec("insert into foo values(1,2,3,1),(1,2,3,6),(1,2,3,5)," + + "(1,2,3,2),(1,2,3,4),(1,2,3,7),(1,2,3,3),(1,2,3,0)") + tb := external.GetTableByName(t, tk, "test", "foo") + err := domain.GetDomain(tk.Session()).DDL().UpdateTableReplicaInfo(tk.Session(), tb.Meta().ID, true) + require.NoError(t, err) + tk.MustExec("set @@tidb_allow_mpp=0") + sql := "select a,b,c,count(*) from foo group by a,b,c order by a,b,c" + tk.MustQuery(sql).Check(testkit.Rows("1 2 3 8")) + rows := tk.MustQuery("explain " + sql).Rows() + + for _, row := range rows { + resBuff := bytes.NewBufferString("") + fmt.Fprintf(resBuff, "%s\n", row) + res := resBuff.String() + // StreamAgg with group keys on TiFlash is not supported + if strings.Contains(res, "tiflash") { + require.NotContains(t, res, "StreamAgg") + } + } +} + func TestTiflashEmptyDynamicPruneResult(t *testing.T) { store := testkit.CreateMockStore(t, withMockTiFlash(2)) tk := testkit.NewTestKit(t, store) diff --git a/executor/update.go b/executor/update.go index cf0a6ae2e33f4..0068392653cdd 100644 --- a/executor/update.go +++ b/executor/update.go @@ -434,6 +434,7 @@ func (e *UpdateExec) Close() error { if err == nil && txn.Valid() && txn.GetSnapshot() != nil { txn.GetSnapshot().SetOption(kv.CollectRuntimeStats, nil) } + defer e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } return e.children[0].Close() } @@ -463,7 +464,6 @@ func (e *UpdateExec) collectRuntimeStatsEnabled() bool { SnapshotRuntimeStats: &txnsnapshot.SnapshotRuntimeStats{}, AllocatorRuntimeStats: autoid.NewAllocatorRuntimeStats(), } - e.ctx.GetSessionVars().StmtCtx.RuntimeStatsColl.RegisterStats(e.id, e.stats) } return true } diff --git a/executor/write.go b/executor/write.go index 01359b56a2571..363bb097fd02c 100644 --- a/executor/write.go +++ b/executor/write.go @@ -57,12 +57,6 @@ func updateRecord(ctx context.Context, sctx sessionctx.Context, h kv.Handle, old defer span1.Finish() ctx = opentracing.ContextWithSpan(ctx, span1) } - txn, err := sctx.Txn(false) - if err != nil { - return false, err - } - memUsageOfTxnState := txn.Size() - defer memTracker.Consume(int64(txn.Size() - memUsageOfTxnState)) sc := sctx.GetSessionVars().StmtCtx changed, handleChanged := false, false // onUpdateSpecified is for "UPDATE SET ts_field = old_value", the @@ -115,7 +109,7 @@ func updateRecord(ctx context.Context, sctx sessionctx.Context, h kv.Handle, old if err != nil { return false, err } - if err = t.Allocators(sctx).Get(autoid.RowIDAllocType).Rebase(ctx, recordID, true); err != nil { + if err = t.Allocators(sctx).Get(autoid.AutoIncrementType).Rebase(ctx, recordID, true); err != nil { return false, err } } @@ -207,7 +201,7 @@ func updateRecord(ctx context.Context, sctx sessionctx.Context, h kv.Handle, old } } else { // Update record to new value and update index. - if err = t.UpdateRecord(ctx, sctx, h, oldData, newData, modified); err != nil { + if err := t.UpdateRecord(ctx, sctx, h, oldData, newData, modified); err != nil { if terr, ok := errors.Cause(err).(*terror.Error); sctx.GetSessionVars().StmtCtx.IgnoreNoPartition && ok && terr.Code() == errno.ErrNoPartitionForGivenValue { return false, nil } diff --git a/expression/BUILD.bazel b/expression/BUILD.bazel index 032c44054dba2..c7304642c544a 100644 --- a/expression/BUILD.bazel +++ b/expression/BUILD.bazel @@ -97,6 +97,7 @@ go_library( "//util/mathutil", "//util/mock", "//util/parser", + "//util/password-validation", "//util/plancodec", "//util/printer", "//util/sem", @@ -110,6 +111,7 @@ go_library( "@com_github_pingcap_errors//:errors", "@com_github_pingcap_failpoint//:failpoint", "@com_github_pingcap_tipb//go-tipb", + "@com_github_pkg_errors//:errors", "@com_github_tikv_client_go_v2//oracle", "@org_golang_x_exp//slices", "@org_golang_x_tools//container/intsets", diff --git a/expression/builtin_compare.go b/expression/builtin_compare.go index 3baa86b635ba6..4411f4b6b90ff 100644 --- a/expression/builtin_compare.go +++ b/expression/builtin_compare.go @@ -28,6 +28,7 @@ import ( "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/collate" "github.com/pingcap/tipb/go-tipb" + "github.com/pkg/errors" ) var ( @@ -1575,6 +1576,11 @@ func (c *compareFunctionClass) refineArgs(ctx sessionctx.Context, args []Express // here and skip this refine operation in all other cases for safety. if (arg0IsInt && !arg0IsCon && arg1IsString && arg1IsCon) || (arg1IsInt && !arg1IsCon && arg0IsString && arg0IsCon) { ctx.GetSessionVars().StmtCtx.SkipPlanCache = true + if arg1IsString { + ctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: '%v' may be converted to INT", arg1.String())) + } else { // arg0IsString + ctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: '%v' may be converted to INT", arg0.String())) + } RemoveMutableConst(ctx, args) } else { return args diff --git a/expression/builtin_encryption.go b/expression/builtin_encryption.go index a206a9d4970bb..fb451f9714cd4 100644 --- a/expression/builtin_encryption.go +++ b/expression/builtin_encryption.go @@ -37,6 +37,7 @@ import ( "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/encrypt" + pwdValidator "github.com/pingcap/tidb/util/password-validation" "github.com/pingcap/tipb/go-tipb" ) @@ -73,6 +74,7 @@ var ( _ builtinFunc = &builtinSHA2Sig{} _ builtinFunc = &builtinUncompressSig{} _ builtinFunc = &builtinUncompressedLengthSig{} + _ builtinFunc = &builtinValidatePasswordStrengthSig{} ) // aesModeAttr indicates that the key length and iv attribute for specific block_encryption_mode. @@ -728,7 +730,6 @@ func (c *sm3FunctionClass) getFunction(ctx sessionctx.Context, args []Expression bf.tp.SetCollate(collate) bf.tp.SetFlen(40) sig := &builtinSM3Sig{bf} - //sig.setPbCode(tipb.ScalarFuncSig_SM3) // TODO return sig, nil } @@ -1010,5 +1011,66 @@ type validatePasswordStrengthFunctionClass struct { } func (c *validatePasswordStrengthFunctionClass) getFunction(ctx sessionctx.Context, args []Expression) (builtinFunc, error) { - return nil, errFunctionNotExists.GenWithStackByArgs("FUNCTION", "VALIDATE_PASSWORD_STRENGTH") + if err := c.verifyArgs(args); err != nil { + return nil, err + } + bf, err := newBaseBuiltinFuncWithTp(ctx, c.funcName, args, types.ETInt, types.ETString) + if err != nil { + return nil, err + } + bf.tp.SetFlen(21) + sig := &builtinValidatePasswordStrengthSig{bf} + return sig, nil +} + +type builtinValidatePasswordStrengthSig struct { + baseBuiltinFunc +} + +func (b *builtinValidatePasswordStrengthSig) Clone() builtinFunc { + newSig := &builtinValidatePasswordStrengthSig{} + newSig.cloneFrom(&b.baseBuiltinFunc) + return newSig +} + +// evalInt evals VALIDATE_PASSWORD_STRENGTH(str). +// See https://dev.mysql.com/doc/refman/8.0/en/encryption-functions.html#function_validate-password-strength +func (b *builtinValidatePasswordStrengthSig) evalInt(row chunk.Row) (int64, bool, error) { + globalVars := b.ctx.GetSessionVars().GlobalVarsAccessor + str, isNull, err := b.args[0].EvalString(b.ctx, row) + if err != nil || isNull { + return 0, true, err + } else if len([]rune(str)) < 4 { + return 0, false, nil + } + if validation, err := globalVars.GetGlobalSysVar(variable.ValidatePasswordEnable); err != nil { + return 0, true, err + } else if !variable.TiDBOptOn(validation) { + return 0, false, nil + } + return b.validateStr(str, &globalVars) +} + +func (b *builtinValidatePasswordStrengthSig) validateStr(str string, globalVars *variable.GlobalVarAccessor) (int64, bool, error) { + if warn, err := pwdValidator.ValidateUserNameInPassword(str, b.ctx.GetSessionVars()); err != nil { + return 0, true, err + } else if len(warn) > 0 { + return 0, false, nil + } + if warn, err := pwdValidator.ValidatePasswordLowPolicy(str, globalVars); err != nil { + return 0, true, err + } else if len(warn) > 0 { + return 25, false, nil + } + if warn, err := pwdValidator.ValidatePasswordMediumPolicy(str, globalVars); err != nil { + return 0, true, err + } else if len(warn) > 0 { + return 50, false, nil + } + if ok, err := pwdValidator.ValidateDictionaryPassword(str, globalVars); err != nil { + return 0, true, err + } else if !ok { + return 75, false, nil + } + return 100, false, nil } diff --git a/expression/builtin_encryption_test.go b/expression/builtin_encryption_test.go index 0f74ab611aa48..087fb3f35e466 100644 --- a/expression/builtin_encryption_test.go +++ b/expression/builtin_encryption_test.go @@ -15,12 +15,14 @@ package expression import ( + "context" "encoding/hex" "fmt" "strings" "testing" "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/charset" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/parser/terror" @@ -631,6 +633,55 @@ func TestUncompressLength(t *testing.T) { } } +func TestValidatePasswordStrength(t *testing.T) { + ctx := createContext(t) + ctx.GetSessionVars().User = &auth.UserIdentity{Username: "testuser"} + globalVarsAccessor := variable.NewMockGlobalAccessor4Tests() + ctx.GetSessionVars().GlobalVarsAccessor = globalVarsAccessor + err := globalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordDictionary, "1234") + require.NoError(t, err) + + tests := []struct { + in interface{} + expect interface{} + }{ + {nil, nil}, + {"123", 0}, + {"testuser123", 0}, + {"resutset123", 0}, + {"12345", 25}, + {"12345678", 50}, + {"!Abc12345678", 75}, + {"!Abc87654321", 100}, + } + + fc := funcs[ast.ValidatePasswordStrength] + // disable password validation + for _, test := range tests { + arg := types.NewDatum(test.in) + f, err := fc.getFunction(ctx, datumsToConstants([]types.Datum{arg})) + require.NoErrorf(t, err, "%v", test) + out, err := evalBuiltinFunc(f, chunk.Row{}) + require.NoErrorf(t, err, "%v", test) + if test.expect == nil { + require.Equal(t, types.NewDatum(nil), out) + } else { + require.Equalf(t, types.NewDatum(0), out, "%v", test) + } + } + // enable password validation + err = globalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordEnable, "ON") + require.NoError(t, err) + for _, test := range tests { + arg := types.NewDatum(test.in) + f, err := fc.getFunction(ctx, datumsToConstants([]types.Datum{arg})) + require.NoErrorf(t, err, "%v", test) + out, err := evalBuiltinFunc(f, chunk.Row{}) + require.NoErrorf(t, err, "%v", test) + require.Equalf(t, types.NewDatum(test.expect), out, "%v", test) + } +} + func TestPassword(t *testing.T) { ctx := createContext(t) cases := []struct { diff --git a/expression/builtin_encryption_vec.go b/expression/builtin_encryption_vec.go index e9a1d45ae67be..ff71913f8d70b 100644 --- a/expression/builtin_encryption_vec.go +++ b/expression/builtin_encryption_vec.go @@ -30,6 +30,7 @@ import ( "github.com/pingcap/errors" "github.com/pingcap/tidb/parser/auth" + "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/encrypt" @@ -863,3 +864,45 @@ func (b *builtinUncompressedLengthSig) vecEvalInt(input *chunk.Chunk, result *ch } return nil } + +func (b *builtinValidatePasswordStrengthSig) vectorized() bool { + return true +} + +func (b *builtinValidatePasswordStrengthSig) vecEvalInt(input *chunk.Chunk, result *chunk.Column) error { + n := input.NumRows() + buf, err := b.bufAllocator.get() + if err != nil { + return err + } + defer b.bufAllocator.put(buf) + if err := b.args[0].VecEvalString(b.ctx, input, buf); err != nil { + return err + } + + result.ResizeInt64(n, false) + result.MergeNulls(buf) + i64s := result.Int64s() + globalVars := b.ctx.GetSessionVars().GlobalVarsAccessor + enableValidation := false + validation, err := globalVars.GetGlobalSysVar(variable.ValidatePasswordEnable) + if err != nil { + return err + } + enableValidation = variable.TiDBOptOn(validation) + for i := 0; i < n; i++ { + if result.IsNull(i) { + continue + } + if !enableValidation { + i64s[i] = 0 + } else if score, isNull, err := b.validateStr(buf.GetString(i), &globalVars); err != nil { + return err + } else if !isNull { + i64s[i] = score + } else { + result.SetNull(i, true) + } + } + return nil +} diff --git a/expression/builtin_encryption_vec_test.go b/expression/builtin_encryption_vec_test.go index c6caa1eb60d51..46395e51bcb6b 100644 --- a/expression/builtin_encryption_vec_test.go +++ b/expression/builtin_encryption_vec_test.go @@ -75,6 +75,9 @@ var vecBuiltinEncryptionCases = map[string][]vecExprBenchCase{ ast.Decode: { {retEvalType: types.ETString, childrenTypes: []types.EvalType{types.ETString, types.ETString}, geners: []dataGenerator{newRandLenStrGener(10, 20)}}, }, + ast.ValidatePasswordStrength: { + {retEvalType: types.ETInt, childrenTypes: []types.EvalType{types.ETString}}, + }, } func TestVectorizedBuiltinEncryptionFunc(t *testing.T) { diff --git a/expression/builtin_other.go b/expression/builtin_other.go index 0f4bd85d45b43..c62278c2bd101 100644 --- a/expression/builtin_other.go +++ b/expression/builtin_other.go @@ -166,6 +166,7 @@ func (c *inFunctionClass) verifyArgs(ctx sessionctx.Context, args []Expression) if constant.Value.GetInt64() < 0 { if MaybeOverOptimized4PlanCache(ctx, args) { ctx.GetSessionVars().StmtCtx.SkipPlanCache = true + ctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: Bit Column in (%v)", constant.Value.GetInt64())) } continue } diff --git a/expression/builtin_time.go b/expression/builtin_time.go index 83f18d1c1653a..e97f2ef862a3b 100644 --- a/expression/builtin_time.go +++ b/expression/builtin_time.go @@ -6087,7 +6087,7 @@ func (c *timestampAddFunctionClass) getFunction(ctx sessionctx.Context, args []E if err := c.verifyArgs(args); err != nil { return nil, err } - bf, err := newBaseBuiltinFuncWithTp(ctx, c.funcName, args, types.ETString, types.ETString, types.ETInt, types.ETDatetime) + bf, err := newBaseBuiltinFuncWithTp(ctx, c.funcName, args, types.ETString, types.ETString, types.ETReal, types.ETDatetime) if err != nil { return nil, err } @@ -6120,6 +6120,82 @@ func (b *builtinTimestampAddSig) Clone() builtinFunc { return newSig } +var ( + minDatetimeInGoTime, _ = types.MinDatetime.GoTime(time.Local) + minDatetimeNanos = float64(minDatetimeInGoTime.Unix())*1e9 + float64(minDatetimeInGoTime.Nanosecond()) + maxDatetimeInGoTime, _ = types.MaxDatetime.GoTime(time.Local) + maxDatetimeNanos = float64(maxDatetimeInGoTime.Unix())*1e9 + float64(maxDatetimeInGoTime.Nanosecond()) + minDatetimeMonths = float64(types.MinDatetime.Year()*12 + types.MinDatetime.Month() - 1) // 0001-01-01 00:00:00 + maxDatetimeMonths = float64(types.MaxDatetime.Year()*12 + types.MaxDatetime.Month() - 1) // 9999-12-31 00:00:00 +) + +func validAddTime(nano1 float64, nano2 float64) bool { + return nano1+nano2 >= minDatetimeNanos && nano1+nano2 <= maxDatetimeNanos +} + +func validAddMonth(month1 float64, year, month int) bool { + tmp := month1 + float64(year)*12 + float64(month-1) + return tmp >= minDatetimeMonths && tmp <= maxDatetimeMonths +} + +func addUnitToTime(unit string, t time.Time, v float64) (time.Time, bool, error) { + s := math.Trunc(v * 1000000) + // round to the nearest int + v = math.Round(v) + var tb time.Time + nano := float64(t.Unix())*1e9 + float64(t.Nanosecond()) + switch unit { + case "MICROSECOND": + if !validAddTime(v*float64(time.Microsecond), nano) { + return tb, true, nil + } + tb = t.Add(time.Duration(v) * time.Microsecond) + case "SECOND": + if !validAddTime(s*float64(time.Microsecond), nano) { + return tb, true, nil + } + tb = t.Add(time.Duration(s) * time.Microsecond) + case "MINUTE": + if !validAddTime(v*float64(time.Minute), nano) { + return tb, true, nil + } + tb = t.Add(time.Duration(v) * time.Minute) + case "HOUR": + if !validAddTime(v*float64(time.Hour), nano) { + return tb, true, nil + } + tb = t.Add(time.Duration(v) * time.Hour) + case "DAY": + if !validAddTime(v*24*float64(time.Hour), nano) { + return tb, true, nil + } + tb = t.AddDate(0, 0, int(v)) + case "WEEK": + if !validAddTime(v*24*7*float64(time.Hour), nano) { + return tb, true, nil + } + tb = t.AddDate(0, 0, 7*int(v)) + case "MONTH": + if !validAddMonth(v, t.Year(), int(t.Month())) { + return tb, true, nil + } + tb = t.AddDate(0, int(v), 0) + case "QUARTER": + if !validAddMonth(v*3, t.Year(), int(t.Month())) { + return tb, true, nil + } + tb = t.AddDate(0, 3*int(v), 0) + case "YEAR": + if !validAddMonth(v*12, t.Year(), int(t.Month())) { + return tb, true, nil + } + tb = t.AddDate(int(v), 0, 0) + default: + return tb, false, types.ErrWrongValue.GenWithStackByArgs(types.TimeStr, unit) + } + return tb, false, nil +} + // evalString evals a builtinTimestampAddSig. // See https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_timestampadd func (b *builtinTimestampAddSig) evalString(row chunk.Row) (string, bool, error) { @@ -6127,7 +6203,7 @@ func (b *builtinTimestampAddSig) evalString(row chunk.Row) (string, bool, error) if isNull || err != nil { return "", isNull, err } - v, isNull, err := b.args[1].EvalInt(b.ctx, row) + v, isNull, err := b.args[1].EvalReal(b.ctx, row) if isNull || err != nil { return "", isNull, err } @@ -6140,30 +6216,17 @@ func (b *builtinTimestampAddSig) evalString(row chunk.Row) (string, bool, error) b.ctx.GetSessionVars().StmtCtx.AppendWarning(err) return "", true, nil } - var tb time.Time + tb, overflow, err := addUnitToTime(unit, tm1, v) + if err != nil { + return "", true, err + } + if overflow { + return "", true, handleInvalidTimeError(b.ctx, types.ErrDatetimeFunctionOverflow.GenWithStackByArgs("datetime")) + } fsp := types.DefaultFsp - switch unit { - case "MICROSECOND": - tb = tm1.Add(time.Duration(v) * time.Microsecond) + // use MaxFsp when microsecond is not zero + if tb.Nanosecond()/1000 != 0 { fsp = types.MaxFsp - case "SECOND": - tb = tm1.Add(time.Duration(v) * time.Second) - case "MINUTE": - tb = tm1.Add(time.Duration(v) * time.Minute) - case "HOUR": - tb = tm1.Add(time.Duration(v) * time.Hour) - case "DAY": - tb = tm1.AddDate(0, 0, int(v)) - case "WEEK": - tb = tm1.AddDate(0, 0, 7*int(v)) - case "MONTH": - tb = tm1.AddDate(0, int(v), 0) - case "QUARTER": - tb = tm1.AddDate(0, 3*int(v), 0) - case "YEAR": - tb = tm1.AddDate(int(v), 0, 0) - default: - return "", true, types.ErrWrongValue.GenWithStackByArgs(types.TimeStr, unit) } r := types.NewTime(types.FromGoTime(tb), b.resolveType(arg.Type(), unit), fsp) if err = r.Check(b.ctx.GetSessionVars().StmtCtx); err != nil { diff --git a/expression/builtin_time_test.go b/expression/builtin_time_test.go index 55973f9dab5f8..2010bf0a225b5 100644 --- a/expression/builtin_time_test.go +++ b/expression/builtin_time_test.go @@ -2506,7 +2506,7 @@ func TestTimestampAdd(t *testing.T) { ctx := createContext(t) tests := []struct { unit string - interval int64 + interval float64 date interface{} expect string }{ @@ -2514,11 +2514,22 @@ func TestTimestampAdd(t *testing.T) { {"WEEK", 1, "2003-01-02 23:59:59", "2003-01-09 23:59:59"}, {"MICROSECOND", 1, 950501, "1995-05-01 00:00:00.000001"}, {"DAY", 28768, 0, ""}, + {"QUARTER", 3, "1995-05-01", "1996-02-01 00:00:00"}, + {"SECOND", 1.1, "1995-05-01", "1995-05-01 00:00:01.100000"}, + {"SECOND", -1, "1995-05-01", "1995-04-30 23:59:59"}, + {"SECOND", -1.1, "1995-05-01", "1995-04-30 23:59:58.900000"}, + {"SECOND", 9.9999e-6, "1995-05-01", "1995-05-01 00:00:00.000009"}, + {"SECOND", 9.9999e-7, "1995-05-01", "1995-05-01 00:00:00"}, + {"SECOND", -9.9999e-6, "1995-05-01", "1995-04-30 23:59:59.999991"}, + {"SECOND", -9.9999e-7, "1995-05-01", "1995-05-01 00:00:00"}, + {"MINUTE", 1.5, "1995-05-01 00:00:00", "1995-05-01 00:02:00"}, + {"MINUTE", 1.5, "1995-05-01 00:00:00.000000", "1995-05-01 00:02:00"}, + {"MICROSECOND", -100, "1995-05-01 00:00:00.0001", "1995-05-01 00:00:00"}, } fc := funcs[ast.TimestampAdd] for _, test := range tests { - dat := []types.Datum{types.NewStringDatum(test.unit), types.NewIntDatum(test.interval), types.NewDatum(test.date)} + dat := []types.Datum{types.NewStringDatum(test.unit), types.NewFloat64Datum(test.interval), types.NewDatum(test.date)} f, err := fc.getFunction(ctx, datumsToConstants(dat)) require.NoError(t, err) d, err := evalBuiltinFunc(f, chunk.Row{}) diff --git a/expression/builtin_time_vec.go b/expression/builtin_time_vec.go index 0d6b4321095f5..eb8c91e50bc84 100644 --- a/expression/builtin_time_vec.go +++ b/expression/builtin_time_vec.go @@ -1133,7 +1133,6 @@ func (b *builtinStrToDateDurationSig) vecEvalDuration(input *chunk.Chunk, result result.MergeNulls(bufStrings, bufFormats) d64s := result.GoDurations() sc := b.ctx.GetSessionVars().StmtCtx - hasNoZeroDateMode := b.ctx.GetSessionVars().SQLMode.HasNoZeroDateMode() for i := 0; i < n; i++ { if result.IsNull(i) { continue @@ -1147,13 +1146,6 @@ func (b *builtinStrToDateDurationSig) vecEvalDuration(input *chunk.Chunk, result result.SetNull(i, true) continue } - if hasNoZeroDateMode && (t.Year() == 0 || t.Month() == 0 || t.Day() == 0) { - if err := handleInvalidTimeError(b.ctx, types.ErrWrongValue.GenWithStackByArgs(types.DateTimeStr, t.String())); err != nil { - return err - } - result.SetNull(i, true) - continue - } t.SetFsp(b.tp.GetDecimal()) dur, err := t.ConvertToDuration() if err != nil { @@ -1703,7 +1695,7 @@ func (b *builtinTimestampAddSig) vecEvalString(input *chunk.Chunk, result *chunk return err } defer b.bufAllocator.put(buf1) - if err := b.args[1].VecEvalInt(b.ctx, input, buf1); err != nil { + if err := b.args[1].VecEvalReal(b.ctx, input, buf1); err != nil { return err } @@ -1717,7 +1709,7 @@ func (b *builtinTimestampAddSig) vecEvalString(input *chunk.Chunk, result *chunk } result.ReserveString(n) - nums := buf1.Int64s() + nums := buf1.Float64s() ds := buf2.Times() for i := 0; i < n; i++ { if buf.IsNull(i) || buf1.IsNull(i) || buf2.IsNull(i) { @@ -1735,30 +1727,21 @@ func (b *builtinTimestampAddSig) vecEvalString(input *chunk.Chunk, result *chunk result.AppendNull() continue } - var tb time.Time + tb, overflow, err := addUnitToTime(unit, tm1, v) + if err != nil { + return err + } + if overflow { + if err = handleInvalidTimeError(b.ctx, types.ErrDatetimeFunctionOverflow.GenWithStackByArgs("datetime")); err != nil { + return err + } + result.AppendNull() + continue + } fsp := types.DefaultFsp - switch unit { - case "MICROSECOND": - tb = tm1.Add(time.Duration(v) * time.Microsecond) + // use MaxFsp when microsecond is not zero + if tb.Nanosecond()/1000 != 0 { fsp = types.MaxFsp - case "SECOND": - tb = tm1.Add(time.Duration(v) * time.Second) - case "MINUTE": - tb = tm1.Add(time.Duration(v) * time.Minute) - case "HOUR": - tb = tm1.Add(time.Duration(v) * time.Hour) - case "DAY": - tb = tm1.AddDate(0, 0, int(v)) - case "WEEK": - tb = tm1.AddDate(0, 0, 7*int(v)) - case "MONTH": - tb = tm1.AddDate(0, int(v), 0) - case "QUARTER": - tb = tm1.AddDate(0, 3*int(v), 0) - case "YEAR": - tb = tm1.AddDate(int(v), 0, 0) - default: - return types.ErrWrongValue.GenWithStackByArgs(types.TimeStr, unit) } r := types.NewTime(types.FromGoTime(tb), b.resolveType(arg.Type(), unit), fsp) if err = r.Check(b.ctx.GetSessionVars().StmtCtx); err != nil { diff --git a/expression/expr_to_pb_test.go b/expression/expr_to_pb_test.go index 7047c540fa577..1025f3c7fdcb1 100644 --- a/expression/expr_to_pb_test.go +++ b/expression/expr_to_pb_test.go @@ -528,6 +528,18 @@ func TestExprPushDownToFlash(t *testing.T) { require.NoError(t, err) exprs = append(exprs, function) + // json_extract + function, err = NewFunction(mock.NewContext(), ast.JSONExtract, types.NewFieldType(mysql.TypeJSON), jsonColumn, stringColumn) + require.NoError(t, err) + exprs = append(exprs, function) + + // json_unquote argument is cast(json as string) + subFunc, subErr := NewFunction(mock.NewContext(), ast.Cast, types.NewFieldType(mysql.TypeString), jsonColumn) + require.NoError(t, subErr) + function, err = NewFunction(mock.NewContext(), ast.JSONUnquote, types.NewFieldType(mysql.TypeString), subFunc) + require.NoError(t, err) + exprs = append(exprs, function) + // lpad function, err = NewFunction(mock.NewContext(), ast.Lpad, types.NewFieldType(mysql.TypeString), stringColumn, int32Column, stringColumn) require.NoError(t, err) @@ -639,6 +651,11 @@ func TestExprPushDownToFlash(t *testing.T) { require.NoError(t, err) exprs = append(exprs, function) + // CastJsonAsString + function, err = NewFunction(mock.NewContext(), ast.Cast, types.NewFieldType(mysql.TypeString), jsonColumn) + require.NoError(t, err) + exprs = append(exprs, function) + // CastIntAsTime function, err = NewFunction(mock.NewContext(), ast.Cast, types.NewFieldType(mysql.TypeDatetime), intColumn) require.NoError(t, err) @@ -958,6 +975,11 @@ func TestExprPushDownToFlash(t *testing.T) { exprs = exprs[:0] + // json_unquote's argument is not cast(json as string) + function, err = NewFunction(mock.NewContext(), ast.JSONUnquote, types.NewFieldType(mysql.TypeString), stringColumn) + require.NoError(t, err) + exprs = append(exprs, function) + // Substring2Args: can not be pushed function, err = NewFunction(mock.NewContext(), ast.Substr, types.NewFieldType(mysql.TypeString), binaryStringColumn, intColumn) require.NoError(t, err) @@ -1073,6 +1095,21 @@ func TestExprPushDownToFlash(t *testing.T) { require.NoError(t, err) exprs = append(exprs, function) + // regexp_like: supported + function, err = NewFunction(mock.NewContext(), ast.RegexpLike, types.NewFieldType(mysql.TypeLonglong), binaryStringColumn, binaryStringColumn, binaryStringColumn) + require.NoError(t, err) + exprs = append(exprs, function) + + // regexp_instr: supported + function, err = NewFunction(mock.NewContext(), ast.RegexpInStr, types.NewFieldType(mysql.TypeLonglong), stringColumn, stringColumn, intColumn, intColumn, intColumn, stringColumn) + require.NoError(t, err) + exprs = append(exprs, function) + + // regexp_substr: supported + function, err = NewFunction(mock.NewContext(), ast.RegexpSubstr, types.NewFieldType(mysql.TypeString), stringColumn, stringColumn, intColumn, intColumn, stringColumn) + require.NoError(t, err) + exprs = append(exprs, function) + // greatest function, err = NewFunction(mock.NewContext(), ast.Greatest, types.NewFieldType(mysql.TypeLonglong), int32Column, intColumn) require.NoError(t, err) diff --git a/expression/expression.go b/expression/expression.go index cbfa4bfb0ee24..024bac00ef960 100644 --- a/expression/expression.go +++ b/expression/expression.go @@ -1071,8 +1071,7 @@ func scalarExprSupportedByTiKV(sf *ScalarFunction) bool { // json functions. ast.JSONType, ast.JSONExtract, ast.JSONObject, ast.JSONArray, ast.JSONMerge, ast.JSONSet, ast.JSONInsert /*ast.JSONReplace,*/, ast.JSONRemove, ast.JSONLength, - // FIXME: JSONUnquote is incompatible with Coprocessor - ast.JSONUnquote, ast.JSONContains, + ast.JSONUnquote, ast.JSONContains, ast.JSONValid, // date functions. ast.Date, ast.Week /* ast.YearWeek, ast.ToSeconds */, ast.DateDiff, @@ -1151,10 +1150,10 @@ func scalarExprSupportedByFlash(function *ScalarFunction) bool { ast.Sqrt, ast.Log, ast.Log2, ast.Log10, ast.Ln, ast.Exp, ast.Pow, ast.Sign, ast.Radians, ast.Degrees, ast.Conv, ast.CRC32, - ast.JSONLength, ast.Repeat, + ast.JSONLength, ast.JSONExtract, ast.JSONUnquote, ast.Repeat, ast.InetNtoa, ast.InetAton, ast.Inet6Ntoa, ast.Inet6Aton, ast.Coalesce, ast.ASCII, ast.Length, ast.Trim, ast.Position, ast.Format, ast.Elt, - ast.LTrim, ast.RTrim, ast.Lpad, ast.Rpad, ast.Regexp, + ast.LTrim, ast.RTrim, ast.Lpad, ast.Rpad, ast.Hour, ast.Minute, ast.Second, ast.MicroSecond, ast.TimeToSec: switch function.Function.PbCode() { @@ -1164,6 +1163,18 @@ func scalarExprSupportedByFlash(function *ScalarFunction) bool { tipb.ScalarFuncSig_IfDuration, tipb.ScalarFuncSig_CaseWhenDuration: return false + case tipb.ScalarFuncSig_JsonUnquoteSig: + // TiFlash json_unquote now only supports json string generated by cast(json as string) + if childFunc, ok := function.GetArgs()[0].(*ScalarFunction); ok { + return childFunc.Function.PbCode() == tipb.ScalarFuncSig_CastJsonAsString + } + return false + } + return true + case ast.Regexp, ast.RegexpLike, ast.RegexpInStr, ast.RegexpSubstr: + funcCharset, funcCollation := function.Function.CharsetAndCollation() + if funcCharset == charset.CharsetBin && funcCollation == charset.CollationBin { + return false } return true case ast.Substr, ast.Substring, ast.Left, ast.Right, ast.CharLength, ast.SubstringIndex, ast.Reverse: @@ -1195,7 +1206,7 @@ func scalarExprSupportedByFlash(function *ScalarFunction) bool { tipb.ScalarFuncSig_CastStringAsDecimal /*, tipb.ScalarFuncSig_CastDurationAsDecimal, tipb.ScalarFuncSig_CastJsonAsDecimal*/ : return function.RetType.IsDecimalValid() case tipb.ScalarFuncSig_CastDecimalAsString, tipb.ScalarFuncSig_CastIntAsString, tipb.ScalarFuncSig_CastRealAsString, tipb.ScalarFuncSig_CastTimeAsString, - tipb.ScalarFuncSig_CastStringAsString /*, tipb.ScalarFuncSig_CastDurationAsString, tipb.ScalarFuncSig_CastJsonAsString*/ : + tipb.ScalarFuncSig_CastStringAsString, tipb.ScalarFuncSig_CastJsonAsString /*, tipb.ScalarFuncSig_CastDurationAsString*/ : return true case tipb.ScalarFuncSig_CastDecimalAsTime, tipb.ScalarFuncSig_CastIntAsTime, tipb.ScalarFuncSig_CastRealAsTime, tipb.ScalarFuncSig_CastTimeAsTime, tipb.ScalarFuncSig_CastStringAsTime /*, tipb.ScalarFuncSig_CastDurationAsTime, tipb.ScalarFuncSig_CastJsonAsTime*/ : diff --git a/expression/integration_serial_test.go b/expression/integration_serial_test.go index a497d9ef54600..77574b4e309a2 100644 --- a/expression/integration_serial_test.go +++ b/expression/integration_serial_test.go @@ -3766,6 +3766,7 @@ func TestSetVariables(t *testing.T) { tk.MustExec("set @@global.tidb_enable_concurrent_ddl=1") tk.MustQuery("select @@global.tidb_enable_concurrent_ddl").Check(testkit.Rows("1")) require.True(t, variable.EnableConcurrentDDL.Load()) + tk.MustExec("set @@global.tidb_enable_metadata_lock=0") tk.MustExec("set @@global.tidb_enable_concurrent_ddl=0") tk.MustQuery("select @@global.tidb_enable_concurrent_ddl").Check(testkit.Rows("0")) require.False(t, variable.EnableConcurrentDDL.Load()) diff --git a/expression/integration_test.go b/expression/integration_test.go index d3b307fb9653b..55c8f389a5df3 100644 --- a/expression/integration_test.go +++ b/expression/integration_test.go @@ -968,6 +968,7 @@ func TestEncryptionBuiltin(t *testing.T) { tk := testkit.NewTestKit(t, store) tk.MustExec("use test") + tk.Session().GetSessionVars().User = &auth.UserIdentity{Username: "root"} ctx := context.Background() // for password @@ -1143,6 +1144,25 @@ func TestEncryptionBuiltin(t *testing.T) { tk.MustQuery("SELECT RANDOM_BYTES(1024);") result = tk.MustQuery("SELECT RANDOM_BYTES(NULL);") result.Check(testkit.Rows("")) + + // for VALIDATE_PASSWORD_STRENGTH + tk.MustExec(fmt.Sprintf("SET GLOBAL validate_password.dictionary='%s'", "password")) + tk.MustExec("SET GLOBAL validate_password.enable = 1") + tk.MustQuery("SELECT validate_password_strength('root')").Check(testkit.Rows("0")) + tk.MustQuery("SELECT validate_password_strength('toor')").Check(testkit.Rows("0")) + tk.MustQuery("SELECT validate_password_strength('ROOT')").Check(testkit.Rows("25")) + tk.MustQuery("SELECT validate_password_strength('TOOR')").Check(testkit.Rows("25")) + tk.MustQuery("SELECT validate_password_strength('fooHoHo%1')").Check(testkit.Rows("100")) + tk.MustQuery("SELECT validate_password_strength('pass')").Check(testkit.Rows("25")) + tk.MustQuery("SELECT validate_password_strength('password')").Check(testkit.Rows("50")) + tk.MustQuery("SELECT validate_password_strength('password0000')").Check(testkit.Rows("50")) + tk.MustQuery("SELECT validate_password_strength('password1A#')").Check(testkit.Rows("75")) + tk.MustQuery("SELECT validate_password_strength('PA12wrd!#')").Check(testkit.Rows("100")) + tk.MustQuery("SELECT VALIDATE_PASSWORD_STRENGTH(REPEAT(\"aA1#\", 26))").Check(testkit.Rows("100")) + tk.MustQuery("SELECT validate_password_strength(null)").Check(testkit.Rows("")) + tk.MustQuery("SELECT validate_password_strength('null')").Check(testkit.Rows("25")) + tk.MustQuery("SELECT VALIDATE_PASSWORD_STRENGTH( 0x6E616E646F73617135234552 )").Check(testkit.Rows("100")) + tk.MustQuery("SELECT VALIDATE_PASSWORD_STRENGTH(CAST(0xd2 AS BINARY(10)))").Check(testkit.Rows("50")) } func TestOpBuiltin(t *testing.T) { @@ -3050,6 +3070,30 @@ func TestTiDBDecodeKeyFunc(t *testing.T) { sql = fmt.Sprintf("select tidb_decode_key( '%s' )", hexKey) rs = fmt.Sprintf(`{"%s":%d,"table_id":"%d"}`, tbl.Meta().GetPkName().String(), rowID, tbl.Meta().ID) tk.MustQuery(sql).Check(testkit.Rows(rs)) + + // Test partition table. + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a int primary key clustered, b int, key bk (b)) PARTITION BY RANGE (a) (PARTITION p0 VALUES LESS THAN (1), PARTITION p1 VALUES LESS THAN (2));") + dom = domain.GetDomain(tk.Session()) + is = dom.InfoSchema() + tbl, err = is.TableByName(model.NewCIStr("test"), model.NewCIStr("t")) + require.NoError(t, err) + require.NotNil(t, tbl.Meta().Partition) + hexKey = buildTableRowKey(tbl.Meta().Partition.Definitions[0].ID, rowID) + sql = fmt.Sprintf("select tidb_decode_key( '%s' )", hexKey) + rs = fmt.Sprintf(`{"%s":%d,"partition_id":%d,"table_id":"%d"}`, tbl.Meta().GetPkName().String(), rowID, tbl.Meta().Partition.Definitions[0].ID, tbl.Meta().ID) + tk.MustQuery(sql).Check(testkit.Rows(rs)) + + hexKey = tablecodec.EncodeTablePrefix(tbl.Meta().Partition.Definitions[0].ID).String() + sql = fmt.Sprintf("select tidb_decode_key( '%s' )", hexKey) + rs = fmt.Sprintf(`{"partition_id":%d,"table_id":%d}`, tbl.Meta().Partition.Definitions[0].ID, tbl.Meta().ID) + tk.MustQuery(sql).Check(testkit.Rows(rs)) + + data = []types.Datum{types.NewIntDatum(100)} + hexKey = buildIndexKeyFromData(tbl.Meta().Partition.Definitions[0].ID, tbl.Indices()[0].Meta().ID, data) + sql = fmt.Sprintf("select tidb_decode_key( '%s' )", hexKey) + rs = fmt.Sprintf(`{"index_id":1,"index_vals":{"b":"100"},"partition_id":%d,"table_id":%d}`, tbl.Meta().Partition.Definitions[0].ID, tbl.Meta().ID) + tk.MustQuery(sql).Check(testkit.Rows(rs)) } func TestTwoDecimalTruncate(t *testing.T) { @@ -3718,8 +3762,6 @@ func TestExprPushdownBlacklist(t *testing.T) { store := testkit.CreateMockStore(t) tk := testkit.NewTestKit(t, store) - tk.MustQuery(`select * from mysql.expr_pushdown_blacklist`).Check(testkit.Rows( - "date_add tiflash DST(daylight saving time) does not take effect in TiFlash date_add")) tk.MustExec("use test") tk.MustExec("drop table if exists t") @@ -4932,6 +4974,7 @@ func TestSchemaDMLNotChange(t *testing.T) { tk2 := testkit.NewTestKit(t, store) tk.MustExec("use test") tk.MustExec("set global tidb_enable_metadata_lock=0") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk2.MustExec("use test") tk.MustExec("drop table if exists t") @@ -7390,6 +7433,29 @@ func TestIssue31569(t *testing.T) { tk.MustExec("drop table t") } +func TestTimestampAddWithFractionalSecond(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(a date)") + tk.MustExec("insert into t values ('2021-08-20');") + tk.MustQuery("select timestampadd(microsecond, 1, a) from t").Check(testkit.Rows("2021-08-20 00:00:00.000001")) + tk.MustQuery("select timestampadd(second, 6/4, a) from t").Check(testkit.Rows("2021-08-20 00:00:01.500000")) + tk.MustQuery("select timestampadd(second, 9.9999e2, a) from t").Check(testkit.Rows("2021-08-20 00:16:39.990000")) + tk.MustQuery("select timestampadd(second, 1, '2021-08-20 00:00:01.0001')").Check(testkit.Rows("2021-08-20 00:00:02.000100")) + tk.MustQuery("select timestampadd(minute, 1.5, '2021-08-20 00:00:00')").Check(testkit.Rows("2021-08-20 00:02:00")) + tk.MustQuery("select timestampadd(minute, 1.5, '2021-08-20 00:00:00.0001')").Check(testkit.Rows("2021-08-20 00:02:00.000100")) + // overflow + tk.MustQuery("SELECT timestampadd(year,1.212208e+308,'1995-01-05 06:32:20.859724') as result").Check(testkit.Rows("")) + warnings := tk.Session().GetSessionVars().StmtCtx.GetWarnings() + require.Len(t, warnings, 1) + for _, warning := range warnings { + require.EqualError(t, warning.Err, "[types:1441]Datetime function: datetime field overflow") + } +} + func TestDateAddForNonExistingTimestamp(t *testing.T) { store := testkit.CreateMockStore(t) @@ -7816,3 +7882,16 @@ func TestIfNullParamMarker(t *testing.T) { // Should not report 'Data too long for column' error. tk.MustExec(`execute pr1 using @a,@b;`) } + +func TestIssue39146(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("CREATE TABLE `sun` ( `dest` varchar(10) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;") + tk.MustExec("insert into sun values('20231020');") + tk.MustExec("set @@sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';") + tk.MustExec("set @@tidb_enable_vectorized_expression = on;") + tk.MustQuery(`select str_to_date(substr(dest,1,6),'%H%i%s') from sun;`).Check(testkit.Rows("20:23:10")) + tk.MustExec("set @@tidb_enable_vectorized_expression = off;") + tk.MustQuery(`select str_to_date(substr(dest,1,6),'%H%i%s') from sun;`).Check(testkit.Rows("20:23:10")) +} diff --git a/go.mod b/go.mod index c147af6b8506e..5a0c9cf62b95f 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( cloud.google.com/go/storage v1.21.0 github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.12.0 github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.2.0 - github.com/BurntSushi/toml v1.2.0 + github.com/BurntSushi/toml v1.2.1 github.com/DATA-DOG/go-sqlmock v1.5.0 github.com/Jeffail/gabs/v2 v2.5.1 github.com/Masterminds/semver v1.5.0 @@ -23,22 +23,22 @@ require ( github.com/cockroachdb/pebble v0.0.0-20210719141320-8c3bd06debb5 github.com/coocood/freecache v1.2.1 github.com/coreos/go-semver v0.3.0 - github.com/daixiang0/gci v0.6.3 + github.com/daixiang0/gci v0.8.5 github.com/danjacques/gofslock v0.0.0-20191023191349-0a45f885bc37 - github.com/dgraph-io/ristretto v0.1.1-0.20220403145359-8e850b710d6d + github.com/dgraph-io/ristretto v0.1.1 github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 github.com/docker/go-units v0.4.0 github.com/emirpasic/gods v1.18.1 github.com/fatanugraha/noloopclosure v0.1.1 github.com/fatih/color v1.13.0 github.com/fsouza/fake-gcs-server v1.19.0 - github.com/go-sql-driver/mysql v1.6.0 + github.com/go-sql-driver/mysql v1.7.0 github.com/gogo/protobuf v1.3.2 github.com/golang/mock v1.6.0 github.com/golang/protobuf v1.5.2 github.com/golang/snappy v0.0.4 - github.com/golangci/gofmt v0.0.0-20190930125516-244bba706f1a - github.com/golangci/golangci-lint v1.49.0 + github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2 + github.com/golangci/golangci-lint v1.50.1 github.com/golangci/gosec v0.0.0-20180901114220-8afd9cbb6cfb github.com/golangci/misspell v0.3.5 github.com/golangci/prealloc v0.0.0-20180630174525-215b22d4de21 @@ -68,25 +68,25 @@ require ( github.com/pingcap/errors v0.11.5-0.20220729040631-518f63d66278 github.com/pingcap/failpoint v0.0.0-20220423142525-ae43b7f4e5c3 github.com/pingcap/fn v0.0.0-20200306044125-d5540d389059 - github.com/pingcap/kvproto v0.0.0-20221103025916-e7e21f0e9cd9 + github.com/pingcap/kvproto v0.0.0-20221130022225-6c56ac56fe5f github.com/pingcap/log v1.1.1-0.20221116035753-734d527bc87c github.com/pingcap/sysutil v0.0.0-20220114020952-ea68d2dbf5b4 github.com/pingcap/tidb/parser v0.0.0-20211011031125-9b13dc409c5e - github.com/pingcap/tipb v0.0.0-20221020071514-cd933387bcb5 + github.com/pingcap/tipb v0.0.0-20221123081521-2fb828910813 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.13.0 github.com/prometheus/client_model v0.2.0 github.com/prometheus/common v0.37.0 github.com/prometheus/prometheus v0.0.0-20190525122359-d20e84d0fb64 - github.com/shirou/gopsutil/v3 v3.22.7 + github.com/shirou/gopsutil/v3 v3.22.9 github.com/shurcooL/httpgzip v0.0.0-20190720172056-320755c1c1b0 github.com/soheilhy/cmux v0.1.5 - github.com/spf13/cobra v1.5.0 + github.com/spf13/cobra v1.6.1 github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.8.0 github.com/tdakkota/asciicheck v0.1.1 github.com/tiancaiamao/appdash v0.0.0-20181126055449-889f96f722a2 - github.com/tikv/client-go/v2 v2.0.3-0.20221108030801-9c0835c80eba + github.com/tikv/client-go/v2 v2.0.3-0.20221205084317-ad59ca833a78 github.com/tikv/pd/client v0.0.0-20221031025758-80f0d8ca4d07 github.com/timakin/bodyclose v0.0.0-20210704033933-f49887972144 github.com/twmb/murmur3 v1.1.3 @@ -106,15 +106,15 @@ require ( go.uber.org/goleak v1.2.0 go.uber.org/multierr v1.8.0 go.uber.org/zap v1.23.0 - golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e - golang.org/x/net v0.1.0 - golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 - golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4 - golang.org/x/sys v0.1.0 - golang.org/x/term v0.1.0 + golang.org/x/exp v0.0.0-20221023144134-a1e5550cf13e + golang.org/x/net v0.2.0 + golang.org/x/oauth2 v0.2.0 + golang.org/x/sync v0.1.0 + golang.org/x/sys v0.2.0 + golang.org/x/term v0.2.0 golang.org/x/text v0.4.0 - golang.org/x/time v0.0.0-20220224211638-0e9765cccd65 - golang.org/x/tools v0.1.12 + golang.org/x/time v0.2.0 + golang.org/x/tools v0.2.0 google.golang.org/api v0.74.0 google.golang.org/grpc v1.45.0 gopkg.in/yaml.v2 v2.4.0 @@ -162,7 +162,7 @@ require ( github.com/goccy/go-json v0.9.11 // indirect github.com/golang/glog v1.0.0 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/google/go-cmp v0.5.8 // indirect + github.com/google/go-cmp v0.5.9 // indirect github.com/googleapis/gax-go/v2 v2.2.0 // indirect github.com/gorilla/handlers v1.5.1 // indirect github.com/gorilla/websocket v1.4.2 // indirect @@ -172,7 +172,7 @@ require ( github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect github.com/hashicorp/go-uuid v1.0.2 // indirect github.com/hexops/gotextdiff v1.0.3 // indirect - github.com/inconshreveable/mousetrap v1.0.0 // indirect + github.com/inconshreveable/mousetrap v1.0.1 // indirect github.com/jcmturner/aescts/v2 v2.0.0 // indirect github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect github.com/jcmturner/gofork v1.0.0 // indirect @@ -202,6 +202,7 @@ require ( github.com/oklog/ulid v1.3.1 // indirect github.com/olekukonko/tablewriter v0.0.5 // indirect github.com/pierrec/lz4 v2.6.1+incompatible // indirect + github.com/pingcap/check v0.0.0-20200212061837-5e12011dc712 // indirect github.com/pingcap/goleveldb v0.0.0-20191226122134-f82aafb29989 // indirect github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect @@ -215,6 +216,7 @@ require ( github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 // indirect github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd // indirect github.com/sirupsen/logrus v1.9.0 // indirect + github.com/spaolacci/murmur3 v1.1.0 // indirect github.com/stathat/consistent v1.0.0 // indirect github.com/tklauser/go-sysconf v0.3.10 // indirect github.com/tklauser/numcpus v0.4.0 // indirect @@ -237,8 +239,8 @@ require ( go.opentelemetry.io/otel/trace v0.20.0 // indirect go.opentelemetry.io/proto/otlp v0.7.0 // indirect golang.org/x/crypto v0.1.0 // indirect - golang.org/x/exp/typeparams v0.0.0-20220613132600-b0d781184e0d // indirect - golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect + golang.org/x/exp/typeparams v0.0.0-20220827204233-334a2380cb91 // indirect + golang.org/x/mod v0.7.0 // indirect golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f // indirect google.golang.org/appengine v1.6.7 // indirect google.golang.org/genproto v0.0.0-20220324131243-acbaeb5b85eb // indirect diff --git a/go.sum b/go.sum index 48306f2d8d576..56da880be470f 100644 --- a/go.sum +++ b/go.sum @@ -70,8 +70,8 @@ github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.2.0 h1:62Ew5xXg5UCGIXDOM github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.2.0/go.mod h1:eHWhQKXc1Gv1DvWH//UzgWjWFEo0Pp4pH2vBzjBw8Fc= github.com/Azure/go-autorest v11.2.8+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.2.0 h1:Rt8g24XnyGTyglgET/PRUNlrUeu9F5L+7FilkXfZgs0= -github.com/BurntSushi/toml v1.2.0/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak= +github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/CloudyKit/fastprinter v0.0.0-20170127035650-74b38d55f37a/go.mod h1:EFZQ978U7x8IRnstaskI3IysnWY5Ao3QgZUKOXlsAdw= github.com/CloudyKit/jet v2.1.3-0.20180809161101-62edd43e4f88+incompatible/go.mod h1:HPYO+50pSWkPoj9Q/eq0aRGByCL6ScRlUmiEX5Zgm+w= @@ -220,8 +220,8 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= -github.com/daixiang0/gci v0.6.3 h1:wUAqXChk8HbwXn8AfxD9DYSCp9Bpz1L3e6Q4Roe+q9E= -github.com/daixiang0/gci v0.6.3/go.mod h1:EpVfrztufwVgQRXjnX4zuNinEpLj5OmMjtu/+MB0V0c= +github.com/daixiang0/gci v0.8.5 h1:yBdsd376w+RIBvFXjj0MAcGWS8cSCfAlRNPfn5xvjl0= +github.com/daixiang0/gci v0.8.5/go.mod h1:EpVfrztufwVgQRXjnX4zuNinEpLj5OmMjtu/+MB0V0c= github.com/danjacques/gofslock v0.0.0-20191023191349-0a45f885bc37 h1:X6mKGhCFOxrKeeHAjv/3UvT6e5RRxW6wRdlqlV6/H4w= github.com/danjacques/gofslock v0.0.0-20191023191349-0a45f885bc37/go.mod h1:DC3JtzuG7kxMvJ6dZmf2ymjNyoXwgtklr7FN+Um2B0U= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -231,8 +231,8 @@ github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn github.com/decred/dcrd/dcrec/secp256k1/v4 v4.1.0 h1:HbphB4TFFXpv7MNrT52FGrrgVXF1owhMVTHFZIlnvd4= github.com/decred/dcrd/dcrec/secp256k1/v4 v4.1.0/go.mod h1:DZGJHZMqrU4JJqFAWUS2UO1+lbSKsdiOoYi9Zzey7Fc= github.com/dgraph-io/badger v1.6.0/go.mod h1:zwt7syl517jmP8s94KqSxTlM6IMsdhYy6psNgSztDR4= -github.com/dgraph-io/ristretto v0.1.1-0.20220403145359-8e850b710d6d h1:Wrc3UKTS+cffkOx0xRGFC+ZesNuTfn0ThvEC72N0krk= -github.com/dgraph-io/ristretto v0.1.1-0.20220403145359-8e850b710d6d/go.mod h1:RAy2GVV4sTWVlNMavv3xhLsk18rxhfhDnombTe6EF5c= +github.com/dgraph-io/ristretto v0.1.1 h1:6CWw5tJNgpegArSHpNHJKldNeq03FQCwYvfMVWajOK8= +github.com/dgraph-io/ristretto v0.1.1/go.mod h1:S1GPSBCYCIhmVNfcth17y2zZtQT6wzkzgwUve0VDWWA= github.com/dgryski/go-farm v0.0.0-20190104051053-3adb47b1fb0f/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 h1:fAjc9m62+UWV/WAFKLNi6ZS0675eEUC9y3AlwSbQu1Y= @@ -327,8 +327,8 @@ github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= -github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= -github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= +github.com/go-sql-driver/mysql v1.7.0 h1:ueSltNNllEqE3qcWBTD0iQd3IpL/6U+mJxLkazJ7YPc= +github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= github.com/go-stack/stack v1.8.0 h1:5SgMzNM5HxrEjV0ww2lTmX6E2Izsfxas4+YHWRs3Lsk= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo= @@ -393,10 +393,10 @@ github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEW github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golangci/gofmt v0.0.0-20190930125516-244bba706f1a h1:iR3fYXUjHCR97qWS8ch1y9zPNsgXThGwjKPrYfqMPks= -github.com/golangci/gofmt v0.0.0-20190930125516-244bba706f1a/go.mod h1:9qCChq59u/eW8im404Q2WWTrnBUQKjpNYKMbU4M7EFU= -github.com/golangci/golangci-lint v1.49.0 h1:I8WHOavragDttlLHtSraHn/h39C+R60bEQ5NoGcHQr8= -github.com/golangci/golangci-lint v1.49.0/go.mod h1:+V/7lLv449R6w9mQ3WdV0EKh7Je/jTylMeSwBZcLeWE= +github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2 h1:amWTbTGqOZ71ruzrdA+Nx5WA3tV1N0goTspwmKCQvBY= +github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2/go.mod h1:9wOXstvyDRshQ9LggQuzBCGysxs3b6Uo/1MvYCR2NMs= +github.com/golangci/golangci-lint v1.50.1 h1:C829clMcZXEORakZlwpk7M4iDw2XiwxxKaG504SZ9zY= +github.com/golangci/golangci-lint v1.50.1/go.mod h1:AQjHBopYS//oB8xs0y0M/dtxdKHkdhl0RvmjUct0/4w= github.com/golangci/gosec v0.0.0-20180901114220-8afd9cbb6cfb h1:Bi7BYmZVg4C+mKGi8LeohcP2GGUl2XJD4xCkJoZSaYc= github.com/golangci/gosec v0.0.0-20180901114220-8afd9cbb6cfb/go.mod h1:ON/c2UR0VAAv6ZEAFKhjCLplESSmRFfZcDLASbI1GWo= github.com/golangci/misspell v0.3.5 h1:pLzmVdl3VxTOncgzHcvLOKirdvcx/TydsClUQXTehjo= @@ -422,8 +422,8 @@ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= -github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= -github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= github.com/google/gofuzz v0.0.0-20170612174753-24818f796faf/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= @@ -534,8 +534,9 @@ github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1: github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20210905161508-09a460cdf81d/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w= github.com/imkira/go-interpol v1.1.0/go.mod h1:z0h2/2T3XF8kyEPpRgJ3kmNv+C43p+I/CoI+jC3w2iA= -github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc= +github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/influxdata/influxdb v0.0.0-20170331210902-15e594fc09f1/go.mod h1:qZna6X/4elxqT3yI9iZYdZrWWdeFOOprn86kgg4+IzY= github.com/iris-contrib/blackfriday v2.0.0+incompatible/go.mod h1:UzZ2bDEoaSGPbkg6SAB4att1aAwTmVIx/5gCVqeyUdI= github.com/iris-contrib/go.uuid v2.0.0+incompatible/go.mod h1:iz2lgM/1UnEf1kP0L/+fafWORmlnuysV2EMP8MW+qe0= @@ -760,8 +761,9 @@ github.com/pierrec/lz4 v2.6.1+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi github.com/pingcap/badger v1.5.1-0.20220314162537-ab58fbf40580 h1:MKVFZuqFvAMiDtv3AbihOQ6rY5IE8LWflI1BuZ/hF0Y= github.com/pingcap/badger v1.5.1-0.20220314162537-ab58fbf40580/go.mod h1:upwDfet29M5y5koWilbWWA6ca3Lr0YVuzwX/DK58Vdk= github.com/pingcap/check v0.0.0-20190102082844-67f458068fc8/go.mod h1:B1+S9LNcuMyLH/4HMTViQOJevkGiik3wW2AN9zb2fNQ= -github.com/pingcap/check v0.0.0-20191107115940-caf2b9e6ccf4 h1:iRtOAQ6FXkY/BGvst3CDfTva4nTqh6CL8WXvanLdbu0= github.com/pingcap/check v0.0.0-20191107115940-caf2b9e6ccf4/go.mod h1:PYMCGwN0JHjoqGr3HrZoD+b8Tgx8bKnArhSq8YVzUMc= +github.com/pingcap/check v0.0.0-20200212061837-5e12011dc712 h1:R8gStypOBmpnHEx1qi//SaqxJVI4inOqljg/Aj5/390= +github.com/pingcap/check v0.0.0-20200212061837-5e12011dc712/go.mod h1:PYMCGwN0JHjoqGr3HrZoD+b8Tgx8bKnArhSq8YVzUMc= github.com/pingcap/errors v0.11.0/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8= github.com/pingcap/errors v0.11.4/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8= github.com/pingcap/errors v0.11.5-0.20190809092503-95897b64e011/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8= @@ -777,8 +779,8 @@ github.com/pingcap/goleveldb v0.0.0-20191226122134-f82aafb29989 h1:surzm05a8C9dN github.com/pingcap/goleveldb v0.0.0-20191226122134-f82aafb29989/go.mod h1:O17XtbryoCJhkKGbT62+L2OlrniwqiGLSqrmdHCMzZw= github.com/pingcap/kvproto v0.0.0-20191211054548-3c6b38ea5107/go.mod h1:WWLmULLO7l8IOcQG+t+ItJ3fEcrL5FxF0Wu+HrMy26w= github.com/pingcap/kvproto v0.0.0-20221026112947-f8d61344b172/go.mod h1:OYtxs0786qojVTmkVeufx93xe+jUgm56GUYRIKnmaGI= -github.com/pingcap/kvproto v0.0.0-20221103025916-e7e21f0e9cd9 h1:ho5XUD8DVCnkpEj8oiTR57FXDTXnH6znyLe0gyrtzKk= -github.com/pingcap/kvproto v0.0.0-20221103025916-e7e21f0e9cd9/go.mod h1:OYtxs0786qojVTmkVeufx93xe+jUgm56GUYRIKnmaGI= +github.com/pingcap/kvproto v0.0.0-20221130022225-6c56ac56fe5f h1:46ZD6xzQWJ8Jkeal/U7SqkX030Mgs8DAn6QV/9zbqOQ= +github.com/pingcap/kvproto v0.0.0-20221130022225-6c56ac56fe5f/go.mod h1:OYtxs0786qojVTmkVeufx93xe+jUgm56GUYRIKnmaGI= github.com/pingcap/log v0.0.0-20191012051959-b742a5d432e9/go.mod h1:4rbK1p9ILyIfb6hU7OG2CiWSqMXnp3JMbiaVJ6mvoY8= github.com/pingcap/log v0.0.0-20200511115504-543df19646ad/go.mod h1:4rbK1p9ILyIfb6hU7OG2CiWSqMXnp3JMbiaVJ6mvoY8= github.com/pingcap/log v0.0.0-20210625125904-98ed8e2eb1c7/go.mod h1:8AanEdAHATuRurdGxZXBz0At+9avep+ub7U1AGYLIMM= @@ -787,8 +789,8 @@ github.com/pingcap/log v1.1.1-0.20221116035753-734d527bc87c h1:crhkw6DD+07Bg1wYh github.com/pingcap/log v1.1.1-0.20221116035753-734d527bc87c/go.mod h1:DWQW5jICDR7UJh4HtxXSM20Churx4CQL0fwL/SoOSA4= github.com/pingcap/sysutil v0.0.0-20220114020952-ea68d2dbf5b4 h1:HYbcxtnkN3s5tqrZ/z3eJS4j3Db8wMphEm1q10lY/TM= github.com/pingcap/sysutil v0.0.0-20220114020952-ea68d2dbf5b4/go.mod h1:sDCsM39cGiv2vwunZkaFA917vVkqDTGSPbbV7z4Oops= -github.com/pingcap/tipb v0.0.0-20221020071514-cd933387bcb5 h1:Yoo8j5xQGxjlsC3yt0ndsiAz0WZXED9rzsKmEN0U0DY= -github.com/pingcap/tipb v0.0.0-20221020071514-cd933387bcb5/go.mod h1:A7mrd7WHBl1o63LE2bIBGEJMTNWXqhgmYiOvMLxozfs= +github.com/pingcap/tipb v0.0.0-20221123081521-2fb828910813 h1:DbmCfCbcavo0JG+gSp0ySvv1ub/c/j3hsnYzyYPzONo= +github.com/pingcap/tipb v0.0.0-20221123081521-2fb828910813/go.mod h1:A7mrd7WHBl1o63LE2bIBGEJMTNWXqhgmYiOvMLxozfs= github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4 h1:49lOXmGaUpV9Fz3gd7TFZY106KVlPVa5jcYD1gaQf98= github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4/go.mod h1:4OwLy04Bl9Ef3GJJCoec+30X3LQs/0/m4HFRt/2LUSA= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -864,8 +866,8 @@ github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZ github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/shirou/gopsutil/v3 v3.21.12/go.mod h1:BToYZVTlSVlfazpDDYFnsVZLaoRG+g8ufT6fPQLdJzA= -github.com/shirou/gopsutil/v3 v3.22.7 h1:flKnuCMfUUrO+oAvwAd6GKZgnPzr098VA/UJ14nhJd4= -github.com/shirou/gopsutil/v3 v3.22.7/go.mod h1:s648gW4IywYzUfE/KjXxUsqrqx/T2xO5VqOXxONeRfI= +github.com/shirou/gopsutil/v3 v3.22.9 h1:yibtJhIVEMcdw+tCTbOPiF1VcsuDeTE4utJ8Dm4c5eA= +github.com/shirou/gopsutil/v3 v3.22.9/go.mod h1:bBYl1kjgEJpWpxeHmLI+dVHWtyAwfcmSBLDsp2TNT8A= github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= github.com/shurcooL/httpfs v0.0.0-20171119174359-809beceb2371/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg= github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 h1:bUGsEnyNbVPw06Bs80sCeARAlK8lhwqGyi6UT8ymuGk= @@ -888,15 +890,16 @@ github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9 github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= github.com/soheilhy/cmux v0.1.5 h1:jjzc5WVemNEDTLwv9tlmemhC73tI08BNOIGwBOo10Js= github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= -github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI= +github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= -github.com/spf13/cobra v1.5.0 h1:X+jTBEBqF0bHN+9cSMgmfuvv2VHJ9ezmFNf9Y/XstYU= -github.com/spf13/cobra v1.5.0/go.mod h1:dWXEIy2H428czQCjInthrTRUg7yKbok+2Qi/yBIJoUM= +github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA= +github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= @@ -927,8 +930,8 @@ github.com/tenntenn/text/transform v0.0.0-20200319021203-7eef512accb3 h1:f+jULpR github.com/tenntenn/text/transform v0.0.0-20200319021203-7eef512accb3/go.mod h1:ON8b8w4BN/kE1EOhwT0o+d62W65a6aPw1nouo9LMgyY= github.com/tiancaiamao/appdash v0.0.0-20181126055449-889f96f722a2 h1:mbAskLJ0oJfDRtkanvQPiooDH8HvJ2FBh+iKT/OmiQQ= github.com/tiancaiamao/appdash v0.0.0-20181126055449-889f96f722a2/go.mod h1:2PfKggNGDuadAa0LElHrByyrz4JPZ9fFx6Gs7nx7ZZU= -github.com/tikv/client-go/v2 v2.0.3-0.20221108030801-9c0835c80eba h1:nFVdyTXcQYZwQQCdSJcFI1vBFyzG1hVuZ39MAK6wqK4= -github.com/tikv/client-go/v2 v2.0.3-0.20221108030801-9c0835c80eba/go.mod h1:X9s4ct/MLk1sFqe5mU79KClKegLFDTa/FCx3hzexGtk= +github.com/tikv/client-go/v2 v2.0.3-0.20221205084317-ad59ca833a78 h1:Nr2EhvqkOE9xFyU7LV9c9EbsgN3OzVALdbfobK7Fmn4= +github.com/tikv/client-go/v2 v2.0.3-0.20221205084317-ad59ca833a78/go.mod h1:MDT4J9LzgS7Bj1DnEq6Gk/puy6mp8TgUC92zGEVVLLg= github.com/tikv/pd/client v0.0.0-20221031025758-80f0d8ca4d07 h1:ckPpxKcl75mO2N6a4cJXiZH43hvcHPpqc9dh1TmH1nc= github.com/tikv/pd/client v0.0.0-20221031025758-80f0d8ca4d07/go.mod h1:CipBxPfxPUME+BImx9MUYXCnAVLS3VJUr3mnSJwh40A= github.com/timakin/bodyclose v0.0.0-20210704033933-f49887972144 h1:kl4KhGNsJIbDHS9/4U9yQo1UcPQM0kOMJHn29EoH/Ro= @@ -1093,10 +1096,10 @@ golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= golang.org/x/exp v0.0.0-20200513190911-00229845015e/go.mod h1:4M0jN8W1tt0AVLNr8HDosyJCDCDuyL9N9+3m7wDWgKw= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e/go.mod h1:Kr81I6Kryrl9sr8s2FK3vxD90NdsKWRuOIl2O4CvYbA= -golang.org/x/exp/typeparams v0.0.0-20220613132600-b0d781184e0d h1:+W8Qf4iJtMGKkyAygcKohjxTk4JPsL9DpzApJ22m5Ic= -golang.org/x/exp/typeparams v0.0.0-20220613132600-b0d781184e0d/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= +golang.org/x/exp v0.0.0-20221023144134-a1e5550cf13e h1:SkwG94eNiiYJhbeDE018Grw09HIN/KB9NlRmZsrzfWs= +golang.org/x/exp v0.0.0-20221023144134-a1e5550cf13e/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE= +golang.org/x/exp/typeparams v0.0.0-20220827204233-334a2380cb91 h1:Ic/qN6TEifvObMGQy72k0n1LlJr7DjWWEi+MOsDOiSk= +golang.org/x/exp/typeparams v0.0.0-20220827204233-334a2380cb91/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= @@ -1126,8 +1129,8 @@ golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= +golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1185,8 +1188,8 @@ golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qx golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.1.0 h1:hZ/3BUoy5aId7sCpA/Tc5lt8DkFgdVS2onTpJsZ/fl0= -golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= +golang.org/x/net v0.2.0 h1:sZfSu1wtKLGlWI4ZZayP0ck9Y73K1ynO6gqzTdBVdPU= +golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1205,8 +1208,8 @@ golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= -golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 h1:OSnWWcOd/CtWQC2cYSBgbTSJv3ciqd8r54ySIW2y3RE= -golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= +golang.org/x/oauth2 v0.2.0 h1:GtQkldQ9m7yvzCL1V+LrYow3Khe0eJH0w7RbX/VbaIU= +golang.org/x/oauth2 v0.2.0/go.mod h1:Cwn6afJ8jrQwYMxQDTpISoXmXW9I6qF6vDeuuoX3Ibs= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1218,8 +1221,8 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4 h1:uVc8UZUe6tr40fFVnUP5Oj+veunVezqYl9z7DYw9xzw= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180816055513-1c9583448a9c/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1310,12 +1313,13 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220909162455-aba9fc2a8ff2/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.1.0 h1:kunALQeHf1/185U1i0GOB/fy1IPRDDpuoOOqRReG57U= -golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20221010170243-090e33056c14/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.2.0 h1:ljd4t30dBnAvMZaQCevtY0xLLD0A+bRZXbgLMLU1F/A= +golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.1.0 h1:g6Z6vPFA9dYBAF7DWcH6sCcOntplXsDKcliusYijMlw= -golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.2.0 h1:z85xZCsEl7bi/KwbNADeBYoOP0++7W1ipu+aGnpwzRM= +golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1332,8 +1336,8 @@ golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxb golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20220224211638-0e9765cccd65 h1:M73Iuj3xbbb9Uk1DYhzydthsj6oOd6l9bpuFcNoUvTs= -golang.org/x/time v0.0.0-20220224211638-0e9765cccd65/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.2.0 h1:52I/1L54xyEQAYdtcSuxtiT84KGYTBGXwayxmIpNJhE= +golang.org/x/time v0.2.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1409,8 +1413,8 @@ golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.9/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU= golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= -golang.org/x/tools v0.1.12 h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.2.0 h1:G6AHpWxTMGY1KyEYoAQ5WTtIekUUvDNjan3ugu60JvE= +golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/infoschema/builder.go b/infoschema/builder.go index 8ff50a8b50435..67153fcc5f3bd 100644 --- a/infoschema/builder.go +++ b/infoschema/builder.go @@ -693,18 +693,23 @@ func (b *Builder) applyCreateTable(m *meta.Meta, dbInfo *model.DBInfo, tableID i ConvertCharsetCollateToLowerCaseIfNeed(tblInfo) ConvertOldVersionUTF8ToUTF8MB4IfNeed(tblInfo) - if len(allocs) == 0 { + if len(allocs.Allocs) == 0 { allocs = autoid.NewAllocatorsFromTblInfo(b.store, dbInfo.ID, tblInfo) } else { tblVer := autoid.AllocOptionTableInfoVersion(tblInfo.Version) switch tp { case model.ActionRebaseAutoID, model.ActionModifyTableAutoIdCache: idCacheOpt := autoid.CustomAutoIncCacheOption(tblInfo.AutoIdCache) - newAlloc := autoid.NewAllocator(b.store, dbInfo.ID, tblInfo.ID, tblInfo.IsAutoIncColUnsigned(), autoid.RowIDAllocType, tblVer, idCacheOpt) - allocs = append(allocs, newAlloc) + // If the allocator type might be AutoIncrementType, create both AutoIncrementType + // and RowIDAllocType allocator for it. Because auto id and row id could share the same allocator. + // Allocate auto id may route to allocate row id, if row id allocator is nil, the program panic! + for _, tp := range [2]autoid.AllocatorType{autoid.AutoIncrementType, autoid.RowIDAllocType} { + newAlloc := autoid.NewAllocator(b.store, dbInfo.ID, tblInfo.ID, tblInfo.IsAutoIncColUnsigned(), tp, tblVer, idCacheOpt) + allocs = allocs.Append(newAlloc) + } case model.ActionRebaseAutoRandomBase: newAlloc := autoid.NewAllocator(b.store, dbInfo.ID, tblInfo.ID, tblInfo.IsAutoRandomBitColUnsigned(), autoid.AutoRandomType, tblVer) - allocs = append(allocs, newAlloc) + allocs = allocs.Append(newAlloc) case model.ActionModifyColumn: // Change column attribute from auto_increment to auto_random. if tblInfo.ContainsAutoRandomBits() && allocs.Get(autoid.AutoRandomType) == nil { @@ -713,7 +718,7 @@ func (b *Builder) applyCreateTable(m *meta.Meta, dbInfo *model.DBInfo, tableID i return a.GetType() != autoid.AutoIncrementType && a.GetType() != autoid.RowIDAllocType }) newAlloc := autoid.NewAllocator(b.store, dbInfo.ID, tblInfo.ID, tblInfo.IsAutoRandomBitColUnsigned(), autoid.AutoRandomType, tblVer) - allocs = append(allocs, newAlloc) + allocs = allocs.Append(newAlloc) } } } diff --git a/infoschema/infoschema.go b/infoschema/infoschema.go index d024afde40d7d..11c9bd8b0e7af 100644 --- a/infoschema/infoschema.go +++ b/infoschema/infoschema.go @@ -270,7 +270,7 @@ func (is *infoSchema) TableByID(id int64) (val table.Table, ok bool) { func (is *infoSchema) AllocByID(id int64) (autoid.Allocators, bool) { tbl, ok := is.TableByID(id) if !ok { - return nil, false + return autoid.Allocators{}, false } return tbl.Allocators(nil), true } @@ -674,6 +674,12 @@ func (ts *SessionExtendedInfoSchema) SchemaByTable(tableInfo *model.TableInfo) ( } } + if ts.MdlTables != nil { + if tbl, ok := ts.MdlTables.SchemaByTable(tableInfo); ok { + return tbl, true + } + } + return ts.InfoSchema.SchemaByTable(tableInfo) } diff --git a/infoschema/tables.go b/infoschema/tables.go index 8df6cab9cb84c..d76d8b8be60b0 100644 --- a/infoschema/tables.go +++ b/infoschema/tables.go @@ -2123,7 +2123,7 @@ func (it *infoschemaTable) UpdateRecord(gctx context.Context, ctx sessionctx.Con // Allocators implements table.Table Allocators interface. func (it *infoschemaTable) Allocators(_ sessionctx.Context) autoid.Allocators { - return nil + return autoid.Allocators{} } // Meta implements table.Table Meta interface. @@ -2206,7 +2206,7 @@ func (vt *VirtualTable) UpdateRecord(ctx context.Context, sctx sessionctx.Contex // Allocators implements table.Table Allocators interface. func (vt *VirtualTable) Allocators(_ sessionctx.Context) autoid.Allocators { - return nil + return autoid.Allocators{} } // Meta implements table.Table Meta interface. diff --git a/infoschema/tables_test.go b/infoschema/tables_test.go index aee92b0afed70..bd6168d035873 100644 --- a/infoschema/tables_test.go +++ b/infoschema/tables_test.go @@ -588,12 +588,12 @@ INSERT INTO ...; defer func() { require.NoError(t, os.Remove(slowLogFileName)) }() tk := testkit.NewTestKit(t, store) - //check schema + // check schema tk.MustQuery(`select COUNT(*) from information_schema.columns WHERE table_name = 'slow_query' and column_name = '` + columnName + `'`). Check(testkit.Rows("1")) - //check select + // check select tk.MustQuery(`select ` + columnName + ` from information_schema.slow_query`).Check(testkit.Rows("1")) } @@ -1058,7 +1058,7 @@ func TestStmtSummaryInternalQuery(t *testing.T) { "where digest_text like \"select `original_sql` , `bind_sql` , `default_db` , status%\"" tk.MustQuery(sql).Check(testkit.Rows( "select `original_sql` , `bind_sql` , `default_db` , status , `create_time` , `update_time` , charset , " + - "collation , source from `mysql` . `bind_info` where `update_time` > ? order by `update_time` , `create_time`")) + "collation , source , `sql_digest` , `plan_digest` from `mysql` . `bind_info` where `update_time` > ? order by `update_time` , `create_time`")) // Test for issue #21642. tk.MustQuery(`select tidb_version()`) @@ -1393,16 +1393,19 @@ func TestTiDBTrx(t *testing.T) { tk.MustExec("update test_tidb_trx set i = i + 1") _, digest := parser.NormalizeDigest("update test_tidb_trx set i = i + 1") sm := &testkit.MockSessionManager{TxnInfo: make([]*txninfo.TxnInfo, 2)} + memDBTracker := memory.NewTracker(memory.LabelForMemDB, -1) + memDBTracker.Consume(19) + tk.Session().GetSessionVars().MemDBFootprint = memDBTracker sm.TxnInfo[0] = &txninfo.TxnInfo{ StartTS: 424768545227014155, CurrentSQLDigest: digest.String(), State: txninfo.TxnIdle, EntriesCount: 1, - EntriesSize: 19, ConnectionID: 2, Username: "root", CurrentDB: "test", } + blockTime2 := time.Date(2021, 05, 20, 13, 18, 30, 123456000, time.Local) sm.TxnInfo[1] = &txninfo.TxnInfo{ StartTS: 425070846483628033, @@ -1419,7 +1422,7 @@ func TestTiDBTrx(t *testing.T) { tk.MustQuery("select * from information_schema.TIDB_TRX;").Check(testkit.Rows( "424768545227014155 2021-05-07 12:56:48.001000 "+digest.String()+" update `test_tidb_trx` set `i` = `i` + ? Idle 1 19 2 root test [] ", - "425070846483628033 2021-05-20 21:16:35.778000 LockWaiting 2021-05-20 13:18:30.123456 0 0 10 user1 db1 [\"sql1\",\"sql2\",\""+digest.String()+"\"] ")) + "425070846483628033 2021-05-20 21:16:35.778000 LockWaiting 2021-05-20 13:18:30.123456 0 19 10 user1 db1 [\"sql1\",\"sql2\",\""+digest.String()+"\"] ")) // Test the all_sql_digests column can be directly passed to the tidb_decode_sql_digests function. require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/expression/sqlDigestRetrieverSkipRetrieveGlobal", "return")) @@ -1553,15 +1556,14 @@ func TestVariablesInfo(t *testing.T) { // See session/bootstrap.go:doDMLWorks() for where the exceptions are defined. stmt := tk.MustQuery(`SELECT variable_name, default_value, current_value FROM information_schema.variables_info WHERE current_value != default_value and default_value != '' ORDER BY variable_name`) stmt.Check(testkit.Rows( - "last_sql_use_alloc OFF ON", // for test stability - "tidb_enable_auto_analyze ON OFF", // always changed for tests - "tidb_enable_collect_execution_info ON OFF", // for test stability - "tidb_enable_mutation_checker OFF ON", // for new installs - "tidb_enable_plan_replayer_capture OFF false", // for enable plan replayer capture - "tidb_mem_oom_action CANCEL LOG", // always changed for tests - "tidb_row_format_version 1 2", // for new installs - "tidb_txn_assertion_level OFF FAST", // for new installs - "timestamp 0 123456789", // always dynamic + "last_sql_use_alloc OFF ON", // for test stability + "tidb_enable_auto_analyze ON OFF", // always changed for tests + "tidb_enable_collect_execution_info ON OFF", // for test stability + "tidb_enable_mutation_checker OFF ON", // for new installs + "tidb_mem_oom_action CANCEL LOG", // always changed for tests + "tidb_row_format_version 1 2", // for new installs + "tidb_txn_assertion_level OFF FAST", // for new installs + "timestamp 0 123456789", // always dynamic )) } diff --git a/kv/BUILD.bazel b/kv/BUILD.bazel index 32dd9f1474179..992d99d382e42 100644 --- a/kv/BUILD.bazel +++ b/kv/BUILD.bazel @@ -48,6 +48,7 @@ go_library( "@com_github_tikv_client_go_v2//tikvrpc", "@com_github_tikv_client_go_v2//util", "@com_github_tikv_pd_client//:client", + "@org_golang_x_exp//slices", "@org_uber_go_zap//:zap", ], ) diff --git a/kv/interface_mock_test.go b/kv/interface_mock_test.go index 8090463c84223..164e777c6ef4a 100644 --- a/kv/interface_mock_test.go +++ b/kv/interface_mock_test.go @@ -161,6 +161,14 @@ func (t *mockTxn) UpdateMemBufferFlags(_ []byte, _ ...FlagsOp) { } +func (t *mockTxn) SetMemoryFootprintChangeHook(func(uint64)) { + +} + +func (t *mockTxn) Mem() uint64 { + return 0 +} + // newMockTxn new a mockTxn. func newMockTxn() Transaction { return &mockTxn{ diff --git a/kv/kv.go b/kv/kv.go index 06e86f41659cb..38243aa13db08 100644 --- a/kv/kv.go +++ b/kv/kv.go @@ -15,6 +15,7 @@ package kv import ( + "bytes" "context" "crypto/tls" "time" @@ -33,6 +34,7 @@ import ( "github.com/tikv/client-go/v2/tikvrpc" "github.com/tikv/client-go/v2/util" pd "github.com/tikv/pd/client" + "golang.org/x/exp/slices" ) // UnCommitIndexKVFlag uses to indicate the index key/value is no need to commit. @@ -203,6 +205,10 @@ type Transaction interface { AssertionProto // Size returns sum of keys and values length. Size() int + // Mem returns the memory consumption of the transaction. + Mem() uint64 + // SetMemoryFootprintChangeHook sets the hook that will be called when the memory footprint changes. + SetMemoryFootprintChangeHook(func(uint64)) // Len returns the number of entries in the DB. Len() int // Reset reset the Transaction to initial states. @@ -331,13 +337,148 @@ func (t StoreType) Name() string { return "unspecified" } +// KeyRanges wrap the ranges for partitioned table cases. +// We might send ranges from different in the one request. +type KeyRanges struct { + ranges [][]KeyRange + + isPartitioned bool +} + +// NewPartitionedKeyRanges constructs a new RequestRange for partitioned table. +func NewPartitionedKeyRanges(ranges [][]KeyRange) *KeyRanges { + return &KeyRanges{ + ranges: ranges, + isPartitioned: true, + } +} + +// NewNonParitionedKeyRanges constructs a new RequestRange for a non partitioned table. +func NewNonParitionedKeyRanges(ranges []KeyRange) *KeyRanges { + return &KeyRanges{ + ranges: [][]KeyRange{ranges}, + isPartitioned: false, + } +} + +// FirstPartitionRange returns the the result of first range. +// We may use some func to generate ranges for both partitioned table and non partitioned table. +// This method provides a way to fallback to non-partitioned ranges. +func (rr *KeyRanges) FirstPartitionRange() []KeyRange { + if len(rr.ranges) == 0 { + return []KeyRange{} + } + return rr.ranges[0] +} + +// SetToNonPartitioned set the status to non-partitioned. +func (rr *KeyRanges) SetToNonPartitioned() error { + if len(rr.ranges) > 1 { + return errors.Errorf("you want to change the partitioned ranges to non-partitioned ranges") + } + rr.isPartitioned = false + return nil +} + +// AppendSelfTo appends itself to another slice. +func (rr *KeyRanges) AppendSelfTo(ranges []KeyRange) []KeyRange { + for _, r := range rr.ranges { + ranges = append(ranges, r...) + } + return ranges +} + +// SortByFunc sorts each partition's ranges. +// Since the ranges are sorted in most cases, we check it first. +func (rr *KeyRanges) SortByFunc(sortFunc func(i, j KeyRange) bool) { + if !slices.IsSortedFunc(rr.ranges, func(i, j []KeyRange) bool { + // A simple short-circuit since the empty range actually won't make anything wrong. + if len(i) == 0 || len(j) == 0 { + return true + } + return sortFunc(i[0], j[0]) + }) { + slices.SortFunc(rr.ranges, func(i, j []KeyRange) bool { + if len(i) == 0 { + return true + } + if len(j) == 0 { + return false + } + return sortFunc(i[0], j[0]) + }) + } + for i := range rr.ranges { + if !slices.IsSortedFunc(rr.ranges[i], sortFunc) { + slices.SortFunc(rr.ranges[i], sortFunc) + } + } +} + +// ForEachPartitionWithErr runs the func for each partition with an error check. +func (rr *KeyRanges) ForEachPartitionWithErr(theFunc func([]KeyRange) error) (err error) { + for i := range rr.ranges { + err = theFunc(rr.ranges[i]) + if err != nil { + return err + } + } + return nil +} + +// ForEachPartition runs the func for each partition without error check. +func (rr *KeyRanges) ForEachPartition(theFunc func([]KeyRange)) { + for i := range rr.ranges { + theFunc(rr.ranges[i]) + } +} + +// PartitionNum returns how many partition is involved in the ranges. +func (rr *KeyRanges) PartitionNum() int { + return len(rr.ranges) +} + +// IsFullySorted checks whether the ranges are sorted inside partition and each partition is also sorated. +func (rr *KeyRanges) IsFullySorted() bool { + sortedByPartition := slices.IsSortedFunc(rr.ranges, func(i, j []KeyRange) bool { + // A simple short-circuit since the empty range actually won't make anything wrong. + if len(i) == 0 || len(j) == 0 { + return true + } + return bytes.Compare(i[0].StartKey, j[0].StartKey) < 0 + }) + if !sortedByPartition { + return false + } + for _, ranges := range rr.ranges { + if !slices.IsSortedFunc(ranges, func(i, j KeyRange) bool { + return bytes.Compare(i.StartKey, j.StartKey) < 0 + }) { + return false + } + } + return true +} + +// TotalRangeNum returns how many ranges there are. +func (rr *KeyRanges) TotalRangeNum() int { + ret := 0 + for _, r := range rr.ranges { + ret += len(r) + } + return ret +} + // Request represents a kv request. type Request struct { // Tp is the request type. - Tp int64 - StartTs uint64 - Data []byte - KeyRanges []KeyRange + Tp int64 + StartTs uint64 + Data []byte + + // KeyRanges makes sure that the request is sent first by partition then by region. + // When the table is small, it's possible that multiple partitions are in the same region. + KeyRanges *KeyRanges // For PartitionTableScan used by tiflash. PartitionIDAndRanges []PartitionIDAndRanges @@ -396,6 +537,8 @@ type Request struct { RequestSource util.RequestSource // FixedRowCountHint is the optimization hint for copr request for task scheduling. FixedRowCountHint []int + // StoreBatchSize indicates the batch size of coprocessor in the same store. + StoreBatchSize int } // CoprRequestAdjuster is used to check and adjust a copr request according to specific rules. diff --git a/kv/option.go b/kv/option.go index 888a1e24f0fa0..a0e658f45aade 100644 --- a/kv/option.go +++ b/kv/option.go @@ -93,6 +93,8 @@ const ( ReplicaReadAdjuster // ScanBatchSize set the iter scan batch size. ScanBatchSize + // TxnSource set the source of this transaction. + TxnSource ) // ReplicaReadType is the type of replica to read data from @@ -165,4 +167,6 @@ const ( InternalTxnBR = InternalTxnTools // InternalTxnTrace handles the trace statement. InternalTxnTrace = "Trace" + // InternalTxnTTL is the type of TTL usage + InternalTxnTTL = "TTL" ) diff --git a/meta/autoid/BUILD.bazel b/meta/autoid/BUILD.bazel index 7490d65691e4c..50e53258f305b 100644 --- a/meta/autoid/BUILD.bazel +++ b/meta/autoid/BUILD.bazel @@ -12,6 +12,7 @@ go_library( visibility = ["//visibility:public"], deps = [ "//autoid_service", + "//config", "//errno", "//kv", "//meta", @@ -31,7 +32,7 @@ go_library( "@com_github_tikv_client_go_v2//util", "@io_etcd_go_etcd_client_v3//:client", "@org_golang_google_grpc//:grpc", - "@org_golang_google_grpc//credentials/insecure", + "@org_golang_google_grpc//credentials", "@org_uber_go_zap//:zap", ], ) diff --git a/meta/autoid/autoid.go b/meta/autoid/autoid.go index def3245bb2da3..aba2ad565b617 100644 --- a/meta/autoid/autoid.go +++ b/meta/autoid/autoid.go @@ -205,16 +205,36 @@ type Allocator interface { } // Allocators represents a set of `Allocator`s. -type Allocators []Allocator +type Allocators struct { + SepAutoInc bool + Allocs []Allocator +} // NewAllocators packs multiple `Allocator`s into Allocators. -func NewAllocators(allocators ...Allocator) Allocators { - return allocators +func NewAllocators(sepAutoInc bool, allocators ...Allocator) Allocators { + return Allocators{ + SepAutoInc: sepAutoInc, + Allocs: allocators, + } +} + +// Append add an allocator to the allocators. +func (all Allocators) Append(a Allocator) Allocators { + return Allocators{ + SepAutoInc: all.SepAutoInc, + Allocs: append(all.Allocs, a), + } } // Get returns the Allocator according to the AllocatorType. func (all Allocators) Get(allocType AllocatorType) Allocator { - for _, a := range all { + if !all.SepAutoInc { + if allocType == AutoIncrementType { + allocType = RowIDAllocType + } + } + + for _, a := range all.Allocs { if a.GetType() == allocType { return a } @@ -224,13 +244,16 @@ func (all Allocators) Get(allocType AllocatorType) Allocator { // Filter filters all the allocators that match pred. func (all Allocators) Filter(pred func(Allocator) bool) Allocators { - var ret Allocators - for _, a := range all { + var ret []Allocator + for _, a := range all.Allocs { if pred(a) { ret = append(ret, a) } } - return ret + return Allocators{ + SepAutoInc: all.SepAutoInc, + Allocs: ret, + } } type allocator struct { @@ -593,10 +616,17 @@ func NewAllocator(store kv.Storage, dbID, tbID int64, isUnsigned bool, } // Use the MySQL compatible AUTO_INCREMENT mode. - if allocType == RowIDAllocType && alloc.customStep && alloc.step == 1 { - alloc1 := newSinglePointAlloc(store, dbID, tbID, isUnsigned) - if alloc1 != nil { - return alloc1 + if alloc.customStep && alloc.step == 1 && alloc.tbVersion >= model.TableInfoVersion5 { + if allocType == AutoIncrementType { + alloc1 := newSinglePointAlloc(store, dbID, tbID, isUnsigned) + if alloc1 != nil { + return alloc1 + } + } else if allocType == RowIDAllocType { + // Now that the autoid and rowid allocator are separated, the AUTO_ID_CACHE 1 setting should not make + // the rowid allocator do not use cache. + alloc.customStep = false + alloc.step = step } } @@ -630,6 +660,10 @@ func NewAllocatorsFromTblInfo(store kv.Storage, schemaID int64, tblInfo *model.T alloc := NewAllocator(store, dbID, tblInfo.ID, tblInfo.IsAutoIncColUnsigned(), RowIDAllocType, idCacheOpt, tblVer) allocs = append(allocs, alloc) } + if hasAutoIncID { + alloc := NewAllocator(store, dbID, tblInfo.ID, tblInfo.IsAutoIncColUnsigned(), AutoIncrementType, idCacheOpt, tblVer) + allocs = append(allocs, alloc) + } hasAutoRandID := tblInfo.ContainsAutoRandomBits() if hasAutoRandID { alloc := NewAllocator(store, dbID, tblInfo.ID, tblInfo.IsAutoRandomBitColUnsigned(), AutoRandomType, idCacheOpt, tblVer) @@ -638,7 +672,7 @@ func NewAllocatorsFromTblInfo(store kv.Storage, schemaID int64, tblInfo *model.T if tblInfo.IsSequence() { allocs = append(allocs, NewSequenceAllocator(store, dbID, tblInfo.ID, tblInfo.Sequence)) } - return NewAllocators(allocs...) + return NewAllocators(tblInfo.SepAutoInc(), allocs...) } // Alloc implements autoid.Allocator Alloc interface. @@ -839,7 +873,7 @@ func (alloc *allocator) alloc4Signed(ctx context.Context, n uint64, increment, o var newBase, newEnd int64 startTime := time.Now() nextStep := alloc.step - if !alloc.customStep { + if !alloc.customStep && alloc.end > 0 { // Although it may skip a segment here, we still think it is consumed. consumeDur := startTime.Sub(alloc.lastAllocTime) nextStep = NextStep(alloc.step, consumeDur) @@ -945,6 +979,11 @@ func (alloc *allocator) alloc4Unsigned(ctx context.Context, n uint64, increment, }() } + if codeRun := ctx.Value("testIssue39528"); codeRun != nil { + *(codeRun.(*bool)) = true + return 0, 0, errors.New("mock error for test") + } + ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnMeta) err := kv.RunInNewTxn(ctx, alloc.store, true, func(ctx context.Context, txn kv.Transaction) error { if span := opentracing.SpanFromContext(ctx); span != nil && span.Tracer() != nil { diff --git a/meta/autoid/autoid_service.go b/meta/autoid/autoid_service.go index 6133dfdfc3cb2..0b0f4946b3d0c 100644 --- a/meta/autoid/autoid_service.go +++ b/meta/autoid/autoid_service.go @@ -23,12 +23,13 @@ import ( "github.com/opentracing/opentracing-go" "github.com/pingcap/errors" "github.com/pingcap/kvproto/pkg/autoid" + "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/metrics" "github.com/pingcap/tidb/util/logutil" clientv3 "go.etcd.io/etcd/client/v3" "go.uber.org/zap" "google.golang.org/grpc" - "google.golang.org/grpc/credentials/insecure" + "google.golang.org/grpc/credentials" ) var _ Allocator = &singlePointAlloc{} @@ -77,13 +78,23 @@ func (d *clientDiscover) GetClient(ctx context.Context) (autoid.AutoIDAllocClien if err != nil { return nil, errors.Trace(err) } - if len(resp.Kvs) == 0 { return nil, errors.New("autoid service leader not found") } addr := string(resp.Kvs[0].Value) - grpcConn, err := grpc.Dial(addr, grpc.WithTransportCredentials(insecure.NewCredentials())) + opt := grpc.WithInsecure() + security := config.GetGlobalConfig().Security + if len(security.ClusterSSLCA) != 0 { + clusterSecurity := security.ClusterSecurity() + tlsConfig, err := clusterSecurity.ToTLSConfig() + if err != nil { + return nil, errors.Trace(err) + } + opt = grpc.WithTransportCredentials(credentials.NewTLS(tlsConfig)) + } + logutil.BgLogger().Info("[autoid client] connect to leader", zap.String("addr", addr)) + grpcConn, err := grpc.Dial(addr, opt) if err != nil { return nil, errors.Trace(err) } @@ -128,11 +139,14 @@ retry: if err != nil { if strings.Contains(err.Error(), "rpc error") { time.Sleep(backoffDuration) - sp.resetConn() + sp.resetConn(err) goto retry } return 0, 0, errors.Trace(err) } + if len(resp.Errmsg) != 0 { + return 0, 0, errors.Trace(errors.New(string(resp.Errmsg))) + } du := time.Since(start) metrics.AutoIDReqDuration.Observe(du.Seconds()) @@ -142,7 +156,9 @@ retry: const backoffDuration = 200 * time.Millisecond -func (sp *singlePointAlloc) resetConn() { +func (sp *singlePointAlloc) resetConn(reason error) { + logutil.BgLogger().Info("[autoid client] reset grpc connection", + zap.String("reason", reason.Error())) var grpcConn *grpc.ClientConn sp.mu.Lock() grpcConn = sp.mu.ClientConn @@ -152,7 +168,9 @@ func (sp *singlePointAlloc) resetConn() { // Close grpc.ClientConn to release resource. if grpcConn != nil { err := grpcConn.Close() - logutil.BgLogger().Info("[autoid client] AllocAutoID grpc error, reconnect", zap.Error(err)) + if err != nil { + logutil.BgLogger().Warn("[autoid client] close grpc connection error", zap.Error(err)) + } } } @@ -182,7 +200,8 @@ retry: if err != nil { return errors.Trace(err) } - _, err = cli.Rebase(ctx, &autoid.RebaseRequest{ + var resp *autoid.RebaseResponse + resp, err = cli.Rebase(ctx, &autoid.RebaseRequest{ DbID: sp.dbID, TblID: sp.tblID, Base: newBase, @@ -192,13 +211,16 @@ retry: if err != nil { if strings.Contains(err.Error(), "rpc error") { time.Sleep(backoffDuration) - sp.resetConn() + sp.resetConn(err) goto retry } return errors.Trace(err) } + if len(resp.Errmsg) != 0 { + return errors.Trace(errors.New(string(resp.Errmsg))) + } sp.lastAllocated = newBase - return err + return nil } // ForceRebase set the next global auto ID to newBase. @@ -232,5 +254,5 @@ func (sp *singlePointAlloc) NextGlobalAutoID() (int64, error) { } func (*singlePointAlloc) GetType() AllocatorType { - return RowIDAllocType + return AutoIncrementType } diff --git a/meta/meta.go b/meta/meta.go index ad2f5d02e0d05..15c8869767e0d 100644 --- a/meta/meta.go +++ b/meta/meta.go @@ -78,6 +78,7 @@ var ( mPolicyMagicByte = CurrentMagicByteVer mDDLTableVersion = []byte("DDLTableVersion") mConcurrentDDL = []byte("concurrentDDL") + mMetaDataLock = []byte("metadataLock") ) const ( @@ -642,6 +643,29 @@ func (m *Meta) IsConcurrentDDL() (bool, error) { return len(val) == 0 || bytes.Equal(val, []byte("1")), nil } +// SetMetadataLock sets the metadata lock. +func (m *Meta) SetMetadataLock(b bool) error { + var data []byte + if b { + data = []byte("1") + } else { + data = []byte("0") + } + return errors.Trace(m.txn.Set(mMetaDataLock, data)) +} + +// GetMetadataLock gets the metadata lock. +func (m *Meta) GetMetadataLock() (enable bool, isNull bool, err error) { + val, err := m.txn.Get(mMetaDataLock) + if err != nil { + return false, false, errors.Trace(err) + } + if len(val) == 0 { + return false, true, nil + } + return bytes.Equal(val, []byte("1")), false, nil +} + // CreateTableAndSetAutoID creates a table with tableInfo in database, // and rebases the table autoID. func (m *Meta) CreateTableAndSetAutoID(dbID int64, tableInfo *model.TableInfo, autoIncID, autoRandID int64) error { diff --git a/meta/meta_autoid.go b/meta/meta_autoid.go index 18d384b2b25a7..5763aa268051a 100644 --- a/meta/meta_autoid.go +++ b/meta/meta_autoid.go @@ -102,7 +102,7 @@ type autoIDAccessors struct { access autoIDAccessor } -const sepAutoIncVer = model.TableInfoVersion4 + 1 +const sepAutoIncVer = model.TableInfoVersion5 // Get implements the interface AutoIDAccessors. func (a *autoIDAccessors) Get() (autoIDs AutoIDGroup, err error) { diff --git a/metrics/grafana/performance_overview.json b/metrics/grafana/performance_overview.json index 19f526e562280..5ee670584f99e 100644 --- a/metrics/grafana/performance_overview.json +++ b/metrics/grafana/performance_overview.json @@ -57,8 +57,8 @@ "editable": true, "gnetId": null, "graphTooltip": 1, - "id": null, - "iteration": 1577357354898, + "id": 31, + "iteration": 1669018858346, "links": [], "panels": [ { @@ -479,6 +479,11 @@ "lines": true, "linewidth": 2, "stack": false + }, + { + "$$hashKey": "object:321", + "alias": "tiflash_mpp", + "color": "#8F3BB8" } ], "spaceLength": 10, @@ -508,6 +513,14 @@ "interval": "", "legendFormat": "execute time", "refId": "F" + }, + { + "exemplar": true, + "expr": "sum(rate(tiflash_coprocessor_request_duration_seconds_sum{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"}[1m])) ", + "hide": false, + "interval": "", + "legendFormat": "tiflash_mpp", + "refId": "A" } ], "thresholds": [], @@ -1048,12 +1061,12 @@ }, { "aliasColors": {}, - "bars": false, + "bars": true, "dashLength": 10, "dashes": false, "datasource": "${DS_TEST-CLUSTER}", "decimals": null, - "description": "TiDB current connection counts", + "description": "kv request time by command source", "editable": true, "error": false, "fill": 1, @@ -1066,7 +1079,7 @@ "y": 15 }, "hiddenSeries": false, - "id": 188, + "id": 23763571995, "legend": { "alignAsTable": true, "avg": true, @@ -1082,7 +1095,7 @@ "total": false, "values": true }, - "lines": true, + "lines": false, "linewidth": 1, "links": [], "nullPointMode": "null as zero", @@ -1094,57 +1107,49 @@ "pointradius": 5, "points": false, "renderer": "flot", - "seriesOverrides": [], + "seriesOverrides": [ + { + "$$hashKey": "object:243", + "alias": "kv request total time", + "bars": false, + "color": "#FADE2A", + "lines": true, + "stack": false + } + ], "spaceLength": 10, - "stack": false, + "stack": true, "steppedLine": false, "targets": [ { "exemplar": true, - "expr": "tidb_server_connections{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"}", + "expr": "sum(rate(tidb_tikvclient_request_time_counter{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (type, source)", "format": "time_series", "interval": "", "intervalFactor": 2, - "legendFormat": "{{instance}}", + "legendFormat": "{{type}}-{{source}}", "refId": "A", "step": 30 }, { "exemplar": true, - "expr": "sum(tidb_server_connections{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"})", + "expr": "sum(rate(tidb_tikvclient_request_time_counter{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", "hide": false, "interval": "", - "intervalFactor": 2, - "legendFormat": "total", + "legendFormat": "kv request total time", "refId": "B" - }, - { - "exemplar": true, - "expr": "sum(tidb_server_tokens{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"})", - "hide": false, - "interval": "", - "legendFormat": "active connections", - "refId": "D" - }, - { - "exemplar": true, - "expr": "sum(tidb_server_tokens{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"}) by (instance)", - "hide": true, - "interval": "", - "legendFormat": "ac-{{instance}}", - "refId": "E" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, - "title": "Connection Count", + "title": "KV Request Time By Source", "tooltip": { "msResolution": false, "shared": true, "sort": 0, - "value_type": "individual" + "value_type": "cumulative" }, "type": "graph", "xaxis": { @@ -1156,9 +1161,9 @@ }, "yaxes": [ { - "$$hashKey": "object:3472", + "$$hashKey": "object:178", "decimals": 0, - "format": "short", + "format": "s", "label": null, "logBase": 1, "max": null, @@ -1166,7 +1171,7 @@ "show": true }, { - "$$hashKey": "object:3473", + "$$hashKey": "object:179", "format": "short", "label": null, "logBase": 1, @@ -1480,8 +1485,8 @@ "fill": 1, "fillGradient": 0, "gridPos": { - "h": 7, - "w": 12, + "h": 6, + "w": 8, "x": 0, "y": 29 }, @@ -1601,9 +1606,9 @@ "fillGradient": 0, "grid": {}, "gridPos": { - "h": 7, - "w": 12, - "x": 12, + "h": 6, + "w": 8, + "x": 8, "y": 29 }, "hiddenSeries": false, @@ -1720,6 +1725,148 @@ "alignLevel": null } }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": null, + "description": "TiDB current connection counts", + "editable": true, + "error": false, + "fill": 1, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 29 + }, + "hiddenSeries": false, + "id": 188, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "hideEmpty": true, + "hideZero": true, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [ + { + "$$hashKey": "object:113", + "alias": "disconnection/s", + "color": "#C4162A", + "linewidth": 2, + "yaxis": 2 + } + ], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "tidb_server_connections{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"}", + "format": "time_series", + "interval": "", + "intervalFactor": 2, + "legendFormat": "{{instance}}", + "refId": "A", + "step": 30 + }, + { + "exemplar": true, + "expr": "sum(tidb_server_connections{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"})", + "hide": false, + "interval": "", + "intervalFactor": 2, + "legendFormat": "total", + "refId": "B" + }, + { + "exemplar": true, + "expr": "sum(tidb_server_tokens{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\"})", + "hide": false, + "interval": "", + "legendFormat": "active connections", + "refId": "D" + }, + { + "exemplar": true, + "expr": "sum(rate(tidb_server_disconnection_total{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", result=\"ok\"}[1m]))", + "hide": false, + "interval": "", + "legendFormat": "disconnection/s", + "refId": "E" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Connection Count", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:3472", + "decimals": 0, + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "$$hashKey": "object:3473", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, { "aliasColors": {}, "bars": false, @@ -1737,7 +1884,7 @@ "h": 8, "w": 8, "x": 0, - "y": 36 + "y": 35 }, "hiddenSeries": false, "id": 156, @@ -1861,7 +2008,7 @@ "h": 8, "w": 8, "x": 8, - "y": 36 + "y": 35 }, "hiddenSeries": false, "id": 170, @@ -1972,7 +2119,7 @@ "h": 8, "w": 8, "x": 16, - "y": 36 + "y": 35 }, "hiddenSeries": false, "id": 169, @@ -2097,7 +2244,7 @@ "h": 8, "w": 8, "x": 0, - "y": 44 + "y": 43 }, "hiddenSeries": false, "id": 172, @@ -2205,7 +2352,7 @@ "h": 8, "w": 8, "x": 8, - "y": 44 + "y": 43 }, "hiddenSeries": false, "id": 173, @@ -2312,7 +2459,7 @@ "h": 8, "w": 8, "x": 16, - "y": 44 + "y": 43 }, "hiddenSeries": false, "id": 77, @@ -2459,7 +2606,7 @@ "h": 8, "w": 8, "x": 0, - "y": 52 + "y": 51 }, "hiddenSeries": false, "id": 185, @@ -2573,7 +2720,7 @@ "h": 8, "w": 8, "x": 8, - "y": 52 + "y": 51 }, "hiddenSeries": false, "id": 183, @@ -2689,7 +2836,7 @@ "h": 8, "w": 8, "x": 16, - "y": 52 + "y": 51 }, "hiddenSeries": false, "id": 174, @@ -2805,7 +2952,7 @@ "h": 9, "w": 8, "x": 0, - "y": 60 + "y": 59 }, "hiddenSeries": false, "id": 176, @@ -2921,7 +3068,7 @@ "h": 9, "w": 8, "x": 8, - "y": 60 + "y": 59 }, "hiddenSeries": false, "id": 177, @@ -3037,7 +3184,7 @@ "h": 9, "w": 8, "x": 16, - "y": 60 + "y": 59 }, "hiddenSeries": false, "id": 186, @@ -3135,27 +3282,3153 @@ "align": false, "alignLevel": null } + }, + { + "collapsed": true, + "datasource": "${DS_TEST-CLUSTER}", + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 68 + }, + "id": 159, + "panels": [ + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": 1, + "description": "The CPU usage of each TiFlash instance", + "editable": true, + "error": false, + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 8, + "x": 0, + "y": 2 + }, + "hiddenSeries": false, + "id": 161, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": null, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "rate(tiflash_proxy_process_cpu_seconds_total{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"tiflash\"}[1m])", + "format": "time_series", + "interval": "", + "intervalFactor": 2, + "legendFormat": "{{instance}}", + "refId": "A", + "step": 10 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "CPU", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": 1, + "description": "The memory usage per TiFlash instance", + "editable": true, + "error": false, + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 8, + "x": 8, + "y": 2 + }, + "hiddenSeries": false, + "id": 1709, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": null, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "avg(tiflash_proxy_process_resident_memory_bytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (instance)", + "format": "time_series", + "interval": "", + "intervalFactor": 2, + "legendFormat": "{{instance}}", + "refId": "A", + "step": 10 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Memory", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": 1, + "description": "The I/O utilization per TiFlash instance", + "editable": true, + "error": false, + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "grid": {}, + "gridPos": { + "h": 7, + "w": 8, + "x": 16, + "y": 2 + }, + "hiddenSeries": false, + "id": 165, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": null, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "rate(node_disk_io_time_seconds_total{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", instance=~\"tiflash.*\"}[1m])", + "format": "time_series", + "interval": "", + "intervalFactor": 2, + "legendFormat": "{{instance}} - {{device}}", + "refId": "A", + "step": 10 + } + ], + "thresholds": [], + "timeRegions": [], + "title": "IO utilization", + "tooltip": { + "msResolution": false, + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The MPP query count in TiFlash", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 0, + "y": 9 + }, + "hiddenSeries": false, + "id": 157, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "max(tiflash_mpp_task_manager{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (instance, type)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{instance}}-{{type}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "MPP Query count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of coprocessor requests received by all TiFlash instances. batch is the number of batch requests. batch_cop is the number of coprocessor requests in the batch requests. cop is the number of coprocessor requests that are sent directly via the coprocessor interface. cop_dag is the number of dag requests in all coprocessor requests. super_batch is the number of requests to enable the Super Batch feature.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 8, + "y": 9 + }, + "hiddenSeries": false, + "id": 9, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(tiflash_coprocessor_request_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (type)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{type}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Request QPS", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "decimals": null, + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of each type of dag executors in the requests received by all TiFlash instances. table_scan is the table scan executor. selection is the selection executor. aggregation is the aggregation executor. top_n is the TopN executor. limit is the limit executor.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 16, + "y": 9 + }, + "hiddenSeries": false, + "id": 2, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(tiflash_coprocessor_executor_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (type)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{type}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Executor QPS", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": true, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The overview of the total duration of all TiFlash instances processing coprocessor requests.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 16 + }, + "hiddenSeries": false, + "id": 166, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": false, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": true, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(tiflash_coprocessor_request_duration_seconds_sum[1m])) by (type)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{type}}", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Request Duration Overview", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": " The total duration of all TiFlash instances processing coprocessor requests.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 16 + }, + "hiddenSeries": false, + "id": 11, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "histogram_quantile(0.999, sum(rate(tiflash_coprocessor_request_duration_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le))", + "format": "time_series", + "hide": true, + "interval": "", + "intervalFactor": 1, + "legendFormat": "999", + "refId": "A" + }, + { + "exemplar": true, + "expr": "histogram_quantile(0.99, sum(rate(tiflash_coprocessor_request_duration_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le,type))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "99-{{type}}", + "refId": "B" + }, + { + "exemplar": true, + "expr": "sum(rate(tiflash_coprocessor_request_duration_seconds_sum{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (type) /sum(rate(tiflash_coprocessor_request_duration_seconds_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (type)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "avg-{{type}}", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Request Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The duration of all TiFlash instances processing coprocessor requests. The processing time is from starting to execute the coprocessor request to completing the execution.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 16 + }, + "hiddenSeries": false, + "id": 13, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "histogram_quantile(0.999, sum(rate(tiflash_coprocessor_request_handle_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le))", + "format": "time_series", + "hide": true, + "interval": "", + "intervalFactor": 1, + "legendFormat": "999", + "refId": "A" + }, + { + "exemplar": true, + "expr": "histogram_quantile(0.99, sum(rate(tiflash_coprocessor_request_handle_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le,type))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "99-{{type}}", + "refId": "B" + }, + { + "exemplar": true, + "expr": "sum(rate(tiflash_coprocessor_request_handle_seconds_sum[1m])) by (type) /sum(rate(tiflash_coprocessor_request_handle_seconds_count[1m])) by (type)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "avg-{{type}}", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Request Handle Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The time used by wait_index for all TiFlash instances, namely the time used to wait until local index >= read_index after the read_index request is received.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 22 + }, + "hiddenSeries": false, + "id": 37, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "hideEmpty": false, + "hideZero": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sort": "current", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [ + { + "alias": "/timeout/", + "yaxis": 2 + } + ], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "histogram_quantile(1.00, sum(rate(tiflash_raft_wait_index_duration_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le))", + "format": "time_series", + "hide": true, + "interval": "", + "intervalFactor": 1, + "legendFormat": "max", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.99, sum(rate(tiflash_raft_wait_index_duration_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "99", + "refId": "B" + }, + { + "exemplar": true, + "expr": "sum(rate(tiflash_raft_wait_index_duration_seconds_sum[1m]))/sum(rate(tiflash_raft_wait_index_duration_seconds_count[1m]))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "avg", + "refId": "D" + }, + { + "expr": "sum(increase(tiflash_system_profile_event_RaftWaitIndexTimeout{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (instance)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{instance}}-timeout", + "refId": "E" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Raft Wait Index Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "decimals": 2, + "format": "opm", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of times that each TiFlash instance triggers the read_index request per second, which equals to the number of Regions triggered.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 22 + }, + "hiddenSeries": false, + "id": 23763571994, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [ + { + "alias": "/timeout/", + "yaxis": 2 + } + ], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "histogram_quantile(1.00, sum(rate(tiflash_raft_wait_index_duration_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le))", + "format": "time_series", + "hide": true, + "interval": "", + "intervalFactor": 1, + "legendFormat": "max", + "refId": "A" + }, + { + "exemplar": true, + "expr": "histogram_quantile(0.99, sum(rate(tiflash_raft_read_index_duration_seconds_bucket{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "99", + "refId": "B" + }, + { + "exemplar": true, + "expr": "sum(rate(tiflash_raft_read_index_duration_seconds_sum[1m]))/sum(rate(tiflash_raft_read_index_duration_seconds_count[1m]))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "avg", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Raft Batch Read Index Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "decimals": 2, + "format": "opm", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": 1, + "description": "The throughput of write by instance", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 0, + "fillGradient": 0, + "gridPos": { + "h": 6, + "w": 24, + "x": 0, + "y": 28 + }, + "height": "", + "hiddenSeries": false, + "id": 89, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": 250, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeatedByRow": true, + "seriesOverrides": [ + { + "alias": "/total/", + "yaxis": 2 + } + ], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(tiflash_storage_throughput_bytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", type=~\"write\"}[1m])) by (instance)", + "format": "time_series", + "hide": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "write-{{instance}}", + "refId": "A", + "step": 10 + }, + { + "exemplar": true, + "expr": "sum(rate(tiflash_storage_throughput_bytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", type=~\"ingest\"}[1m])) by (instance)", + "hide": false, + "interval": "", + "legendFormat": "ingest-{{instance}}", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Write Throughput By Instance", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "binBps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": 1, + "description": "The flow of different kinds of write operations", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 34 + }, + "height": "", + "hiddenSeries": false, + "id": 60, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": null, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeatedByRow": true, + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(tiflash_system_profile_event_WriteBufferFromFileDescriptorWriteBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "File Descriptor", + "refId": "A", + "step": 10 + }, + { + "expr": "sum(rate(tiflash_system_profile_event_PSMWriteBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Page", + "refId": "B" + }, + { + "expr": "sum(rate(tiflash_system_profile_event_PSMBackgroundWriteBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "PageBackGround", + "refId": "C" + }, + { + "expr": "sum(rate(tiflash_system_profile_event_WriteBufferAIOWriteBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "hide": true, + "interval": "", + "intervalFactor": 1, + "legendFormat": "AIO", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Write flow", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "binBps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "decimals": 1, + "description": "The flow of different kinds of read operations", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 34 + }, + "height": "", + "hiddenSeries": false, + "id": 59, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": true, + "min": false, + "rightSide": true, + "show": true, + "sideWidth": null, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeatedByRow": true, + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(tiflash_system_profile_event_ReadBufferFromFileDescriptorReadBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "File Descriptor", + "refId": "A", + "step": 10 + }, + { + "expr": "sum(rate(tiflash_system_profile_event_PSMReadBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Page", + "refId": "B" + }, + { + "expr": "sum(rate(tiflash_system_profile_event_PSMBackgroundReadBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "PageBackGround", + "refId": "C" + }, + { + "expr": "sum(rate(tiflash_system_profile_event_ReadBufferAIOReadBytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m]))", + "format": "time_series", + "hide": true, + "intervalFactor": 1, + "legendFormat": "AIO", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Read flow", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "binBps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "title": "TiFlash", + "type": "row" + }, + { + "collapsed": true, + "datasource": "${DS_TEST-CLUSTER}", + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 69 + }, + "id": 515, + "panels": [ + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "CPU usage of TiCDC", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 0, + "y": 71 + }, + "hiddenSeries": false, + "id": 24, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "sort": "current", + "sortDesc": false, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [ + { + "$$hashKey": "object:284", + "alias": "/.*MaxProcs/", + "fill": 0, + "linewidth": 2, + "yaxis": 2 + } + ], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "rate(process_cpu_seconds_total{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"ticdc\"}[1m])", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{instance}}", + "refId": "A" + }, + { + "expr": "ticdc_server_go_max_procs{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"ticdc\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{instance}}-MaxProcs", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "CPU usage", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:295", + "format": "percentunit", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:296", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "Memory usage of TiCDC", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 8, + "y": 71 + }, + "hiddenSeries": false, + "id": 23, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "hideEmpty": true, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_resident_memory_bytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"ticdc\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "process-{{instance}}", + "refId": "A" + }, + { + "expr": "go_memstats_heap_alloc_bytes{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"ticdc\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "heap-{{instance}}", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Memory usage", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "Goroutine count of TiCDC", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 16, + "y": 71 + }, + "hiddenSeries": false, + "id": 26, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": " go_goroutines{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"ticdc\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{instance}}", + "refId": "A" + }, + { + "expr": "go_threads{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", job=\"ticdc\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 1, + "legendFormat": "threads-{{instance}}", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Goroutine count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The lag between changefeed checkpoint ts and the latest ts of upstream TiDB.", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 0, + "y": 78 + }, + "hiddenSeries": false, + "id": 3, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "max(ticdc_owner_checkpoint_ts_lag{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (changefeed)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}", + "refId": "A" + }, + { + "exemplar": true, + "expr": "max(ticdc_processor_checkpoint_ts_lag{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (instance,changefeed)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{instance}}-{{changefeed}}", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Changefeed checkpoint lag", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:79", + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "$$hashKey": "object:80", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The lag between changefeed resolved ts and the latest ts of upstream TiDB.", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 8, + "y": 78 + }, + "hiddenSeries": false, + "id": 513, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "max(ticdc_owner_resolved_ts_lag{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (changefeed)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}", + "refId": "C" + }, + { + "exemplar": true, + "expr": "max(ticdc_processor_resolved_ts_lag{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (instance,changefeed)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{instance}}-{{chanefeed}}", + "refId": "D" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Changefeed resolved ts lag", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The status of each changefeed.\n\n0: Normal\n\n1: Error\n\n2: Failed\n\n3: Stopped\n\n4: Finished\n\n-1: Unknown", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 8, + "x": 16, + "y": 78 + }, + "hiddenSeries": false, + "id": 163, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 1, + "points": true, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "max(ticdc_owner_status{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}) by (changefeed)", + "format": "time_series", + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "The status of changefeeds", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of events that puller outputs to sorter \n per second", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 85 + }, + "hiddenSeries": false, + "id": 218, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum (rate(ticdc_puller_txn_collect_event_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", type!=\"resolved\"}[1m])) by (changefeed, instance, type)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}-{{instance}}-{{type}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Puller output events/s", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of events that sorter outputs to puller \n per second", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 85 + }, + "hiddenSeries": false, + "id": 228, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(ticdc_sorter_output_event_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (changefeed, instance, type)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}-{{instance}}-{{type}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Sorter output events/s", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of events that mounter outputs to sink per second", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 92 + }, + "hiddenSeries": false, + "id": 219, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(ticdc_mounter_total_rows_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (instance,changefeed)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}-{{instance}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Mounter output events/s", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:196", + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:197", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of events that table sorter outputs to sink per second", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 92 + }, + "hiddenSeries": false, + "id": 108, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(ticdc_sink_table_sink_total_rows_count{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\"}[1m])) by (changefeed, instance)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}-{{instance}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Table sink output events/s", + "tooltip": { + "shared": true, + "sort": 2, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "The number of rows that sink flushes to downstream per second.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 99 + }, + "hiddenSeries": false, + "id": 654, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(rate(ticdc_sinkv2_batch_row_count_sum{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (changefeed, instance)", + "interval": "", + "legendFormat": "{{changefeed}}-{{instance}}", + "queryType": "randomWalk", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "SinkV2 - Sink flush rows/s", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:258", + "format": "none", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:259", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "Full flush (backend flush + callback + conflict detector notify) duration", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 99 + }, + "hiddenSeries": false, + "id": 620, + "legend": { + "alignAsTable": true, + "avg": true, + "current": false, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "sort": "avg", + "sortDesc": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "histogram_quantile(0.999, sum(rate(ticdc_sinkv2_txn_worker_flush_duration_bucket{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (le,changefeed,instance))", + "interval": "", + "legendFormat": "99.9-{{changefeed}}-{{instance}}", + "queryType": "randomWalk", + "refId": "A" + }, + { + "exemplar": true, + "expr": "sum(rate(ticdc_sinkv2_txn_worker_flush_duration_sum{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (changefeed,instance) / \nsum(rate(ticdc_sinkv2_txn_worker_flush_duration_count{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (changefeed,instance)", + "hide": false, + "interval": "", + "legendFormat": "avg-{{changefeed}}-{{instance}}", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Transaction Sink Full Flush Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:332", + "format": "s", + "label": null, + "logBase": 2, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:333", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "MQ worker send messages to Kafka, this metric record the time cost on send every message.", + "fieldConfig": { + "defaults": {}, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 106 + }, + "hiddenSeries": false, + "id": 653, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "histogram_quantile(0.999, sum(rate(ticdc_sinkv2_mq_worker_send_message_duration_bucket{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (le,changefeed,instance))", + "interval": "", + "legendFormat": "{{changefeed}}-{{instance}}-P999", + "queryType": "randomWalk", + "refId": "A" + }, + { + "exemplar": true, + "expr": "sum(rate(ticdc_sinkv2_mq_worker_send_message_duration_sum{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (changefeed,instance) / \nsum(rate(ticdc_sinkv2_mq_worker_send_message_duration_count{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}[1m])) by (changefeed,instance)", + "hide": false, + "interval": "", + "legendFormat": "{{changefeed}}-{{instance}}-avg", + "refId": "B" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "MQ Worker Send Message Duration Percentile", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:406", + "format": "s", + "label": null, + "logBase": 2, + "max": null, + "min": null, + "show": true + }, + { + "$$hashKey": "object:407", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "${DS_TEST-CLUSTER}", + "description": "Bytes/second written off all brokers.\nvalue = one-minute moving average rate of Bytes per second", + "fieldConfig": { + "defaults": { + "links": [] + }, + "overrides": [] + }, + "fill": 1, + "fillGradient": 0, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 106 + }, + "hiddenSeries": false, + "id": 628, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "rightSide": false, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "options": { + "alertThreshold": true + }, + "paceLength": 10, + "percentage": false, + "pluginVersion": "8.0.7", + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "exemplar": true, + "expr": "sum(ticdc_sinkv2_kafka_producer_outgoing_byte_rate{k8s_cluster=\"$k8s_cluster\", tidb_cluster=\"$tidb_cluster\", changefeed!=\"\"}) by (changefeed, instance, broker)", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{changefeed}}-{{instance}}-{{broker}}", + "refId": "A" + } + ], + "thresholds": [], + "timeRegions": [], + "title": "Kafka Outgoing Bytes", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "$$hashKey": "object:480", + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "$$hashKey": "object:481", + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "title": "CDC", + "type": "row" } ], "refresh": "30s", - "schemaVersion": 18, + "schemaVersion": 27, "style": "dark", "tags": [], "templating": { "list": [ { "allValue": null, - "current": {}, + "current": { + "isNone": true, + "selected": false, + "text": "None", + "value": "" + }, "datasource": "${DS_TEST-CLUSTER}", + "definition": "", + "description": null, + "error": null, "hide": 2, "includeAll": false, "label": "K8s-cluster", "multi": false, "name": "k8s_cluster", "options": [], - "query": "label_values(pd_cluster_status, k8s_cluster)", + "query": { + "query": "label_values(pd_cluster_status, k8s_cluster)", + "refId": "${DS_TEST-CLUSTER}-k8s_cluster-Variable-Query" + }, "refresh": 2, "regex": "", + "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", "tags": [], @@ -3165,17 +6438,29 @@ }, { "allValue": null, - "current": {}, + "current": { + "isNone": true, + "selected": false, + "text": "None", + "value": "" + }, "datasource": "${DS_TEST-CLUSTER}", + "definition": "", + "description": null, + "error": null, "hide": 2, "includeAll": false, "label": "tidb_cluster", "multi": false, "name": "tidb_cluster", "options": [], - "query": "label_values(pd_cluster_status{k8s_cluster=\"$k8s_cluster\"}, tidb_cluster)", + "query": { + "query": "label_values(pd_cluster_status{k8s_cluster=\"$k8s_cluster\"}, tidb_cluster)", + "refId": "${DS_TEST-CLUSTER}-tidb_cluster-Variable-Query" + }, "refresh": 2, "regex": "", + "skipUrlSync": false, "sort": 1, "tagValuesQuery": "", "tags": [], diff --git a/metrics/log_backup.go b/metrics/log_backup.go index 6c706b8027a79..767fe2e251d8a 100644 --- a/metrics/log_backup.go +++ b/metrics/log_backup.go @@ -60,4 +60,10 @@ var ( Name: "region_request_failure", Help: "The failure reasons of requesting region checkpoints.", }, []string{"reason"}) + RegionCheckpointSubscriptionEvent = prometheus.NewCounterVec(prometheus.CounterOpts{ + Namespace: "tidb", + Subsystem: "log_backup", + Name: "region_checkpoint_event", + Help: "The region flush event count.", + }, []string{"store"}) ) diff --git a/metrics/metrics.go b/metrics/metrics.go index a843e794cff1b..93b278bf87d32 100644 --- a/metrics/metrics.go +++ b/metrics/metrics.go @@ -207,6 +207,7 @@ func RegisterMetrics() { prometheus.MustRegister(RegionCheckpointRequest) prometheus.MustRegister(RegionCheckpointFailure) prometheus.MustRegister(AutoIDReqDuration) + prometheus.MustRegister(RegionCheckpointSubscriptionEvent) prometheus.MustRegister(RCCheckTSWriteConfilictCounter) tikvmetrics.InitMetrics(TiDB, TiKVClient) diff --git a/metrics/telemetry.go b/metrics/telemetry.go index e7629bcd76f6a..591823f9952d9 100644 --- a/metrics/telemetry.go +++ b/metrics/telemetry.go @@ -155,6 +155,20 @@ var ( Name: "flashback_cluster_usage", Help: "Counter of usage of flashback cluster", }) + TelemetryIndexMergeUsage = prometheus.NewCounter( + prometheus.CounterOpts{ + Namespace: "tidb", + Subsystem: "telemetry", + Name: "index_merge_usage", + Help: "Counter of usage of index merge", + }) + TelemetryCompactPartitionCnt = prometheus.NewCounter( + prometheus.CounterOpts{ + Namespace: "tidb", + Subsystem: "telemetry", + Name: "compact_partition_usage", + Help: "Counter of compact table partition", + }) ) // readCounter reads the value of a prometheus.Counter. @@ -254,6 +268,7 @@ type TablePartitionUsageCounter struct { TablePartitionCreateIntervalPartitionsCnt int64 `json:"table_partition_create_interval_partitions_cnt"` TablePartitionAddIntervalPartitionsCnt int64 `json:"table_partition_add_interval_partitions_cnt"` TablePartitionDropIntervalPartitionsCnt int64 `json:"table_partition_drop_interval_partitions_cnt"` + TablePartitionComactCnt int64 `json:"table_TablePartitionComactCnt"` } // ExchangePartitionUsageCounter records the usages of exchange partition. @@ -291,6 +306,7 @@ func (c TablePartitionUsageCounter) Cal(rhs TablePartitionUsageCounter) TablePar TablePartitionCreateIntervalPartitionsCnt: c.TablePartitionCreateIntervalPartitionsCnt - rhs.TablePartitionCreateIntervalPartitionsCnt, TablePartitionAddIntervalPartitionsCnt: c.TablePartitionAddIntervalPartitionsCnt - rhs.TablePartitionAddIntervalPartitionsCnt, TablePartitionDropIntervalPartitionsCnt: c.TablePartitionDropIntervalPartitionsCnt - rhs.TablePartitionDropIntervalPartitionsCnt, + TablePartitionComactCnt: c.TablePartitionComactCnt - rhs.TablePartitionComactCnt, } } @@ -326,12 +342,14 @@ func GetTablePartitionCounter() TablePartitionUsageCounter { TablePartitionCreateIntervalPartitionsCnt: readCounter(TelemetryTablePartitionCreateIntervalPartitionsCnt), TablePartitionAddIntervalPartitionsCnt: readCounter(TelemetryTablePartitionAddIntervalPartitionsCnt), TablePartitionDropIntervalPartitionsCnt: readCounter(TelemetryTablePartitionDropIntervalPartitionsCnt), + TablePartitionComactCnt: readCounter(TelemetryCompactPartitionCnt), } } // NonTransactionalStmtCounter records the usages of non-transactional statements. type NonTransactionalStmtCounter struct { DeleteCount int64 `json:"delete"` + UpdateCount int64 `json:"update"` InsertCount int64 `json:"insert"` } @@ -339,6 +357,7 @@ type NonTransactionalStmtCounter struct { func (n NonTransactionalStmtCounter) Sub(rhs NonTransactionalStmtCounter) NonTransactionalStmtCounter { return NonTransactionalStmtCounter{ DeleteCount: n.DeleteCount - rhs.DeleteCount, + UpdateCount: n.UpdateCount - rhs.UpdateCount, InsertCount: n.InsertCount - rhs.InsertCount, } } @@ -347,6 +366,7 @@ func (n NonTransactionalStmtCounter) Sub(rhs NonTransactionalStmtCounter) NonTra func GetNonTransactionalStmtCounter() NonTransactionalStmtCounter { return NonTransactionalStmtCounter{ DeleteCount: readCounter(NonTransactionalDMLCount.With(prometheus.Labels{LblType: "delete"})), + UpdateCount: readCounter(NonTransactionalDMLCount.With(prometheus.Labels{LblType: "update"})), InsertCount: readCounter(NonTransactionalDMLCount.With(prometheus.Labels{LblType: "insert"})), } } @@ -383,3 +403,22 @@ func GetDDLUsageCounter() DDLUsageCounter { FlashbackClusterUsed: readCounter(TelemetryFlashbackClusterCnt), } } + +// IndexMergeUsageCounter records the usages of IndexMerge feature. +type IndexMergeUsageCounter struct { + IndexMergeUsed int64 `json:"index_merge_used"` +} + +// Sub returns the difference of two counters. +func (i IndexMergeUsageCounter) Sub(rhs IndexMergeUsageCounter) IndexMergeUsageCounter { + return IndexMergeUsageCounter{ + IndexMergeUsed: i.IndexMergeUsed - rhs.IndexMergeUsed, + } +} + +// GetIndexMergeCounter gets the IndexMerge usage counter. +func GetIndexMergeCounter() IndexMergeUsageCounter { + return IndexMergeUsageCounter{ + IndexMergeUsed: readCounter(TelemetryIndexMergeUsage), + } +} diff --git a/parser/BUILD.bazel b/parser/BUILD.bazel index f52b1fc9ac4f3..e6b5bed7c4075 100644 --- a/parser/BUILD.bazel +++ b/parser/BUILD.bazel @@ -9,6 +9,7 @@ go_library( "lexer.go", "misc.go", "parser.go", + "ttlfeaturegate.go", "yy_parser.go", ], importpath = "github.com/pingcap/tidb/parser", diff --git a/parser/ast/ddl.go b/parser/ast/ddl.go index 9b7042e573cc1..f6d60e16863cd 100644 --- a/parser/ast/ddl.go +++ b/parser/ast/ddl.go @@ -28,18 +28,21 @@ var ( _ DDLNode = &AlterTableStmt{} _ DDLNode = &AlterSequenceStmt{} _ DDLNode = &AlterPlacementPolicyStmt{} + _ DDLNode = &AlterResourceGroupStmt{} _ DDLNode = &CreateDatabaseStmt{} _ DDLNode = &CreateIndexStmt{} _ DDLNode = &CreateTableStmt{} _ DDLNode = &CreateViewStmt{} _ DDLNode = &CreateSequenceStmt{} _ DDLNode = &CreatePlacementPolicyStmt{} + _ DDLNode = &CreateResourceGroupStmt{} _ DDLNode = &DropDatabaseStmt{} _ DDLNode = &FlashBackDatabaseStmt{} _ DDLNode = &DropIndexStmt{} _ DDLNode = &DropTableStmt{} _ DDLNode = &DropSequenceStmt{} _ DDLNode = &DropPlacementPolicyStmt{} + _ DDLNode = &DropResourceGroupStmt{} _ DDLNode = &RenameTableStmt{} _ DDLNode = &TruncateTableStmt{} _ DDLNode = &RepairTableStmt{} @@ -1180,6 +1183,13 @@ func (n *CreateTableStmt) Accept(v Visitor) (Node, bool) { } n.Partition = node.(*PartitionOptions) } + for i, option := range n.Options { + node, ok = option.Accept(v) + if !ok { + return n, false + } + n.Options[i] = node.(*TableOption) + } return v.Leave(n) } @@ -1273,6 +1283,32 @@ func (n *DropPlacementPolicyStmt) Accept(v Visitor) (Node, bool) { return v.Leave(n) } +type DropResourceGroupStmt struct { + ddlNode + + IfExists bool + ResourceGroupName model.CIStr +} + +// Restore implements Restore interface. +func (n *DropResourceGroupStmt) Restore(ctx *format.RestoreCtx) error { + ctx.WriteKeyWord("DROP RESOURCE GROUP ") + if n.IfExists { + ctx.WriteKeyWord("IF EXISTS ") + } + ctx.WriteName(n.ResourceGroupName.O) + return nil +} + +func (n *DropResourceGroupStmt) Accept(v Visitor) (Node, bool) { + newNode, skipChildren := v.Enter(n) + if skipChildren { + return v.Leave(newNode) + } + n = newNode.(*DropResourceGroupStmt) + return v.Leave(n) +} + // DropSequenceStmt is a statement to drop a Sequence. type DropSequenceStmt struct { ddlNode @@ -1533,6 +1569,43 @@ func (n *CreatePlacementPolicyStmt) Accept(v Visitor) (Node, bool) { return v.Leave(n) } +// CreateResourceGroupStmt is a statement to create a policy. +type CreateResourceGroupStmt struct { + ddlNode + + IfNotExists bool + ResourceGroupName model.CIStr + ResourceGroupOptionList []*ResourceGroupOption +} + +// Restore implements Node interface. +func (n *CreateResourceGroupStmt) Restore(ctx *format.RestoreCtx) error { + ctx.WriteKeyWord("CREATE ") + + ctx.WriteKeyWord("RESOURCE GROUP ") + if n.IfNotExists { + ctx.WriteKeyWord("IF NOT EXISTS ") + } + ctx.WriteName(n.ResourceGroupName.O) + for i, option := range n.ResourceGroupOptionList { + ctx.WritePlain(" ") + if err := option.Restore(ctx); err != nil { + return errors.Annotatef(err, "An error occurred while splicing CreatePlacementPolicy TableOption: [%v]", i) + } + } + return nil +} + +// Accept implements Node Accept interface. +func (n *CreateResourceGroupStmt) Accept(v Visitor) (Node, bool) { + newNode, skipChildren := v.Enter(n) + if skipChildren { + return v.Leave(newNode) + } + n = newNode.(*CreateResourceGroupStmt) + return v.Leave(n) +} + // CreateSequenceStmt is a statement to create a Sequence. type CreateSequenceStmt struct { ddlNode @@ -2024,6 +2097,59 @@ func (n *PlacementOption) Restore(ctx *format.RestoreCtx) error { return ctx.WriteWithSpecialComments(tidb.FeatureIDPlacement, fn) } +// ResourceGroupOption is used for parsing resource group option. +type ResourceGroupOption struct { + Tp ResourceUnitType + StrValue string +} + +type ResourceUnitType int + +const ( + ResourceUnitCPU ResourceUnitType = iota + ResourceRRURate + ResourceWRURate + // Only valied when read/wirte not setting. + ResourceUnitIORate + ResourceUnitIOReadRate + ResourceUnitIOWriteRate +) + +func (n *ResourceGroupOption) Restore(ctx *format.RestoreCtx) error { + if ctx.Flags.HasSkipPlacementRuleForRestoreFlag() { + return nil + } + fn := func() error { + switch n.Tp { + case ResourceUnitCPU: + ctx.WriteKeyWord("CPU ") + ctx.WritePlain("= ") + ctx.WriteString(n.StrValue) + case ResourceRRURate: + ctx.WriteKeyWord("RRU_PER_SEC ") + ctx.WritePlain("= ") + ctx.WriteString(n.StrValue) + case ResourceWRURate: + ctx.WriteKeyWord("WRU_PER_SEC ") + ctx.WritePlain("= ") + ctx.WriteString(n.StrValue) + case ResourceUnitIOReadRate: + ctx.WriteKeyWord("IO_READ_BANDWIDTH ") + ctx.WritePlain("= ") + ctx.WriteString(n.StrValue) + case ResourceUnitIOWriteRate: + ctx.WriteKeyWord("IO_WRITE_BANDWIDTH ") + ctx.WritePlain("= ") + ctx.WriteString(n.StrValue) + default: + return errors.Errorf("invalid PlacementOption: %d", n.Tp) + } + return nil + } + // WriteSpecialComment + return ctx.WriteWithSpecialComments(tidb.FeatureIDResouceGroup, fn) +} + type StatsOptionType int const ( @@ -2074,6 +2200,8 @@ const ( TableOptionTableCheckSum TableOptionUnion TableOptionEncryption + TableOptionTTL + TableOptionTTLEnable TableOptionPlacementPolicy = TableOptionType(PlacementOptionPolicy) TableOptionStatsBuckets = TableOptionType(StatsOptionBuckets) TableOptionStatsTopN = TableOptionType(StatsOptionTopN) @@ -2120,13 +2248,16 @@ const ( // TableOption is used for parsing table option from SQL. type TableOption struct { - Tp TableOptionType - Default bool - StrValue string - UintValue uint64 - BoolValue bool - Value ValueExpr - TableNames []*TableName + node + Tp TableOptionType + Default bool + StrValue string + UintValue uint64 + BoolValue bool + TimeUnitValue *TimeUnitExpr + Value ValueExpr + TableNames []*TableName + ColumnName *ColumnName } func (n *TableOption) Restore(ctx *format.RestoreCtx) error { @@ -2405,12 +2536,60 @@ func (n *TableOption) Restore(ctx *format.RestoreCtx) error { } else { ctx.WriteString(n.StrValue) } + case TableOptionTTL: + _ = ctx.WriteWithSpecialComments(tidb.FeatureIDTTL, func() error { + ctx.WriteKeyWord("TTL ") + ctx.WritePlain("= ") + ctx.WriteName(n.ColumnName.Name.String()) + ctx.WritePlain(" + INTERVAL ") + err := n.Value.Restore(ctx) + ctx.WritePlain(" ") + if err != nil { + return err + } + return n.TimeUnitValue.Restore(ctx) + }) + case TableOptionTTLEnable: + _ = ctx.WriteWithSpecialComments(tidb.FeatureIDTTL, func() error { + ctx.WriteKeyWord("TTL_ENABLE ") + ctx.WritePlain("= ") + if n.BoolValue { + ctx.WriteString("ON") + } else { + ctx.WriteString("OFF") + } + return nil + }) default: return errors.Errorf("invalid TableOption: %d", n.Tp) } return nil } +// Accept implements Node Accept interface. +func (n *TableOption) Accept(v Visitor) (Node, bool) { + newNode, skipChildren := v.Enter(n) + if skipChildren { + return v.Leave(newNode) + } + n = newNode.(*TableOption) + if n.Value != nil { + node, ok := n.Value.Accept(v) + if !ok { + return n, false + } + n.Value = node.(ValueExpr) + } + if n.TimeUnitValue != nil { + node, ok := n.TimeUnitValue.Accept(v) + if !ok { + return n, false + } + n.TimeUnitValue = node.(*TimeUnitExpr) + } + return v.Leave(n) +} + // SequenceOptionType is the type for SequenceOption type SequenceOptionType int @@ -2599,6 +2778,7 @@ const ( AlterTableAddLastPartition AlterTableReorganizeLastPartition AlterTableReorganizeFirstPartition + AlterTableRemoveTTL ) // LockType is the type for AlterTableSpec. @@ -3280,7 +3460,11 @@ func (n *AlterTableSpec) Restore(ctx *format.RestoreCtx) error { if err := spec.Restore(ctx); err != nil { return errors.Annotatef(err, "An error occurred while restore AlterTableSpec.StatsOptionsSpec") } - + case AlterTableRemoveTTL: + _ = ctx.WriteWithSpecialComments(tidb.FeatureIDTTL, func() error { + ctx.WriteKeyWord("REMOVE TTL") + return nil + }) default: // TODO: not support ctx.WritePlainf(" /* AlterTableType(%d) is not supported */ ", n.Tp) @@ -3344,6 +3528,13 @@ func (n *AlterTableSpec) Accept(v Visitor) (Node, bool) { } n.Partition = node.(*PartitionOptions) } + for i, option := range n.Options { + node, ok := option.Accept(v) + if !ok { + return n, false + } + n.Options[i] = node.(*TableOption) + } for _, def := range n.PartDefinitions { if !def.acceptInPlace(v) { return n, false @@ -4232,6 +4423,39 @@ func (n *AlterPlacementPolicyStmt) Accept(v Visitor) (Node, bool) { return v.Leave(n) } +// AlterResourceGroupStmt is a statement to alter placement policy option. +type AlterResourceGroupStmt struct { + ddlNode + + ResourceGroupName model.CIStr + IfExists bool + ResourceGroupOptionList []*ResourceGroupOption +} + +func (n *AlterResourceGroupStmt) Restore(ctx *format.RestoreCtx) error { + ctx.WriteKeyWord("ALTER RESOURCE GROUP ") + if n.IfExists { + ctx.WriteKeyWord("IF EXISTS ") + } + ctx.WriteName(n.ResourceGroupName.O) + for i, option := range n.ResourceGroupOptionList { + ctx.WritePlain(" ") + if err := option.Restore(ctx); err != nil { + return errors.Annotatef(err, "An error occurred while splicing AlterResourceStmt Options: [%v]", i) + } + } + return nil +} + +func (n *AlterResourceGroupStmt) Accept(v Visitor) (Node, bool) { + newNode, skipChildren := v.Enter(n) + if skipChildren { + return v.Leave(newNode) + } + n = newNode.(*AlterResourceGroupStmt) + return v.Leave(n) +} + // AlterSequenceStmt is a statement to alter sequence option. type AlterSequenceStmt struct { ddlNode diff --git a/parser/ast/ddl_test.go b/parser/ast/ddl_test.go index 3a5b1087d0bd2..fed5c1c759fbf 100644 --- a/parser/ast/ddl_test.go +++ b/parser/ast/ddl_test.go @@ -16,6 +16,7 @@ package ast_test import ( "testing" + "github.com/pingcap/tidb/parser" . "github.com/pingcap/tidb/parser/ast" "github.com/pingcap/tidb/parser/format" "github.com/stretchr/testify/require" @@ -840,3 +841,34 @@ func TestFlashBackDatabaseRestore(t *testing.T) { } runNodeRestoreTest(t, testCases, "%s", extractNodeFunc) } + +func TestTableOptionTTLRestore(t *testing.T) { + parser.TTLFeatureGate = true + + sourceSQL1 := "create table t (created_at datetime) ttl = created_at + INTERVAL 1 YEAR" + sourceSQL2 := "alter table t ttl_enable = 'OFF'" + sourceSQL3 := "alter table t remove ttl" + cases := []struct { + sourceSQL string + flags format.RestoreFlags + expectSQL string + }{ + {sourceSQL1, format.DefaultRestoreFlags, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL 1 YEAR"}, + {sourceSQL1, format.DefaultRestoreFlags | format.RestoreTiDBSpecialComment, "CREATE TABLE `t` (`created_at` DATETIME) /*T![ttl] TTL = `created_at` + INTERVAL 1 YEAR */"}, + {sourceSQL2, format.DefaultRestoreFlags, "ALTER TABLE `t` TTL_ENABLE = 'OFF'"}, + {sourceSQL2, format.DefaultRestoreFlags | format.RestoreTiDBSpecialComment, "ALTER TABLE `t` /*T![ttl] TTL_ENABLE = 'OFF' */"}, + {sourceSQL3, format.DefaultRestoreFlags, "ALTER TABLE `t` REMOVE TTL"}, + {sourceSQL3, format.DefaultRestoreFlags | format.RestoreTiDBSpecialComment, "ALTER TABLE `t` /*T![ttl] REMOVE TTL */"}, + } + + extractNodeFunc := func(node Node) Node { + return node + } + + for _, ca := range cases { + testCases := []NodeRestoreTestCase{ + {ca.sourceSQL, ca.expectSQL}, + } + runNodeRestoreTestWithFlags(t, testCases, "%s", extractNodeFunc, ca.flags) + } +} diff --git a/parser/ast/dml.go b/parser/ast/dml.go index 2712a8f7eba51..c711da90d123f 100644 --- a/parser/ast/dml.go +++ b/parser/ast/dml.go @@ -2221,8 +2221,8 @@ func (n *InsertStmt) SetWhereExpr(e ExprNode) { s.Where = e } -// TableSource implements ShardableDMLStmt interface. -func (n *InsertStmt) TableSource() (*TableSource, bool) { +// TableRefsJoin implements ShardableDMLStmt interface. +func (n *InsertStmt) TableRefsJoin() (*Join, bool) { if n.Select == nil { return nil, false } @@ -2230,8 +2230,7 @@ func (n *InsertStmt) TableSource() (*TableSource, bool) { if !ok { return nil, false } - table, ok := s.From.TableRefs.Left.(*TableSource) - return table, ok + return s.From.TableRefs, true } // DeleteStmt is a statement to delete rows from table. @@ -2410,10 +2409,9 @@ func (n *DeleteStmt) SetWhereExpr(e ExprNode) { n.Where = e } -// TableSource implements ShardableDMLStmt interface. -func (n *DeleteStmt) TableSource() (*TableSource, bool) { - table, ok := n.TableRefs.TableRefs.Left.(*TableSource) - return table, ok +// TableRefsJoin implements ShardableDMLStmt interface. +func (n *DeleteStmt) TableRefsJoin() (*Join, bool) { + return n.TableRefs.TableRefs, true } const ( @@ -2426,8 +2424,8 @@ type ShardableDMLStmt = interface { StmtNode WhereExpr() ExprNode SetWhereExpr(ExprNode) - // TableSource returns the *only* target table source in the statement. - TableSource() (table *TableSource, ok bool) + // TableRefsJoin returns the table refs in the statement. + TableRefsJoin() (refs *Join, ok bool) } var _ ShardableDMLStmt = &DeleteStmt{} @@ -2649,10 +2647,9 @@ func (n *UpdateStmt) SetWhereExpr(e ExprNode) { n.Where = e } -// TableSource implements ShardableDMLStmt interface. -func (n *UpdateStmt) TableSource() (*TableSource, bool) { - table, ok := n.TableRefs.TableRefs.Left.(*TableSource) - return table, ok +// TableRefsJoin implements ShardableDMLStmt interface. +func (n *UpdateStmt) TableRefsJoin() (*Join, bool) { + return n.TableRefs.TableRefs, true } // Limit is the limit clause. diff --git a/parser/ast/misc.go b/parser/ast/misc.go index 928c26489bee0..b5f48174b90df 100644 --- a/parser/ast/misc.go +++ b/parser/ast/misc.go @@ -98,6 +98,7 @@ type AuthOption struct { // ByAuthString set as true, if AuthString is used for authorization. Otherwise, authorization is done by HashString. ByAuthString bool AuthString string + ByHashString bool HashString string AuthPlugin string } @@ -112,7 +113,7 @@ func (n *AuthOption) Restore(ctx *format.RestoreCtx) error { if n.ByAuthString { ctx.WriteKeyWord(" BY ") ctx.WriteString(n.AuthString) - } else if n.HashString != "" { + } else if n.ByHashString { ctx.WriteKeyWord(" AS ") ctx.WriteString(n.HashString) } @@ -265,6 +266,12 @@ type PlanReplayerStmt struct { Stmt StmtNode Analyze bool Load bool + + // Capture indicates 'plan replayer capture ' + Capture bool + SQLDigest string + PlanDigest string + // File is used to store 2 cases: // 1. plan replayer load 'file'; // 2. plan replayer dump explain 'file' @@ -284,6 +291,13 @@ func (n *PlanReplayerStmt) Restore(ctx *format.RestoreCtx) error { ctx.WriteString(n.File) return nil } + if n.Capture { + ctx.WriteKeyWord("PLAN REPLAYER CAPTURE ") + ctx.WriteString(n.SQLDigest) + ctx.WriteKeyWord(" ") + ctx.WriteString(n.PlanDigest) + return nil + } ctx.WriteKeyWord("PLAN REPLAYER DUMP EXPLAIN ") if n.Analyze { ctx.WriteKeyWord("ANALYZE ") @@ -1493,6 +1507,11 @@ const ( PasswordExpireDefault PasswordExpireNever PasswordExpireInterval + PasswordHistory + PasswordHistoryDefault + PasswordReuseInterval + PasswordReuseDefault + Lock Unlock @@ -1521,6 +1540,17 @@ func (p *PasswordOrLockOption) Restore(ctx *format.RestoreCtx) error { ctx.WriteKeyWord("ACCOUNT LOCK") case Unlock: ctx.WriteKeyWord("ACCOUNT UNLOCK") + case PasswordHistory: + ctx.WriteKeyWord("PASSWORD HISTORY") + ctx.WritePlainf(" %d", p.Count) + case PasswordHistoryDefault: + ctx.WriteKeyWord("PASSWORD HISTORY DEFAULT") + case PasswordReuseInterval: + ctx.WriteKeyWord("PASSWORD REUSE INTERVAL") + ctx.WritePlainf(" %d", p.Count) + ctx.WriteKeyWord(" DAY") + case PasswordReuseDefault: + ctx.WriteKeyWord("PASSWORD REUSE INTERVAL DEFAULT") default: return errors.Errorf("Unsupported PasswordOrLockOption.Type %d", p.Type) } @@ -1813,6 +1843,7 @@ type CreateBindingStmt struct { GlobalScope bool OriginNode StmtNode HintedNode StmtNode + PlanDigest string } func (n *CreateBindingStmt) Restore(ctx *format.RestoreCtx) error { @@ -1822,13 +1853,18 @@ func (n *CreateBindingStmt) Restore(ctx *format.RestoreCtx) error { } else { ctx.WriteKeyWord("SESSION ") } - ctx.WriteKeyWord("BINDING FOR ") - if err := n.OriginNode.Restore(ctx); err != nil { - return errors.Trace(err) - } - ctx.WriteKeyWord(" USING ") - if err := n.HintedNode.Restore(ctx); err != nil { - return errors.Trace(err) + if n.OriginNode == nil { + ctx.WriteKeyWord("BINDING FROM HISTORY USING PLAN DIGEST ") + ctx.WriteString(n.PlanDigest) + } else { + ctx.WriteKeyWord("BINDING FOR ") + if err := n.OriginNode.Restore(ctx); err != nil { + return errors.Trace(err) + } + ctx.WriteKeyWord(" USING ") + if err := n.HintedNode.Restore(ctx); err != nil { + return errors.Trace(err) + } } return nil } @@ -1839,16 +1875,18 @@ func (n *CreateBindingStmt) Accept(v Visitor) (Node, bool) { return v.Leave(newNode) } n = newNode.(*CreateBindingStmt) - origNode, ok := n.OriginNode.Accept(v) - if !ok { - return n, false - } - n.OriginNode = origNode.(StmtNode) - hintedNode, ok := n.HintedNode.Accept(v) - if !ok { - return n, false + if n.OriginNode != nil { + origNode, ok := n.OriginNode.Accept(v) + if !ok { + return n, false + } + n.OriginNode = origNode.(StmtNode) + hintedNode, ok := n.HintedNode.Accept(v) + if !ok { + return n, false + } + n.HintedNode = hintedNode.(StmtNode) } - n.HintedNode = hintedNode.(StmtNode) return v.Leave(n) } @@ -1859,6 +1897,7 @@ type DropBindingStmt struct { GlobalScope bool OriginNode StmtNode HintedNode StmtNode + SQLDigest string } func (n *DropBindingStmt) Restore(ctx *format.RestoreCtx) error { @@ -1869,14 +1908,19 @@ func (n *DropBindingStmt) Restore(ctx *format.RestoreCtx) error { ctx.WriteKeyWord("SESSION ") } ctx.WriteKeyWord("BINDING FOR ") - if err := n.OriginNode.Restore(ctx); err != nil { - return errors.Trace(err) - } - if n.HintedNode != nil { - ctx.WriteKeyWord(" USING ") - if err := n.HintedNode.Restore(ctx); err != nil { + if n.OriginNode == nil { + ctx.WriteKeyWord("SQL DIGEST ") + ctx.WriteString(n.SQLDigest) + } else { + if err := n.OriginNode.Restore(ctx); err != nil { return errors.Trace(err) } + if n.HintedNode != nil { + ctx.WriteKeyWord(" USING ") + if err := n.HintedNode.Restore(ctx); err != nil { + return errors.Trace(err) + } + } } return nil } @@ -1887,17 +1931,20 @@ func (n *DropBindingStmt) Accept(v Visitor) (Node, bool) { return v.Leave(newNode) } n = newNode.(*DropBindingStmt) - origNode, ok := n.OriginNode.Accept(v) - if !ok { - return n, false - } - n.OriginNode = origNode.(StmtNode) - if n.HintedNode != nil { - hintedNode, ok := n.HintedNode.Accept(v) + if n.OriginNode != nil { + // OriginNode is nil means we build drop binding by sql digest + origNode, ok := n.OriginNode.Accept(v) if !ok { return n, false } - n.HintedNode = hintedNode.(StmtNode) + n.OriginNode = origNode.(StmtNode) + if n.HintedNode != nil { + hintedNode, ok := n.HintedNode.Accept(v) + if !ok { + return n, false + } + n.HintedNode = hintedNode.(StmtNode) + } } return v.Leave(n) } diff --git a/parser/misc.go b/parser/misc.go index 372154e054867..d7ce05fed524c 100644 --- a/parser/misc.go +++ b/parser/misc.go @@ -289,6 +289,7 @@ var tokenMap = map[string]int{ "DEPTH": depth, "DESC": desc, "DESCRIBE": describe, + "DIGEST": digest, "DIRECTORY": directory, "DISABLE": disable, "DISABLED": disabled, @@ -408,6 +409,10 @@ var tokenMap = map[string]int{ "INVISIBLE": invisible, "INVOKER": invoker, "IO": io, + "RRU_PER_SEC": rruRate, + "WRU_PER_SEC": wruRate, + "IO_READ_BANDWIDTH": ioReadBandwidth, + "IO_WRITE_BANDWIDTH": ioWriteBandwidth, "IPC": ipc, "IS": is, "ISOLATION": isolation, @@ -593,6 +598,7 @@ var tokenMap = map[string]int{ "REQUIRE": require, "REQUIRED": required, "RESET": reset, + "RESOURCE": resource, "RESPECT": respect, "RESTART": restart, "RESTORE": restore, @@ -726,6 +732,7 @@ var tokenMap = map[string]int{ "THEN": then, "TIDB": tidb, "TIDB_CURRENT_TSO": tidbCurrentTSO, + "TIDB_JSON": tidbJson, "TIFLASH": tiFlash, "TIKV_IMPORTER": tikvImporter, "TIME": timeType, @@ -759,6 +766,8 @@ var tokenMap = map[string]int{ "TRUE": trueKwd, "TRUNCATE": truncate, "TRUE_CARD_COST": trueCardCost, + "TTL": ttl, + "TTL_ENABLE": ttlEnable, "TYPE": tp, "UNBOUNDED": unbounded, "UNCOMMITTED": uncommitted, @@ -810,6 +819,7 @@ var tokenMap = map[string]int{ "YEAR": yearType, "ZEROFILL": zerofill, "WAIT": wait, + "REUSE": reuse, } // See https://dev.mysql.com/doc/refman/5.7/en/function-resolution.html for details. diff --git a/parser/model/ddl.go b/parser/model/ddl.go index 88e8d8f43bffa..c9b36a9e9ef3a 100644 --- a/parser/model/ddl.go +++ b/parser/model/ddl.go @@ -99,6 +99,9 @@ const ( ActionFlashbackCluster ActionType = 62 ActionRecoverSchema ActionType = 63 ActionReorganizePartition ActionType = 64 + + ActionAlterTTLInfo ActionType = 65 + ActionAlterTTLRemove ActionType = 67 ) var actionMap = map[ActionType]string{ @@ -162,7 +165,8 @@ var actionMap = map[ActionType]string{ ActionFlashbackCluster: "flashback cluster", ActionRecoverSchema: "flashback schema", ActionReorganizePartition: "alter table reorganize partition", - + ActionAlterTTLInfo: "alter table ttl", + ActionAlterTTLRemove: "alter table no_ttl", // `ActionAlterTableAlterPartition` is removed and will never be used. // Just left a tombstone here for compatibility. __DEPRECATED_ActionAlterTableAlterPartition: "alter partition", diff --git a/parser/model/model.go b/parser/model/model.go index add3d59d81ba3..ba7c46bcd6333 100644 --- a/parser/model/model.go +++ b/parser/model/model.go @@ -164,6 +164,9 @@ type ColumnInfo struct { // Clone clones ColumnInfo. func (c *ColumnInfo) Clone() *ColumnInfo { + if c == nil { + return nil + } nc := *c return &nc } @@ -443,14 +446,16 @@ const ( // However, the convert is missed in some scenarios before v2.1.9, so for all those tables prior to TableInfoVersion3, their // charsets / collations will be converted to lower-case while loading from the storage. TableInfoVersion3 = uint16(3) - // TableInfoVersion4 indicates that the auto_increment allocator in TiDB has been separated from - // _tidb_rowid allocator. This version is introduced to preserve the compatibility of old tables: - // the tables with version < TableInfoVersion4 still use a single allocator for auto_increment and _tidb_rowid. - // Also see https://github.com/pingcap/tidb/issues/982. + // TableInfoVersion4 is not used. TableInfoVersion4 = uint16(4) + // TableInfoVersion5 indicates that the auto_increment allocator in TiDB has been separated from + // _tidb_rowid allocator when AUTO_ID_CACHE is 1. This version is introduced to preserve the compatibility of old tables: + // the tables with version <= TableInfoVersion4 still use a single allocator for auto_increment and _tidb_rowid. + // Also see https://github.com/pingcap/tidb/issues/982. + TableInfoVersion5 = uint16(5) // CurrLatestTableInfoVersion means the latest table info in the current TiDB. - CurrLatestTableInfoVersion = TableInfoVersion4 + CurrLatestTableInfoVersion = TableInfoVersion5 ) // ExtraHandleName is the name of ExtraHandle Column. @@ -545,6 +550,13 @@ type TableInfo struct { StatsOptions *StatsOptions `json:"stats_options"` ExchangePartitionInfo *ExchangePartitionInfo `json:"exchange_partition_info"` + + TTLInfo *TTLInfo `json:"ttl_info"` +} + +// SepAutoInc decides whether _rowid and auto_increment id use separate allocator. +func (t *TableInfo) SepAutoInc() bool { + return t.Version >= TableInfoVersion5 && t.AutoIdCache == 1 } // TableCacheStatusType is the type of the table cache status @@ -745,6 +757,10 @@ func (t *TableInfo) Clone() *TableInfo { nt.ForeignKeys[i] = t.ForeignKeys[i].Clone() } + if t.TTLInfo != nil { + nt.TTLInfo = t.TTLInfo.Clone() + } + return &nt } @@ -1407,6 +1423,9 @@ type IndexInfo struct { // Clone clones IndexInfo. func (index *IndexInfo) Clone() *IndexInfo { + if index == nil { + return nil + } ni := *index ni.Columns = make([]*IndexColumn, len(index.Columns)) for i := range index.Columns { @@ -1733,6 +1752,21 @@ func (p *PolicyInfo) Clone() *PolicyInfo { return &cloned } +// TTLInfo records the TTL config +type TTLInfo struct { + ColumnName CIStr `json:"column"` + IntervalExprStr string `json:"interval_expr"` + // `IntervalTimeUnit` is actually ast.TimeUnitType. Use `int` to avoid cycle dependency + IntervalTimeUnit int `json:"interval_time_unit"` + Enable bool `json:"enable"` +} + +// Clone clones TTLInfo +func (t *TTLInfo) Clone() *TTLInfo { + cloned := *t + return &cloned +} + func writeSettingItemToBuilder(sb *strings.Builder, item string) { if sb.Len() != 0 { sb.WriteString(" ") diff --git a/parser/model/model_test.go b/parser/model/model_test.go index 47a8ecad6e4a4..6062df58aabec 100644 --- a/parser/model/model_test.go +++ b/parser/model/model_test.go @@ -785,3 +785,23 @@ func TestIsIndexPrefixCovered(t *testing.T) { require.Equal(t, true, IsIndexPrefixCovered(tbl, i1, NewCIStr("c_4"), NewCIStr("c_2"))) require.Equal(t, false, IsIndexPrefixCovered(tbl, i0, NewCIStr("c_2"))) } + +func TestTTLInfoClone(t *testing.T) { + ttlInfo := &TTLInfo{ + ColumnName: NewCIStr("test"), + IntervalExprStr: "test_expr", + IntervalTimeUnit: 5, + Enable: true, + } + + clonedTTLInfo := ttlInfo.Clone() + clonedTTLInfo.ColumnName = NewCIStr("test_2") + clonedTTLInfo.IntervalExprStr = "test_expr_2" + clonedTTLInfo.IntervalTimeUnit = 9 + clonedTTLInfo.Enable = false + + require.Equal(t, "test", ttlInfo.ColumnName.O) + require.Equal(t, "test_expr", ttlInfo.IntervalExprStr) + require.Equal(t, 5, ttlInfo.IntervalTimeUnit) + require.Equal(t, true, ttlInfo.Enable) +} diff --git a/parser/mysql/const.go b/parser/mysql/const.go index 2d8da77f90e64..f836cc05e4286 100644 --- a/parser/mysql/const.go +++ b/parser/mysql/const.go @@ -209,6 +209,8 @@ const ( RoleEdgeTable = "role_edges" // DefaultRoleTable is the table contain default active role info DefaultRoleTable = "default_roles" + // PasswordHistoryTable is the table in system db contains password history. + PasswordHistoryTable = "password_history" ) // MySQL type maximum length. diff --git a/parser/mysql/errcode.go b/parser/mysql/errcode.go index f82bbb1e0978f..0ea2134f88d75 100644 --- a/parser/mysql/errcode.go +++ b/parser/mysql/errcode.go @@ -884,6 +884,7 @@ const ( ErrErrorLast = 1863 ErrMaxExecTimeExceeded = 1907 ErrInvalidFieldSize = 3013 + ErrPasswordExpireAnonymousUser = 3016 ErrIncorrectType = 3064 ErrInvalidJSONData = 3069 ErrGeneratedColumnFunctionIsNotAllowed = 3102 diff --git a/parser/mysql/errname.go b/parser/mysql/errname.go index eef4defcb2465..3066d9f6fb6b0 100644 --- a/parser/mysql/errname.go +++ b/parser/mysql/errname.go @@ -899,6 +899,7 @@ var MySQLErrName = map[uint16]*ErrMessage{ ErrDependentByGeneratedColumn: Message("Column '%s' has a generated column dependency.", nil), ErrGeneratedColumnRefAutoInc: Message("Generated column '%s' cannot refer to auto-increment column.", nil), ErrInvalidFieldSize: Message("Invalid size for column '%s'.", nil), + ErrPasswordExpireAnonymousUser: Message("The password for anonymous user cannot be expired.", nil), ErrIncorrectType: Message("Incorrect type for argument %s in function %s.", nil), ErrInvalidJSONData: Message("Invalid JSON data provided to function %s: %s", nil), ErrInvalidJSONText: Message("Invalid JSON text: %-.192s", nil), diff --git a/parser/mysql/type.go b/parser/mysql/type.go index c54d0f8984b63..f79be8ab30d96 100644 --- a/parser/mysql/type.go +++ b/parser/mysql/type.go @@ -43,7 +43,7 @@ const ( TypeLongBlob byte = 0xfb TypeBlob byte = 0xfc TypeVarString byte = 0xfd - TypeString byte = 0xfe + TypeString byte = 0xfe /* TypeString is char type */ TypeGeometry byte = 0xff ) diff --git a/parser/mysql/util.go b/parser/mysql/util.go index 367839b2ce3af..c69e290369598 100644 --- a/parser/mysql/util.go +++ b/parser/mysql/util.go @@ -93,3 +93,10 @@ func GetDefaultFieldLengthAndDecimalForCast(tp byte) (flen int, decimal int) { } return -1, -1 } + +// IsAuthPluginClearText is used to indicated that the plugin need clear-text password. +func IsAuthPluginClearText(authPlugin string) bool { + return authPlugin == AuthNativePassword || + authPlugin == AuthTiDBSM3Password || + authPlugin == AuthCachingSha2Password +} diff --git a/parser/parser.go b/parser/parser.go index 4dc144d7a6b9d..f86f1793dfbc8 100644 --- a/parser/parser.go +++ b/parser/parser.go @@ -54,13 +54,13 @@ type yyXError struct { } const ( - yyDefault = 58117 + yyDefault = 58127 yyEOFCode = 57344 account = 57575 action = 57576 add = 57360 - addDate = 57917 - admin = 58002 + addDate = 57922 + admin = 58012 advise = 57577 after = 57578 against = 57579 @@ -72,15 +72,15 @@ const ( analyze = 57363 and = 57364 andand = 57355 - andnot = 58078 + andnot = 58088 any = 57583 - approxCountDistinct = 57918 - approxPercentile = 57919 + approxCountDistinct = 57923 + approxPercentile = 57924 as = 57365 asc = 57366 ascii = 57584 asof = 57347 - assignmentEq = 58079 + assignmentEq = 58089 attribute = 57585 attributes = 57586 autoIdCache = 57591 @@ -92,7 +92,7 @@ const ( backend = 57597 backup = 57598 backups = 57599 - batch = 58003 + batch = 58013 begin = 57600 bernoulli = 57601 between = 57367 @@ -102,59 +102,59 @@ const ( bindingCache = 57603 bindings = 57604 binlog = 57605 - bitAnd = 57920 - bitLit = 58077 - bitOr = 57921 + bitAnd = 57925 + bitLit = 58087 + bitOr = 57926 bitType = 57606 - bitXor = 57922 + bitXor = 57927 blobType = 57370 block = 57607 boolType = 57609 booleanType = 57608 both = 57371 - bound = 57923 - briefType = 57924 + bound = 57928 + briefType = 57929 btree = 57610 - buckets = 58004 - builtinApproxCountDistinct = 58051 - builtinApproxPercentile = 58052 - builtinBitAnd = 58046 - builtinBitOr = 58047 - builtinBitXor = 58048 - builtinCast = 58049 - builtinCount = 58050 - builtinCurDate = 58053 - builtinCurTime = 58054 - builtinDateAdd = 58055 - builtinDateSub = 58056 - builtinExtract = 58057 - builtinGroupConcat = 58058 - builtinMax = 58059 - builtinMin = 58060 - builtinNow = 58061 - builtinPosition = 58062 - builtinStddevPop = 58066 - builtinStddevSamp = 58067 - builtinSubstring = 58063 - builtinSum = 58064 - builtinSysDate = 58065 - builtinTranslate = 58068 - builtinTrim = 58069 - builtinUser = 58070 - builtinVarPop = 58071 - builtinVarSamp = 58072 - builtins = 58005 + buckets = 58014 + builtinApproxCountDistinct = 58061 + builtinApproxPercentile = 58062 + builtinBitAnd = 58056 + builtinBitOr = 58057 + builtinBitXor = 58058 + builtinCast = 58059 + builtinCount = 58060 + builtinCurDate = 58063 + builtinCurTime = 58064 + builtinDateAdd = 58065 + builtinDateSub = 58066 + builtinExtract = 58067 + builtinGroupConcat = 58068 + builtinMax = 58069 + builtinMin = 58070 + builtinNow = 58071 + builtinPosition = 58072 + builtinStddevPop = 58076 + builtinStddevSamp = 58077 + builtinSubstring = 58073 + builtinSum = 58074 + builtinSysDate = 58075 + builtinTranslate = 58078 + builtinTrim = 58079 + builtinUser = 58080 + builtinVarPop = 58081 + builtinVarSamp = 58082 + builtins = 58015 by = 57372 byteType = 57611 cache = 57612 call = 57373 - cancel = 58006 + cancel = 58016 capture = 57613 - cardinality = 58007 + cardinality = 58017 cascade = 57374 cascaded = 57614 caseKwd = 57375 - cast = 57925 + cast = 57930 causal = 57615 chain = 57616 change = 57376 @@ -170,13 +170,13 @@ const ( clientErrorsSummary = 57623 cluster = 57649 clustered = 57650 - cmSketch = 58008 + cmSketch = 58018 coalesce = 57624 collate = 57380 collation = 57625 column = 57381 columnFormat = 57626 - columnStatsUsage = 58009 + columnStatsUsage = 58019 columns = 57627 comment = 57629 commit = 57630 @@ -190,14 +190,14 @@ const ( consistency = 57637 consistent = 57638 constraint = 57382 - constraints = 57927 + constraints = 57932 context = 57639 convert = 57383 - copyKwd = 57926 - correlation = 58010 + copyKwd = 57931 + correlation = 58020 cpu = 57640 create = 57384 - createTableSelect = 58101 + createTableSelect = 58111 cross = 57385 csvBackslashEscape = 57641 csvDelimiter = 57642 @@ -207,7 +207,7 @@ const ( csvSeparator = 57646 csvTrimLastSeparators = 57647 cumeDist = 57386 - curTime = 57928 + curTime = 57933 current = 57648 currentDate = 57387 currentRole = 57391 @@ -218,8 +218,8 @@ const ( data = 57652 database = 57392 databases = 57393 - dateAdd = 57929 - dateSub = 57930 + dateAdd = 57934 + dateSub = 57935 dateType = 57654 datetimeType = 57653 day = 57655 @@ -227,9 +227,9 @@ const ( dayMicrosecond = 57395 dayMinute = 57396 daySecond = 57397 - ddl = 58011 + ddl = 58021 deallocate = 57656 - decLit = 58074 + decLit = 58084 decimalType = 57398 defaultKwd = 57399 definer = 57657 @@ -237,2004 +237,2027 @@ const ( delayed = 57400 deleteKwd = 57401 denseRank = 57402 - dependency = 58012 - depth = 58013 + dependency = 58022 + depth = 58023 desc = 57403 describe = 57404 - directory = 57659 - disable = 57660 - disabled = 57661 - discard = 57662 - disk = 57663 + digest = 57659 + directory = 57660 + disable = 57661 + disabled = 57662 + discard = 57663 + disk = 57664 distinct = 57405 distinctRow = 57406 div = 57407 - do = 57664 - dotType = 57931 + do = 57665 + dotType = 57936 doubleAtIdentifier = 57352 doubleType = 57408 - drainer = 58014 + drainer = 58024 drop = 57409 - dry = 58015 + dry = 58025 dual = 57410 - dump = 57932 - duplicate = 57665 - dynamic = 57666 + dump = 57937 + duplicate = 57666 + dynamic = 57667 elseKwd = 57411 - empty = 58092 - enable = 57667 - enabled = 57668 + empty = 58102 + enable = 57668 + enabled = 57669 enclosed = 57412 - encryption = 57669 - end = 57670 - enforced = 57671 - engine = 57672 - engines = 57673 - enum = 57674 - eq = 58080 + encryption = 57670 + end = 57671 + enforced = 57672 + engine = 57673 + engines = 57674 + enum = 57675 + eq = 58090 yyErrCode = 57345 - errorKwd = 57675 - escape = 57676 + errorKwd = 57676 + escape = 57677 escaped = 57413 - event = 57677 - events = 57678 - evolve = 57679 - exact = 57933 + event = 57678 + events = 57679 + evolve = 57680 + exact = 57938 except = 57416 - exchange = 57680 - exclusive = 57681 - execute = 57682 + exchange = 57681 + exclusive = 57682 + execute = 57683 exists = 57414 - expansion = 57683 - expire = 57684 + expansion = 57684 + expire = 57685 explain = 57415 - exprPushdownBlacklist = 57934 - extended = 57685 - extract = 57935 + exprPushdownBlacklist = 57939 + extended = 57686 + extract = 57940 falseKwd = 57417 - faultsSym = 57686 + faultsSym = 57687 fetch = 57418 - fields = 57687 - file = 57688 - first = 57689 + fields = 57688 + file = 57689 + first = 57690 firstValue = 57419 - fixed = 57690 - flashback = 57936 - floatLit = 58073 + fixed = 57691 + flashback = 57941 + floatLit = 58083 floatType = 57420 - flush = 57691 - follower = 57937 - followerConstraints = 57938 - followers = 57939 - following = 57692 + flush = 57692 + follower = 57942 + followerConstraints = 57943 + followers = 57944 + following = 57693 forKwd = 57421 force = 57422 foreign = 57423 - format = 57693 + format = 57694 from = 57424 - full = 57694 + full = 57695 fulltext = 57425 - function = 57695 - ge = 58081 - general = 57696 + function = 57696 + ge = 58091 + general = 57697 generated = 57426 - getFormat = 57940 - global = 57697 + getFormat = 57945 + global = 57698 grant = 57427 - grants = 57698 + grants = 57699 group = 57428 - groupConcat = 57941 + groupConcat = 57946 groups = 57429 - hash = 57699 + hash = 57700 having = 57430 - help = 57700 - hexLit = 58076 + help = 57701 + hexLit = 58086 highPriority = 57431 - higherThanComma = 58116 - higherThanParenthese = 58110 + higherThanComma = 58126 + higherThanParenthese = 58120 hintComment = 57354 - histogram = 57701 - histogramsInFlight = 58035 - history = 57702 - hosts = 57703 - hour = 57704 + histogram = 57702 + histogramsInFlight = 58045 + history = 57703 + hosts = 57704 + hour = 57705 hourMicrosecond = 57432 hourMinute = 57433 hourSecond = 57434 - identSQLErrors = 57706 - identified = 57705 + identSQLErrors = 57707 + identified = 57706 identifier = 57346 ifKwd = 57435 ignore = 57436 - importKwd = 57707 - imports = 57708 + importKwd = 57708 + imports = 57709 in = 57437 - increment = 57709 - incremental = 57710 + increment = 57710 + incremental = 57711 index = 57438 - indexes = 57711 + indexes = 57712 infile = 57439 inner = 57440 - inplace = 57943 + inplace = 57948 insert = 57447 - insertMethod = 57712 - insertValues = 58099 - instance = 57713 - instant = 57944 + insertMethod = 57713 + insertValues = 58109 + instance = 57714 + instant = 57949 int1Type = 57449 int2Type = 57450 int3Type = 57451 int4Type = 57452 int8Type = 57453 - intLit = 58075 + intLit = 58085 intType = 57448 integerType = 57441 - internal = 57945 + internal = 57950 intersect = 57442 interval = 57443 into = 57444 invalid = 57353 - invisible = 57714 - invoker = 57715 - io = 57716 - ipc = 57717 + invisible = 57715 + invoker = 57716 + io = 57717 + ioReadBandwidth = 58010 + ioWriteBandwidth = 58011 + ipc = 57718 is = 57446 - isolation = 57718 - issuer = 57719 - job = 58017 - jobs = 58016 + isolation = 57719 + issuer = 57720 + job = 58027 + jobs = 58026 join = 57454 - jsonArrayagg = 57946 - jsonObjectAgg = 57947 - jsonType = 57720 - jss = 58083 - juss = 58084 + jsonArrayagg = 57951 + jsonObjectAgg = 57952 + jsonType = 57721 + jss = 58093 + juss = 58094 key = 57455 - keyBlockSize = 57721 + keyBlockSize = 57722 keys = 57456 kill = 57457 - labels = 57722 + labels = 57723 lag = 57458 - language = 57723 - last = 57724 - lastBackup = 57725 + language = 57724 + last = 57725 + lastBackup = 57726 lastValue = 57459 - lastval = 57726 - le = 58082 + lastval = 57727 + le = 58092 lead = 57460 - leader = 57948 - leaderConstraints = 57949 + leader = 57953 + leaderConstraints = 57954 leading = 57461 - learner = 57950 - learnerConstraints = 57951 - learners = 57952 + learner = 57955 + learnerConstraints = 57956 + learners = 57957 left = 57462 - less = 57727 - level = 57728 + less = 57728 + level = 57729 like = 57463 limit = 57464 linear = 57466 lines = 57465 - list = 57729 + list = 57730 load = 57467 - local = 57730 + local = 57731 localTime = 57468 localTs = 57469 - location = 57732 + location = 57733 lock = 57470 - locked = 57731 - logs = 57733 + locked = 57732 + logs = 57734 long = 57560 longblobType = 57471 longtextType = 57472 lowPriority = 57473 - lowerThanCharsetKwd = 58102 - lowerThanComma = 58115 - lowerThanCreateTableSelect = 58100 - lowerThanEq = 58112 - lowerThanFunction = 58107 - lowerThanInsertValues = 58098 - lowerThanKey = 58103 - lowerThanLocal = 58104 - lowerThanNot = 58114 - lowerThanOn = 58111 - lowerThanParenthese = 58109 - lowerThanRemove = 58105 - lowerThanSelectOpt = 58093 - lowerThanSelectStmt = 58097 - lowerThanSetKeyword = 58096 - lowerThanStringLitToken = 58095 - lowerThanValueKeyword = 58094 - lowerThenOrder = 58106 - lsh = 58085 - master = 57734 + lowerThanCharsetKwd = 58112 + lowerThanComma = 58125 + lowerThanCreateTableSelect = 58110 + lowerThanEq = 58122 + lowerThanFunction = 58117 + lowerThanInsertValues = 58108 + lowerThanKey = 58113 + lowerThanLocal = 58114 + lowerThanNot = 58124 + lowerThanOn = 58121 + lowerThanParenthese = 58119 + lowerThanRemove = 58115 + lowerThanSelectOpt = 58103 + lowerThanSelectStmt = 58107 + lowerThanSetKeyword = 58106 + lowerThanStringLitToken = 58105 + lowerThanValueKeyword = 58104 + lowerThenOrder = 58116 + lsh = 58095 + master = 57735 match = 57474 - max = 57954 - maxConnectionsPerHour = 57737 - maxQueriesPerHour = 57738 - maxRows = 57739 - maxUpdatesPerHour = 57740 - maxUserConnections = 57741 + max = 57959 + maxConnectionsPerHour = 57738 + maxQueriesPerHour = 57739 + maxRows = 57740 + maxUpdatesPerHour = 57741 + maxUserConnections = 57742 maxValue = 57475 - max_idxnum = 57735 - max_minutes = 57736 - mb = 57742 + max_idxnum = 57736 + max_minutes = 57737 + mb = 57743 mediumIntType = 57477 mediumblobType = 57476 mediumtextType = 57478 - memory = 57743 - merge = 57744 - microsecond = 57745 - min = 57953 - minRows = 57746 - minValue = 57748 - minute = 57747 + memory = 57744 + merge = 57745 + microsecond = 57746 + min = 57958 + minRows = 57747 + minValue = 57749 + minute = 57748 minuteMicrosecond = 57479 minuteSecond = 57480 mod = 57481 - mode = 57749 - modify = 57750 - month = 57751 - names = 57752 - national = 57753 + mode = 57750 + modify = 57751 + month = 57752 + names = 57753 + national = 57754 natural = 57574 - ncharType = 57754 - neg = 58113 - neq = 58086 - neqSynonym = 58087 - never = 57755 - next = 57756 - next_row_id = 57942 - nextval = 57757 - no = 57758 + ncharType = 57755 + neg = 58123 + neq = 58096 + neqSynonym = 58097 + never = 57756 + next = 57757 + next_row_id = 57947 + nextval = 57758 + no = 57759 noWriteToBinLog = 57483 - nocache = 57759 - nocycle = 57760 - nodeID = 58018 - nodeState = 58019 - nodegroup = 57761 - nomaxvalue = 57762 - nominvalue = 57763 - nonclustered = 57764 - none = 57765 + nocache = 57760 + nocycle = 57761 + nodeID = 58028 + nodeState = 58029 + nodegroup = 57762 + nomaxvalue = 57763 + nominvalue = 57764 + nonclustered = 57765 + none = 57766 not = 57482 - not2 = 58091 - now = 57955 - nowait = 57766 + not2 = 58101 + now = 57960 + nowait = 57767 nthValue = 57484 ntile = 57485 null = 57486 - nulleq = 58088 - nulls = 57768 + nulleq = 58098 + nulls = 57769 numericType = 57487 - nvarcharType = 57767 + nvarcharType = 57768 odbcDateType = 57357 odbcTimeType = 57358 odbcTimestampType = 57359 of = 57488 - off = 57769 - offset = 57770 + off = 57770 + offset = 57771 on = 57489 - onDuplicate = 57771 - online = 57772 - only = 57773 - open = 57774 - optRuleBlacklist = 57956 - optimistic = 58020 + onDuplicate = 57772 + online = 57773 + only = 57774 + open = 57775 + optRuleBlacklist = 57961 + optimistic = 58030 optimize = 57490 option = 57491 - optional = 57775 + optional = 57776 optionally = 57492 or = 57493 order = 57494 outer = 57495 outfile = 57445 over = 57496 - packKeys = 57776 - pageSym = 57777 - paramMarker = 58089 - parser = 57778 - partial = 57779 + packKeys = 57777 + pageSym = 57778 + paramMarker = 58099 + parser = 57779 + partial = 57780 partition = 57497 - partitioning = 57780 - partitions = 57781 - password = 57782 - per_db = 57784 - per_table = 57785 - percent = 57783 + partitioning = 57781 + partitions = 57782 + password = 57783 + per_db = 57785 + per_table = 57786 + percent = 57784 percentRank = 57498 - pessimistic = 58021 + pessimistic = 58031 pipes = 57356 - pipesAsOr = 57786 - placement = 57957 - plan = 57958 - planCache = 57959 - plugins = 57787 - policy = 57788 - position = 57960 - preSplitRegions = 57789 - preceding = 57790 + pipesAsOr = 57787 + placement = 57962 + plan = 57963 + planCache = 57964 + plugins = 57788 + policy = 57789 + position = 57965 + preSplitRegions = 57790 + preceding = 57791 precisionType = 57499 - predicate = 57961 - prepare = 57791 - preserve = 57792 + predicate = 57966 + prepare = 57792 + preserve = 57793 primary = 57500 - primaryRegion = 57962 - privileges = 57793 + primaryRegion = 57967 + privileges = 57794 procedure = 57501 - process = 57794 - processlist = 57795 - profile = 57796 - profiles = 57797 - proxy = 57798 - pump = 58022 - purge = 57799 - quarter = 57800 - queries = 57801 - query = 57802 - quick = 57803 + process = 57795 + processlist = 57796 + profile = 57797 + profiles = 57798 + proxy = 57799 + pump = 58032 + purge = 57800 + quarter = 57801 + queries = 57802 + query = 57803 + quick = 57804 rangeKwd = 57502 rank = 57503 - rateLimit = 57804 + rateLimit = 57805 read = 57504 realType = 57505 - rebuild = 57805 - recent = 57963 - recover = 57806 + rebuild = 57806 + recent = 57968 + recover = 57807 recursive = 57506 - redundant = 57807 + redundant = 57808 references = 57507 regexpKwd = 57508 - region = 58045 - regions = 58044 + region = 58055 + regions = 58054 release = 57509 - reload = 57808 - remove = 57809 + reload = 57809 + remove = 57810 rename = 57510 - reorganize = 57810 - repair = 57811 + reorganize = 57811 + repair = 57812 repeat = 57511 - repeatable = 57812 + repeatable = 57813 replace = 57512 - replayer = 57964 - replica = 57813 - replicas = 57814 - replication = 57815 + replayer = 57969 + replica = 57814 + replicas = 57815 + replication = 57816 require = 57513 - required = 57816 - reset = 58043 - respect = 57817 - restart = 57818 - restore = 57819 - restores = 57820 + required = 57817 + reset = 58053 + resource = 57818 + respect = 57819 + restart = 57820 + restore = 57821 + restores = 57822 restrict = 57514 - resume = 57821 - reverse = 57822 + resume = 57823 + reuse = 57824 + reverse = 57825 revoke = 57515 right = 57516 rlike = 57517 - role = 57823 - rollback = 57824 - routine = 57825 + role = 57826 + rollback = 57827 + routine = 57828 row = 57518 - rowCount = 57826 - rowFormat = 57827 + rowCount = 57829 + rowFormat = 57830 rowNumber = 57520 rows = 57519 - rsh = 58090 - rtree = 57828 - run = 58023 - running = 57965 - s3 = 57966 - sampleRate = 58025 - samples = 58024 - san = 57829 - savepoint = 57830 - schedule = 57967 - second = 57831 + rruRate = 58008 + rsh = 58100 + rtree = 57831 + run = 58033 + running = 57970 + s3 = 57971 + sampleRate = 58035 + samples = 58034 + san = 57832 + savepoint = 57833 + schedule = 57972 + second = 57834 secondMicrosecond = 57521 - secondaryEngine = 57832 - secondaryLoad = 57833 - secondaryUnload = 57834 - security = 57835 + secondaryEngine = 57835 + secondaryLoad = 57836 + secondaryUnload = 57837 + security = 57838 selectKwd = 57522 - sendCredentialsToTiKV = 57836 - separator = 57837 - sequence = 57838 - serial = 57839 - serializable = 57840 - session = 57841 - sessionStates = 58026 + sendCredentialsToTiKV = 57839 + separator = 57840 + sequence = 57841 + serial = 57842 + serializable = 57843 + session = 57844 + sessionStates = 58036 set = 57523 - setval = 57842 - shardRowIDBits = 57843 - share = 57844 - shared = 57845 + setval = 57845 + shardRowIDBits = 57846 + share = 57847 + shared = 57848 show = 57524 - shutdown = 57846 - signed = 57847 - simple = 57848 + shutdown = 57849 + signed = 57850 + simple = 57851 singleAtIdentifier = 57351 - skip = 57849 - skipSchemaFiles = 57850 - slave = 57851 - slow = 57852 + skip = 57852 + skipSchemaFiles = 57853 + slave = 57854 + slow = 57855 smallIntType = 57525 - snapshot = 57853 - some = 57854 - source = 57855 + snapshot = 57856 + some = 57857 + source = 57858 spatial = 57526 - split = 58041 + split = 58051 sql = 57527 sqlBigResult = 57528 - sqlBufferResult = 57856 - sqlCache = 57857 + sqlBufferResult = 57859 + sqlCache = 57860 sqlCalcFoundRows = 57529 - sqlNoCache = 57858 + sqlNoCache = 57861 sqlSmallResult = 57530 - sqlTsiDay = 57859 - sqlTsiHour = 57860 - sqlTsiMinute = 57861 - sqlTsiMonth = 57862 - sqlTsiQuarter = 57863 - sqlTsiSecond = 57864 - sqlTsiWeek = 57865 - sqlTsiYear = 57866 + sqlTsiDay = 57862 + sqlTsiHour = 57863 + sqlTsiMinute = 57864 + sqlTsiMonth = 57865 + sqlTsiQuarter = 57866 + sqlTsiSecond = 57867 + sqlTsiWeek = 57868 + sqlTsiYear = 57869 ssl = 57531 - staleness = 57968 - start = 57867 + staleness = 57973 + start = 57870 starting = 57532 - statistics = 58027 - stats = 58028 - statsAutoRecalc = 57868 - statsBuckets = 58031 + statistics = 58037 + stats = 58038 + statsAutoRecalc = 57871 + statsBuckets = 58041 statsColChoice = 57589 statsColList = 57590 statsExtended = 57533 - statsHealthy = 58032 - statsHistograms = 58030 - statsLocked = 58034 - statsMeta = 58029 + statsHealthy = 58042 + statsHistograms = 58040 + statsLocked = 58044 + statsMeta = 58039 statsOptions = 57587 - statsPersistent = 57869 - statsSamplePages = 57870 + statsPersistent = 57872 + statsSamplePages = 57873 statsSampleRate = 57588 - statsTopN = 58033 - status = 57871 - std = 57969 - stddev = 57970 - stddevPop = 57971 - stddevSamp = 57972 - stop = 57973 - storage = 57872 + statsTopN = 58043 + status = 57874 + std = 57974 + stddev = 57975 + stddevPop = 57976 + stddevSamp = 57977 + stop = 57978 + storage = 57875 stored = 57538 straightJoin = 57534 - strict = 57974 - strictFormat = 57873 + strict = 57979 + strictFormat = 57876 stringLit = 57350 - strong = 57975 - subDate = 57976 - subject = 57874 - subpartition = 57875 - subpartitions = 57876 - substring = 57978 - sum = 57977 - super = 57877 - swaps = 57878 - switchesSym = 57879 - system = 57880 - systemTime = 57881 - tableChecksum = 57882 + strong = 57980 + subDate = 57981 + subject = 57877 + subpartition = 57878 + subpartitions = 57879 + substring = 57983 + sum = 57982 + super = 57880 + swaps = 57881 + switchesSym = 57882 + system = 57883 + systemTime = 57884 + tableChecksum = 57885 tableKwd = 57536 - tableRefPriority = 58108 + tableRefPriority = 58118 tableSample = 57537 - tables = 57883 - tablespace = 57884 - target = 57979 - telemetry = 58036 - telemetryID = 58037 - temporary = 57885 - temptable = 57886 + tables = 57886 + tablespace = 57887 + target = 57984 + telemetry = 58046 + telemetryID = 58047 + temporary = 57888 + temptable = 57889 terminated = 57539 - textType = 57887 - than = 57888 + textType = 57890 + than = 57891 then = 57540 - tiFlash = 58039 - tidb = 58038 + tiFlash = 58049 + tidb = 58048 tidbCurrentTSO = 57535 - tikvImporter = 57889 - timeType = 57891 - timestampAdd = 57980 - timestampDiff = 57981 - timestampType = 57890 + tidbJson = 57985 + tikvImporter = 57892 + timeType = 57894 + timestampAdd = 57986 + timestampDiff = 57987 + timestampType = 57893 tinyIntType = 57542 tinyblobType = 57541 tinytextType = 57543 - tls = 57982 + tls = 57988 to = 57544 toTimestamp = 57348 - tokenIssuer = 57892 - tokudbDefault = 57983 - tokudbFast = 57984 - tokudbLzma = 57985 - tokudbQuickLZ = 57986 - tokudbSmall = 57988 - tokudbSnappy = 57987 - tokudbUncompressed = 57989 - tokudbZlib = 57990 - tokudbZstd = 57991 - top = 57992 - topn = 58040 - tp = 57893 - trace = 57894 - traditional = 57895 + tokenIssuer = 57895 + tokudbDefault = 57989 + tokudbFast = 57990 + tokudbLzma = 57991 + tokudbQuickLZ = 57992 + tokudbSmall = 57994 + tokudbSnappy = 57993 + tokudbUncompressed = 57995 + tokudbZlib = 57996 + tokudbZstd = 57997 + top = 57998 + topn = 58050 + tp = 57896 + trace = 57897 + traditional = 57898 trailing = 57545 - transaction = 57896 + transaction = 57899 trigger = 57546 - triggers = 57897 - trim = 57993 - trueCardCost = 57998 + triggers = 57900 + trim = 57999 + trueCardCost = 58004 trueKwd = 57547 - truncate = 57898 - unbounded = 57899 - uncommitted = 57900 - undefined = 57901 + truncate = 57901 + ttl = 57902 + ttlEnable = 57903 + unbounded = 57904 + uncommitted = 57905 + undefined = 57906 underscoreCS = 57349 - unicodeSym = 57902 + unicodeSym = 57907 union = 57549 unique = 57548 - unknown = 57903 + unknown = 57908 unlock = 57550 unsigned = 57551 update = 57552 usage = 57553 use = 57554 - user = 57904 + user = 57909 using = 57555 utcDate = 57556 utcTime = 57558 utcTimestamp = 57557 - validation = 57905 - value = 57906 + validation = 57910 + value = 57911 values = 57559 - varPop = 57995 - varSamp = 57996 + varPop = 58001 + varSamp = 58002 varbinaryType = 57563 varcharType = 57561 varcharacter = 57562 - variables = 57907 - variance = 57994 + variables = 57912 + variance = 58000 varying = 57564 - verboseType = 57997 - view = 57908 + verboseType = 58003 + view = 57913 virtual = 57565 - visible = 57909 - voter = 57999 - voterConstraints = 58000 - voters = 58001 - wait = 57916 - warnings = 57910 - week = 57911 - weightString = 57912 + visible = 57914 + voter = 58005 + voterConstraints = 58006 + voters = 58007 + wait = 57921 + warnings = 57915 + week = 57916 + weightString = 57917 when = 57566 where = 57567 - width = 58042 + width = 58052 window = 57569 with = 57570 - without = 57913 + without = 57918 write = 57568 - x509 = 57914 + wruRate = 58009 + x509 = 57919 xor = 57571 yearMonth = 57572 - yearType = 57915 + yearType = 57920 zerofill = 57573 yyMaxDepth = 200 - yyTabOfs = -2557 + yyTabOfs = -2591 ) var ( yyXLAT = map[int]int{ - 57344: 0, // $end (2266x) - 59: 1, // ';' (2265x) - 58041: 2, // split (1878x) - 57744: 3, // merge (1877x) - 57809: 4, // remove (1876x) - 57810: 5, // reorganize (1876x) - 57629: 6, // comment (1866x) - 57872: 7, // storage (1784x) - 57592: 8, // autoIncrement (1773x) - 44: 9, // ',' (1688x) - 57689: 10, // first (1675x) - 57578: 11, // after (1669x) - 57839: 12, // serial (1665x) - 57593: 13, // autoRandom (1664x) - 57626: 14, // columnFormat (1664x) - 57782: 15, // password (1633x) - 57617: 16, // charsetKwd (1630x) - 57619: 17, // checksum (1618x) - 57957: 18, // placement (1616x) - 57721: 19, // keyBlockSize (1600x) - 57884: 20, // tablespace (1597x) - 57669: 21, // encryption (1595x) - 57672: 22, // engine (1592x) - 57652: 23, // data (1590x) - 57712: 24, // insertMethod (1588x) - 57739: 25, // maxRows (1588x) - 57746: 26, // minRows (1588x) - 57761: 27, // nodegroup (1588x) - 57636: 28, // connection (1580x) - 57594: 29, // autoRandomBase (1577x) - 58031: 30, // statsBuckets (1575x) - 58033: 31, // statsTopN (1575x) - 57591: 32, // autoIdCache (1574x) - 57596: 33, // avgRowLength (1574x) - 57634: 34, // compression (1574x) - 57658: 35, // delayKeyWrite (1574x) - 57776: 36, // packKeys (1574x) - 57789: 37, // preSplitRegions (1574x) - 57827: 38, // rowFormat (1574x) - 57832: 39, // secondaryEngine (1574x) - 57843: 40, // shardRowIDBits (1574x) - 57868: 41, // statsAutoRecalc (1574x) - 57589: 42, // statsColChoice (1574x) - 57590: 43, // statsColList (1574x) - 57869: 44, // statsPersistent (1574x) - 57870: 45, // statsSamplePages (1574x) - 57588: 46, // statsSampleRate (1574x) - 57882: 47, // tableChecksum (1574x) - 57585: 48, // attribute (1523x) - 57575: 49, // account (1521x) - 41: 50, // ')' (1514x) - 57821: 51, // resume (1510x) - 57847: 52, // signed (1510x) - 57853: 53, // snapshot (1509x) - 57597: 54, // backend (1508x) - 57618: 55, // checkpoint (1508x) - 57635: 56, // concurrency (1508x) - 57641: 57, // csvBackslashEscape (1508x) - 57642: 58, // csvDelimiter (1508x) - 57643: 59, // csvHeader (1508x) - 57644: 60, // csvNotNull (1508x) - 57645: 61, // csvNull (1508x) - 57646: 62, // csvSeparator (1508x) - 57647: 63, // csvTrimLastSeparators (1508x) - 57725: 64, // lastBackup (1508x) - 57771: 65, // onDuplicate (1508x) - 57772: 66, // online (1508x) - 57804: 67, // rateLimit (1508x) - 57836: 68, // sendCredentialsToTiKV (1508x) - 57850: 69, // skipSchemaFiles (1508x) - 57873: 70, // strictFormat (1508x) - 57889: 71, // tikvImporter (1508x) - 57898: 72, // truncate (1505x) - 57758: 73, // no (1504x) - 57867: 74, // start (1502x) - 57612: 75, // cache (1499x) - 57759: 76, // nocache (1498x) - 57651: 77, // cycle (1497x) - 57748: 78, // minValue (1497x) - 57709: 79, // increment (1496x) - 57760: 80, // nocycle (1496x) - 57762: 81, // nomaxvalue (1496x) - 57763: 82, // nominvalue (1496x) - 57818: 83, // restart (1494x) - 57581: 84, // algorithm (1493x) - 57893: 85, // tp (1493x) - 57650: 86, // clustered (1492x) - 57714: 87, // invisible (1492x) - 57764: 88, // nonclustered (1492x) - 58044: 89, // regions (1492x) - 57909: 90, // visible (1492x) - 57875: 91, // subpartition (1489x) - 57781: 92, // partitions (1488x) - 57927: 93, // constraints (1485x) - 57938: 94, // followerConstraints (1485x) - 57939: 95, // followers (1485x) - 57949: 96, // leaderConstraints (1485x) - 57951: 97, // learnerConstraints (1485x) - 57952: 98, // learners (1485x) - 57962: 99, // primaryRegion (1485x) - 57967: 100, // schedule (1485x) - 58000: 101, // voterConstraints (1485x) - 58001: 102, // voters (1485x) - 57627: 103, // columns (1484x) - 57908: 104, // view (1484x) - 57915: 105, // yearType (1481x) - 57655: 106, // day (1480x) - 57584: 107, // ascii (1479x) - 57611: 108, // byteType (1479x) - 57831: 109, // second (1479x) - 57866: 110, // sqlTsiYear (1479x) - 57902: 111, // unicodeSym (1479x) - 57687: 112, // fields (1478x) - 57704: 113, // hour (1478x) - 57745: 114, // microsecond (1478x) - 57747: 115, // minute (1478x) - 57751: 116, // month (1478x) - 57800: 117, // quarter (1478x) - 57859: 118, // sqlTsiDay (1478x) - 57860: 119, // sqlTsiHour (1478x) - 57861: 120, // sqlTsiMinute (1478x) - 57862: 121, // sqlTsiMonth (1478x) - 57863: 122, // sqlTsiQuarter (1478x) - 57864: 123, // sqlTsiSecond (1478x) - 57865: 124, // sqlTsiWeek (1478x) - 57911: 125, // week (1478x) - 57883: 126, // tables (1477x) - 57871: 127, // status (1476x) - 57837: 128, // separator (1475x) - 57620: 129, // cipher (1474x) - 57346: 130, // identifier (1474x) - 57719: 131, // issuer (1474x) - 57737: 132, // maxConnectionsPerHour (1474x) - 57738: 133, // maxQueriesPerHour (1474x) - 57740: 134, // maxUpdatesPerHour (1474x) - 57741: 135, // maxUserConnections (1474x) - 57790: 136, // preceding (1474x) - 57829: 137, // san (1474x) - 57874: 138, // subject (1474x) - 57892: 139, // tokenIssuer (1474x) - 57707: 140, // importKwd (1473x) - 57730: 141, // local (1473x) - 57802: 142, // query (1472x) - 57849: 143, // skip (1472x) - 57604: 144, // bindings (1471x) - 57657: 145, // definer (1471x) - 57699: 146, // hash (1471x) - 57705: 147, // identified (1471x) - 57733: 148, // logs (1471x) - 57817: 149, // respect (1471x) - 57630: 150, // commit (1470x) - 57648: 151, // current (1470x) - 57671: 152, // enforced (1470x) - 57692: 153, // following (1470x) - 57727: 154, // less (1470x) - 57766: 155, // nowait (1470x) - 57773: 156, // only (1470x) - 57824: 157, // rollback (1470x) - 57830: 158, // savepoint (1470x) - 57888: 159, // than (1470x) - 57906: 160, // value (1470x) - 57600: 161, // begin (1469x) - 57602: 162, // binding (1469x) - 57670: 163, // end (1469x) - 57697: 164, // global (1469x) - 57942: 165, // next_row_id (1469x) - 57770: 166, // offset (1469x) - 57788: 167, // policy (1469x) - 57961: 168, // predicate (1469x) - 57885: 169, // temporary (1469x) - 58039: 170, // tiFlash (1469x) - 57899: 171, // unbounded (1469x) - 57904: 172, // user (1469x) - 57720: 173, // jsonType (1468x) - 57959: 174, // planCache (1468x) - 57791: 175, // prepare (1468x) - 57823: 176, // role (1468x) - 57903: 177, // unknown (1468x) - 57916: 178, // wait (1468x) - 57610: 179, // btree (1467x) - 57653: 180, // datetimeType (1467x) - 57654: 181, // dateType (1467x) - 57690: 182, // fixed (1467x) - 57706: 183, // identSQLErrors (1467x) - 57718: 184, // isolation (1467x) - 57724: 185, // last (1467x) - 57732: 186, // location (1467x) - 57735: 187, // max_idxnum (1467x) - 57743: 188, // memory (1467x) - 57769: 189, // off (1467x) - 57775: 190, // optional (1467x) - 57784: 191, // per_db (1467x) - 57793: 192, // privileges (1467x) - 57813: 193, // replica (1467x) - 57816: 194, // required (1467x) - 57828: 195, // rtree (1467x) - 57965: 196, // running (1467x) - 58025: 197, // sampleRate (1467x) - 57838: 198, // sequence (1467x) - 57841: 199, // session (1467x) - 57852: 200, // slow (1467x) - 58028: 201, // stats (1467x) - 57891: 202, // timeType (1467x) - 57905: 203, // validation (1467x) - 57907: 204, // variables (1467x) - 57586: 205, // attributes (1466x) - 57632: 206, // compact (1466x) - 57660: 207, // disable (1466x) - 57665: 208, // duplicate (1466x) - 57666: 209, // dynamic (1466x) - 57667: 210, // enable (1466x) - 57675: 211, // errorKwd (1466x) - 57691: 212, // flush (1466x) - 57694: 213, // full (1466x) - 57742: 214, // mb (1466x) - 57749: 215, // mode (1466x) - 57755: 216, // never (1466x) - 57958: 217, // plan (1466x) - 57787: 218, // plugins (1466x) - 57795: 219, // processlist (1466x) - 57806: 220, // recover (1466x) - 57811: 221, // repair (1466x) - 57812: 222, // repeatable (1466x) - 58027: 223, // statistics (1466x) - 57876: 224, // subpartitions (1466x) - 58038: 225, // tidb (1466x) - 57890: 226, // timestampType (1466x) - 57913: 227, // without (1466x) - 58002: 228, // admin (1465x) - 57598: 229, // backup (1465x) - 58003: 230, // batch (1465x) - 57605: 231, // binlog (1465x) - 57607: 232, // block (1465x) - 57608: 233, // booleanType (1465x) - 57924: 234, // briefType (1465x) - 58004: 235, // buckets (1465x) - 58007: 236, // cardinality (1465x) - 57616: 237, // chain (1465x) - 57623: 238, // clientErrorsSummary (1465x) - 58008: 239, // cmSketch (1465x) - 57624: 240, // coalesce (1465x) - 57633: 241, // compressed (1465x) - 57639: 242, // context (1465x) - 57926: 243, // copyKwd (1465x) - 58010: 244, // correlation (1465x) - 57640: 245, // cpu (1465x) - 57656: 246, // deallocate (1465x) - 58012: 247, // dependency (1465x) - 57659: 248, // directory (1465x) - 57662: 249, // discard (1465x) - 57663: 250, // disk (1465x) - 57664: 251, // do (1465x) - 57931: 252, // dotType (1465x) - 58014: 253, // drainer (1465x) - 58015: 254, // dry (1465x) - 57680: 255, // exchange (1465x) - 57682: 256, // execute (1465x) - 57683: 257, // expansion (1465x) - 57936: 258, // flashback (1465x) - 57693: 259, // format (1465x) - 57696: 260, // general (1465x) - 57700: 261, // help (1465x) - 57701: 262, // histogram (1465x) - 57703: 263, // hosts (1465x) - 57943: 264, // inplace (1465x) - 57713: 265, // instance (1465x) - 57944: 266, // instant (1465x) - 57717: 267, // ipc (1465x) - 58017: 268, // job (1465x) - 58016: 269, // jobs (1465x) - 57722: 270, // labels (1465x) - 57731: 271, // locked (1465x) - 57750: 272, // modify (1465x) - 57756: 273, // next (1465x) - 58018: 274, // nodeID (1465x) - 58019: 275, // nodeState (1465x) - 57768: 276, // nulls (1465x) - 57777: 277, // pageSym (1465x) - 58022: 278, // pump (1465x) - 57799: 279, // purge (1465x) - 57805: 280, // rebuild (1465x) - 57807: 281, // redundant (1465x) - 57808: 282, // reload (1465x) - 57819: 283, // restore (1465x) - 57825: 284, // routine (1465x) - 57966: 285, // s3 (1465x) - 58024: 286, // samples (1465x) - 57833: 287, // secondaryLoad (1465x) - 57834: 288, // secondaryUnload (1465x) - 57844: 289, // share (1465x) - 57846: 290, // shutdown (1465x) - 57855: 291, // source (1465x) - 57587: 292, // statsOptions (1465x) - 57973: 293, // stop (1465x) - 57878: 294, // swaps (1465x) - 57983: 295, // tokudbDefault (1465x) - 57984: 296, // tokudbFast (1465x) - 57985: 297, // tokudbLzma (1465x) - 57986: 298, // tokudbQuickLZ (1465x) - 57988: 299, // tokudbSmall (1465x) - 57987: 300, // tokudbSnappy (1465x) - 57989: 301, // tokudbUncompressed (1465x) - 57990: 302, // tokudbZlib (1465x) - 57991: 303, // tokudbZstd (1465x) - 58040: 304, // topn (1465x) - 57894: 305, // trace (1465x) - 57895: 306, // traditional (1465x) - 57998: 307, // trueCardCost (1465x) - 57997: 308, // verboseType (1465x) - 57910: 309, // warnings (1465x) - 57576: 310, // action (1464x) - 57577: 311, // advise (1464x) - 57579: 312, // against (1464x) - 57580: 313, // ago (1464x) - 57582: 314, // always (1464x) - 57599: 315, // backups (1464x) - 57601: 316, // bernoulli (1464x) - 57603: 317, // bindingCache (1464x) - 57606: 318, // bitType (1464x) - 57609: 319, // boolType (1464x) - 58005: 320, // builtins (1464x) - 58006: 321, // cancel (1464x) - 57613: 322, // capture (1464x) - 57614: 323, // cascaded (1464x) - 57615: 324, // causal (1464x) - 57621: 325, // cleanup (1464x) - 57622: 326, // client (1464x) - 57649: 327, // cluster (1464x) - 57625: 328, // collation (1464x) - 58009: 329, // columnStatsUsage (1464x) - 57631: 330, // committed (1464x) - 57628: 331, // config (1464x) - 57637: 332, // consistency (1464x) - 57638: 333, // consistent (1464x) - 58011: 334, // ddl (1464x) - 58013: 335, // depth (1464x) - 57661: 336, // disabled (1464x) - 57932: 337, // dump (1464x) - 57668: 338, // enabled (1464x) - 57673: 339, // engines (1464x) - 57674: 340, // enum (1464x) - 57678: 341, // events (1464x) - 57679: 342, // evolve (1464x) - 57684: 343, // expire (1464x) - 57934: 344, // exprPushdownBlacklist (1464x) - 57685: 345, // extended (1464x) - 57686: 346, // faultsSym (1464x) - 57695: 347, // function (1464x) - 57698: 348, // grants (1464x) - 58035: 349, // histogramsInFlight (1464x) - 57702: 350, // history (1464x) - 57708: 351, // imports (1464x) - 57710: 352, // incremental (1464x) - 57711: 353, // indexes (1464x) - 57945: 354, // internal (1464x) - 57715: 355, // invoker (1464x) - 57716: 356, // io (1464x) - 57723: 357, // language (1464x) - 57728: 358, // level (1464x) - 57729: 359, // list (1464x) - 57734: 360, // master (1464x) - 57736: 361, // max_minutes (1464x) - 57753: 362, // national (1464x) - 57754: 363, // ncharType (1464x) - 57757: 364, // nextval (1464x) - 57765: 365, // none (1464x) - 57767: 366, // nvarcharType (1464x) - 57774: 367, // open (1464x) - 58020: 368, // optimistic (1464x) - 57956: 369, // optRuleBlacklist (1464x) - 57778: 370, // parser (1464x) - 57779: 371, // partial (1464x) - 57780: 372, // partitioning (1464x) - 57785: 373, // per_table (1464x) - 57783: 374, // percent (1464x) - 58021: 375, // pessimistic (1464x) - 57792: 376, // preserve (1464x) - 57796: 377, // profile (1464x) - 57797: 378, // profiles (1464x) - 57801: 379, // queries (1464x) - 57963: 380, // recent (1464x) - 58045: 381, // region (1464x) - 57964: 382, // replayer (1464x) - 58043: 383, // reset (1464x) - 57820: 384, // restores (1464x) - 58023: 385, // run (1464x) - 57835: 386, // security (1464x) - 57840: 387, // serializable (1464x) - 58026: 388, // sessionStates (1464x) - 57848: 389, // simple (1464x) - 57851: 390, // slave (1464x) - 58032: 391, // statsHealthy (1464x) - 58030: 392, // statsHistograms (1464x) - 58034: 393, // statsLocked (1464x) - 58029: 394, // statsMeta (1464x) - 57974: 395, // strict (1464x) - 57879: 396, // switchesSym (1464x) - 57880: 397, // system (1464x) - 57881: 398, // systemTime (1464x) - 57979: 399, // target (1464x) - 58037: 400, // telemetryID (1464x) - 57886: 401, // temptable (1464x) - 57887: 402, // textType (1464x) - 57982: 403, // tls (1464x) - 57992: 404, // top (1464x) - 57896: 405, // transaction (1464x) - 57897: 406, // triggers (1464x) - 57900: 407, // uncommitted (1464x) - 57901: 408, // undefined (1464x) - 58042: 409, // width (1464x) - 57914: 410, // x509 (1464x) - 57917: 411, // addDate (1463x) - 57583: 412, // any (1463x) - 57918: 413, // approxCountDistinct (1463x) - 57919: 414, // approxPercentile (1463x) - 57595: 415, // avg (1463x) - 57920: 416, // bitAnd (1463x) - 57921: 417, // bitOr (1463x) - 57922: 418, // bitXor (1463x) - 57923: 419, // bound (1463x) - 57925: 420, // cast (1463x) - 57928: 421, // curTime (1463x) - 57929: 422, // dateAdd (1463x) - 57930: 423, // dateSub (1463x) - 57676: 424, // escape (1463x) - 57677: 425, // event (1463x) - 57933: 426, // exact (1463x) - 57681: 427, // exclusive (1463x) - 57935: 428, // extract (1463x) - 57688: 429, // file (1463x) - 57937: 430, // follower (1463x) - 57940: 431, // getFormat (1463x) - 57941: 432, // groupConcat (1463x) - 57946: 433, // jsonArrayagg (1463x) - 57947: 434, // jsonObjectAgg (1463x) - 57726: 435, // lastval (1463x) - 57948: 436, // leader (1463x) - 57950: 437, // learner (1463x) - 57954: 438, // max (1463x) - 57953: 439, // min (1463x) - 57752: 440, // names (1463x) - 57955: 441, // now (1463x) - 57960: 442, // position (1463x) - 57794: 443, // process (1463x) - 57798: 444, // proxy (1463x) - 57803: 445, // quick (1463x) - 57814: 446, // replicas (1463x) - 57815: 447, // replication (1463x) - 57822: 448, // reverse (1463x) - 57826: 449, // rowCount (1463x) - 57842: 450, // setval (1463x) - 57845: 451, // shared (1463x) - 57854: 452, // some (1463x) - 57856: 453, // sqlBufferResult (1463x) - 57857: 454, // sqlCache (1463x) - 57858: 455, // sqlNoCache (1463x) - 57968: 456, // staleness (1463x) - 57969: 457, // std (1463x) - 57970: 458, // stddev (1463x) - 57971: 459, // stddevPop (1463x) - 57972: 460, // stddevSamp (1463x) - 57975: 461, // strong (1463x) - 57976: 462, // subDate (1463x) - 57978: 463, // substring (1463x) - 57977: 464, // sum (1463x) - 57877: 465, // super (1463x) - 58036: 466, // telemetry (1463x) - 57980: 467, // timestampAdd (1463x) - 57981: 468, // timestampDiff (1463x) - 57993: 469, // trim (1463x) - 57994: 470, // variance (1463x) - 57995: 471, // varPop (1463x) - 57996: 472, // varSamp (1463x) - 57999: 473, // voter (1463x) - 57912: 474, // weightString (1463x) - 57489: 475, // on (1398x) - 40: 476, // '(' (1331x) - 57570: 477, // with (1215x) - 57350: 478, // stringLit (1203x) - 58091: 479, // not2 (1195x) - 57482: 480, // not (1132x) - 57365: 481, // as (1109x) - 57399: 482, // defaultKwd (1103x) - 57549: 483, // union (1061x) - 57555: 484, // using (1054x) - 57462: 485, // left (1049x) - 57516: 486, // right (1049x) - 57380: 487, // collate (1046x) - 43: 488, // '+' (1026x) - 45: 489, // '-' (1025x) - 57481: 490, // mod (1005x) - 57497: 491, // partition (965x) - 57436: 492, // ignore (960x) - 57416: 493, // except (953x) - 57442: 494, // intersect (952x) - 57486: 495, // null (950x) - 57464: 496, // limit (933x) - 57421: 497, // forKwd (930x) - 57559: 498, // values (925x) - 57444: 499, // into (923x) - 57470: 500, // lock (919x) - 57567: 501, // where (914x) - 58080: 502, // eq (911x) - 57424: 503, // from (911x) - 57418: 504, // fetch (909x) - 57494: 505, // order (905x) - 57422: 506, // force (901x) - 57512: 507, // replace (898x) - 57378: 508, // charType (897x) - 57523: 509, // set (892x) - 57364: 510, // and (891x) - 58075: 511, // intLit (887x) - 57493: 512, // or (867x) - 57355: 513, // andand (866x) - 57786: 514, // pipesAsOr (866x) - 57571: 515, // xor (866x) - 57428: 516, // group (840x) - 57430: 517, // having (840x) - 57534: 518, // straightJoin (834x) - 57569: 519, // window (826x) - 57454: 520, // join (822x) - 57463: 521, // like (815x) - 57574: 522, // natural (812x) - 42: 523, // '*' (811x) - 57385: 524, // cross (811x) - 57440: 525, // inner (811x) - 125: 526, // '}' (808x) - 57519: 527, // rows (796x) - 57554: 528, // use (792x) - 57537: 529, // tableSample (786x) - 57502: 530, // rangeKwd (785x) - 57429: 531, // groups (784x) - 57403: 532, // desc (783x) - 57369: 533, // binaryType (782x) - 57366: 534, // asc (781x) - 57394: 535, // dayHour (781x) - 57395: 536, // dayMicrosecond (781x) - 57396: 537, // dayMinute (781x) - 57397: 538, // daySecond (781x) - 57432: 539, // hourMicrosecond (781x) - 57433: 540, // hourMinute (781x) - 57434: 541, // hourSecond (781x) - 57479: 542, // minuteMicrosecond (781x) - 57480: 543, // minuteSecond (781x) - 57521: 544, // secondMicrosecond (781x) - 57572: 545, // yearMonth (781x) - 57566: 546, // when (778x) - 57437: 547, // in (776x) - 57411: 548, // elseKwd (775x) - 57540: 549, // then (772x) - 47: 550, // '/' (769x) - 37: 551, // '%' (768x) - 38: 552, // '&' (768x) - 94: 553, // '^' (768x) - 124: 554, // '|' (768x) - 57407: 555, // div (768x) - 58085: 556, // lsh (768x) - 58090: 557, // rsh (768x) - 60: 558, // '<' (765x) - 62: 559, // '>' (765x) - 58081: 560, // ge (765x) - 57446: 561, // is (765x) - 58082: 562, // le (765x) - 58086: 563, // neq (765x) - 58087: 564, // neqSynonym (765x) - 58088: 565, // nulleq (765x) - 57367: 566, // between (763x) - 57435: 567, // ifKwd (758x) - 57508: 568, // regexpKwd (755x) - 57517: 569, // rlike (755x) - 57447: 570, // insert (749x) - 57351: 571, // singleAtIdentifier (739x) - 57536: 572, // tableKwd (739x) - 57390: 573, // currentUser (735x) - 57417: 574, // falseKwd (733x) - 57547: 575, // trueKwd (733x) - 58074: 576, // decLit (727x) - 58073: 577, // floatLit (727x) - 57518: 578, // row (727x) - 58076: 579, // hexLit (725x) - 58089: 580, // paramMarker (725x) - 57443: 581, // interval (724x) - 123: 582, // '{' (723x) - 58077: 583, // bitLit (723x) - 57455: 584, // key (723x) - 57392: 585, // database (719x) - 57414: 586, // exists (718x) - 57383: 587, // convert (715x) - 58061: 588, // builtinNow (714x) - 57389: 589, // currentTs (714x) - 57352: 590, // doubleAtIdentifier (714x) - 57468: 591, // localTime (714x) - 57469: 592, // localTs (714x) - 57379: 593, // check (713x) - 57500: 594, // primary (713x) - 57349: 595, // underscoreCS (713x) - 58050: 596, // builtinCount (712x) - 57356: 597, // pipes (712x) - 33: 598, // '!' (711x) - 126: 599, // '~' (711x) - 58051: 600, // builtinApproxCountDistinct (711x) - 58052: 601, // builtinApproxPercentile (711x) - 58046: 602, // builtinBitAnd (711x) - 58047: 603, // builtinBitOr (711x) - 58048: 604, // builtinBitXor (711x) - 58049: 605, // builtinCast (711x) - 58053: 606, // builtinCurDate (711x) - 58054: 607, // builtinCurTime (711x) - 58055: 608, // builtinDateAdd (711x) - 58056: 609, // builtinDateSub (711x) - 58057: 610, // builtinExtract (711x) - 58058: 611, // builtinGroupConcat (711x) - 58059: 612, // builtinMax (711x) - 58060: 613, // builtinMin (711x) - 58062: 614, // builtinPosition (711x) - 58066: 615, // builtinStddevPop (711x) - 58067: 616, // builtinStddevSamp (711x) - 58063: 617, // builtinSubstring (711x) - 58064: 618, // builtinSum (711x) - 58065: 619, // builtinSysDate (711x) - 58068: 620, // builtinTranslate (711x) - 58069: 621, // builtinTrim (711x) - 58070: 622, // builtinUser (711x) - 58071: 623, // builtinVarPop (711x) - 58072: 624, // builtinVarSamp (711x) - 57375: 625, // caseKwd (711x) - 57386: 626, // cumeDist (711x) - 57387: 627, // currentDate (711x) - 57391: 628, // currentRole (711x) - 57388: 629, // currentTime (711x) - 57402: 630, // denseRank (711x) - 57419: 631, // firstValue (711x) - 57458: 632, // lag (711x) - 57459: 633, // lastValue (711x) - 57460: 634, // lead (711x) - 57484: 635, // nthValue (711x) - 57485: 636, // ntile (711x) - 57498: 637, // percentRank (711x) - 57503: 638, // rank (711x) - 57511: 639, // repeat (711x) - 57520: 640, // rowNumber (711x) - 57535: 641, // tidbCurrentTSO (711x) - 57556: 642, // utcDate (711x) - 57558: 643, // utcTime (711x) - 57557: 644, // utcTimestamp (711x) - 57548: 645, // unique (706x) - 57382: 646, // constraint (704x) - 57507: 647, // references (701x) - 57426: 648, // generated (697x) - 57522: 649, // selectKwd (696x) - 57377: 650, // character (661x) - 57474: 651, // match (653x) - 57438: 652, // index (649x) - 57544: 653, // to (572x) - 57361: 654, // all (557x) - 46: 655, // '.' (552x) - 57363: 656, // analyze (536x) - 57552: 657, // update (532x) - 57475: 658, // maxValue (520x) - 58083: 659, // jss (518x) - 58084: 660, // juss (518x) - 57465: 661, // lines (507x) - 58079: 662, // assignmentEq (504x) - 57372: 663, // by (504x) - 58345: 664, // Identifier (502x) - 58424: 665, // NotKeywordToken (502x) - 58653: 666, // TiDBKeyword (502x) - 58663: 667, // UnReservedKeyword (502x) - 57362: 668, // alter (501x) - 57513: 669, // require (499x) - 64: 670, // '@' (494x) - 57527: 671, // sql (491x) - 57409: 672, // drop (488x) - 57374: 673, // cascade (487x) - 57504: 674, // read (487x) - 57514: 675, // restrict (487x) - 57347: 676, // asof (485x) - 57384: 677, // create (483x) - 57423: 678, // foreign (483x) - 57425: 679, // fulltext (483x) - 57348: 680, // toTimestamp (482x) - 57562: 681, // varcharacter (481x) - 57561: 682, // varcharType (481x) - 57376: 683, // change (480x) - 57398: 684, // decimalType (480x) - 57408: 685, // doubleType (480x) - 57420: 686, // floatType (480x) - 57441: 687, // integerType (480x) - 57448: 688, // intType (480x) - 57505: 689, // realType (480x) - 57510: 690, // rename (480x) - 57568: 691, // write (480x) - 57563: 692, // varbinaryType (479x) - 57360: 693, // add (478x) - 57368: 694, // bigIntType (478x) - 57370: 695, // blobType (478x) - 57449: 696, // int1Type (478x) - 57450: 697, // int2Type (478x) - 57451: 698, // int3Type (478x) - 57452: 699, // int4Type (478x) - 57453: 700, // int8Type (478x) - 57560: 701, // long (478x) - 57471: 702, // longblobType (478x) - 57472: 703, // longtextType (478x) - 57476: 704, // mediumblobType (478x) - 57477: 705, // mediumIntType (478x) - 57478: 706, // mediumtextType (478x) - 57487: 707, // numericType (478x) - 57490: 708, // optimize (478x) - 57525: 709, // smallIntType (478x) - 57541: 710, // tinyblobType (478x) - 57542: 711, // tinyIntType (478x) - 57543: 712, // tinytextType (478x) - 58618: 713, // SubSelect (223x) - 58673: 714, // UserVariable (181x) - 58593: 715, // SimpleIdent (180x) - 58398: 716, // Literal (178x) - 58608: 717, // StringLiteral (178x) - 58421: 718, // NextValueForSequence (177x) - 58322: 719, // FunctionCallGeneric (176x) - 58323: 720, // FunctionCallKeyword (176x) - 58324: 721, // FunctionCallNonKeyword (176x) - 58325: 722, // FunctionNameConflict (176x) - 58326: 723, // FunctionNameDateArith (176x) - 58327: 724, // FunctionNameDateArithMultiForms (176x) - 58328: 725, // FunctionNameDatetimePrecision (176x) - 58329: 726, // FunctionNameOptionalBraces (176x) - 58330: 727, // FunctionNameSequence (176x) - 58592: 728, // SimpleExpr (176x) - 58619: 729, // SumExpr (176x) - 58621: 730, // SystemVariable (176x) - 58684: 731, // Variable (176x) - 58707: 732, // WindowFuncCall (176x) - 58168: 733, // BitExpr (163x) - 58498: 734, // PredicateExpr (132x) - 58171: 735, // BoolPri (129x) - 58286: 736, // Expression (129x) - 58419: 737, // NUM (103x) - 58722: 738, // logAnd (97x) - 58723: 739, // logOr (97x) - 58631: 740, // TableName (77x) - 58276: 741, // EqOpt (75x) - 58609: 742, // StringName (56x) - 57401: 743, // deleteKwd (52x) - 57551: 744, // unsigned (47x) - 58389: 745, // LengthNum (46x) - 57496: 746, // over (45x) - 57573: 747, // zerofill (45x) - 58194: 748, // ColumnName (41x) - 57405: 749, // distinct (36x) - 57406: 750, // distinctRow (36x) - 58712: 751, // WindowingClause (35x) - 58546: 752, // SelectStmt (34x) - 58547: 753, // SelectStmtBasic (34x) - 58549: 754, // SelectStmtFromDualTable (34x) - 58550: 755, // SelectStmtFromTable (34x) - 58567: 756, // SetOprClause (34x) - 57400: 757, // delayed (33x) - 57431: 758, // highPriority (33x) - 57473: 759, // lowPriority (33x) - 58568: 760, // SetOprClauseList (33x) - 58571: 761, // SetOprStmtWithLimitOrderBy (33x) - 58572: 762, // SetOprStmtWoutLimitOrderBy (33x) - 58713: 763, // WithClause (31x) - 58559: 764, // SelectStmtWithClause (30x) - 58570: 765, // SetOprStmt (30x) - 57354: 766, // hintComment (27x) - 58377: 767, // Int64Num (26x) - 58297: 768, // FieldLen (25x) - 58463: 769, // OptWindowingClause (24x) - 58667: 770, // UpdateStmtNoWith (24x) - 58251: 771, // DeleteWithoutUsingStmt (23x) - 58469: 772, // OrderBy (23x) - 58553: 773, // SelectStmtLimit (23x) - 57528: 774, // sqlBigResult (23x) - 57529: 775, // sqlCalcFoundRows (23x) - 57530: 776, // sqlSmallResult (23x) - 58374: 777, // InsertIntoStmt (21x) - 58666: 778, // UpdateStmt (21x) - 58182: 779, // CharsetKw (20x) - 58520: 780, // ReplaceIntoStmt (20x) - 58675: 781, // Username (20x) - 58287: 782, // ExpressionList (18x) - 58250: 783, // DeleteWithUsingStmt (17x) - 58346: 784, // IfExists (17x) - 58493: 785, // PlacementPolicyOption (17x) - 58632: 786, // TableNameList (17x) - 57539: 787, // terminated (16x) - 58249: 788, // DeleteFromStmt (15x) - 58253: 789, // DistinctKwd (15x) - 58347: 790, // IfNotExists (15x) - 58481: 791, // PartitionNameList (15x) - 58254: 792, // DistinctOpt (14x) - 57412: 793, // enclosed (14x) - 58448: 794, // OptFieldLen (14x) - 58697: 795, // WhereClause (14x) - 58698: 796, // WhereClauseOptional (14x) - 58246: 797, // DefaultKwdOpt (13x) - 57413: 798, // escaped (13x) - 57492: 799, // optionally (13x) - 58655: 800, // TimestampUnit (13x) - 58285: 801, // ExprOrDefault (12x) - 58383: 802, // JoinTable (12x) - 58442: 803, // OptBinary (12x) - 57509: 804, // release (12x) - 58536: 805, // RolenameComposed (12x) - 58628: 806, // TableFactor (12x) - 58641: 807, // TableRef (12x) - 58141: 808, // AnalyzeOptionListOpt (11x) - 58317: 809, // FromOrIn (11x) - 58137: 810, // AlterTableStmt (10x) - 58183: 811, // CharsetName (10x) - 58195: 812, // ColumnNameList (10x) - 58236: 813, // DBName (10x) - 57467: 814, // load (10x) - 58425: 815, // NotSym (10x) - 57483: 816, // noWriteToBinLog (10x) - 58470: 817, // OrderByOptional (10x) - 58472: 818, // PartDefOption (10x) - 58591: 819, // SignedNum (10x) - 58654: 820, // TimeUnit (10x) - 58174: 821, // BuggyDefaultFalseDistinctOpt (9x) - 58245: 822, // DefaultFalseDistinctOpt (9x) - 58384: 823, // JoinType (9x) - 58432: 824, // NumLiteral (9x) - 58535: 825, // Rolename (9x) - 58530: 826, // RoleNameString (9x) - 58235: 827, // CrossOpt (8x) - 58277: 828, // EqOrAssignmentEq (8x) - 58284: 829, // ExplainableStmt (8x) - 58288: 830, // ExpressionListOpt (8x) - 58368: 831, // IndexPartSpecification (8x) - 58385: 832, // KeyOrIndex (8x) - 58422: 833, // NoWriteToBinLogAliasOpt (8x) - 58554: 834, // SelectStmtLimitOpt (8x) - 58687: 835, // VariableName (8x) - 58123: 836, // AllOrPartitionNameList (7x) - 58219: 837, // ConstraintKeywordOpt (7x) - 58241: 838, // DatabaseSym (7x) - 58303: 839, // FieldsOrColumns (7x) - 58315: 840, // ForceOpt (7x) - 58369: 841, // IndexPartSpecificationList (7x) - 58502: 842, // Priority (7x) - 58540: 843, // RowFormat (7x) - 58543: 844, // RowValue (7x) - 58565: 845, // SetExpr (7x) - 58577: 846, // ShowDatabaseNameOpt (7x) - 58638: 847, // TableOption (7x) - 57564: 848, // varying (7x) - 58142: 849, // AnalyzeTableStmt (6x) - 58163: 850, // BeginTransactionStmt (6x) - 58165: 851, // BindableStmt (6x) - 57381: 852, // column (6x) - 58189: 853, // ColumnDef (6x) - 58209: 854, // CommitStmt (6x) - 58238: 855, // DatabaseOption (6x) - 58279: 856, // EscapedTableRef (6x) - 58301: 857, // FieldTerminator (6x) - 57427: 858, // grant (6x) - 58351: 859, // IgnoreOptional (6x) - 58360: 860, // IndexInvisible (6x) - 58365: 861, // IndexNameList (6x) - 58371: 862, // IndexType (6x) - 58402: 863, // LoadDataStmt (6x) - 58482: 864, // PartitionNameListOpt (6x) - 58515: 865, // ReleaseSavepointStmt (6x) - 58537: 866, // RolenameList (6x) - 58539: 867, // RollbackStmt (6x) - 58544: 868, // SavepointStmt (6x) - 58575: 869, // SetStmt (6x) - 57524: 870, // show (6x) - 58636: 871, // TableOptimizerHints (6x) - 58676: 872, // UsernameList (6x) - 58714: 873, // WithClustered (6x) - 58121: 874, // AlgorithmClause (5x) - 58176: 875, // ByItem (5x) - 58188: 876, // CollationName (5x) - 58192: 877, // ColumnKeywordOpt (5x) - 58252: 878, // DirectPlacementOption (5x) - 58299: 879, // FieldOpt (5x) - 58300: 880, // FieldOpts (5x) - 58343: 881, // IdentList (5x) - 58363: 882, // IndexName (5x) - 58366: 883, // IndexOption (5x) - 58367: 884, // IndexOptionList (5x) - 57439: 885, // infile (5x) - 58394: 886, // LimitOption (5x) - 58406: 887, // LockClause (5x) - 58444: 888, // OptCharsetWithOptBinary (5x) - 58455: 889, // OptNullTreatment (5x) - 58496: 890, // PolicyName (5x) - 58503: 891, // PriorityOpt (5x) - 58545: 892, // SelectLockOpt (5x) - 58552: 893, // SelectStmtIntoOption (5x) - 58642: 894, // TableRefs (5x) - 58669: 895, // UserSpec (5x) - 58147: 896, // Assignment (4x) - 58153: 897, // AuthString (4x) - 58155: 898, // BRIEBooleanOptionName (4x) - 58156: 899, // BRIEIntegerOptionName (4x) - 58157: 900, // BRIEKeywordOptionName (4x) - 58158: 901, // BRIEOption (4x) - 58159: 902, // BRIEOptions (4x) - 58161: 903, // BRIEStringOptionName (4x) - 58175: 904, // BuiltinFunction (4x) - 58177: 905, // ByList (4x) - 58181: 906, // Char (4x) - 58213: 907, // ConfigItemName (4x) - 58217: 908, // Constraint (4x) - 58311: 909, // FloatOpt (4x) - 58372: 910, // IndexTypeName (4x) - 57491: 911, // option (4x) - 58460: 912, // OptWild (4x) - 57495: 913, // outer (4x) - 58497: 914, // Precision (4x) - 58511: 915, // ReferDef (4x) - 58526: 916, // RestrictOrCascadeOpt (4x) - 58542: 917, // RowStmt (4x) - 58560: 918, // SequenceOption (4x) - 57533: 919, // statsExtended (4x) - 58623: 920, // TableAsName (4x) - 58624: 921, // TableAsNameOpt (4x) - 58635: 922, // TableNameOptWild (4x) - 58637: 923, // TableOptimizerHintsOpt (4x) - 58639: 924, // TableOptionList (4x) - 58657: 925, // TraceableStmt (4x) - 58658: 926, // TransactionChar (4x) - 58670: 927, // UserSpecList (4x) - 58708: 928, // WindowName (4x) - 58144: 929, // AsOfClause (3x) - 58148: 930, // AssignmentList (3x) - 58150: 931, // AttributesOpt (3x) - 58172: 932, // Boolean (3x) - 58201: 933, // ColumnOption (3x) - 58204: 934, // ColumnPosition (3x) - 58210: 935, // CommonTableExpr (3x) - 58231: 936, // CreateTableStmt (3x) - 58239: 937, // DatabaseOptionList (3x) - 58247: 938, // DefaultTrueDistinctOpt (3x) - 58273: 939, // EnforcedOrNot (3x) - 57415: 940, // explain (3x) - 58290: 941, // ExtendedPriv (3x) - 58331: 942, // GeneratedAlways (3x) - 58333: 943, // GlobalScope (3x) - 58337: 944, // GroupByClause (3x) - 58355: 945, // IndexHint (3x) - 58359: 946, // IndexHintType (3x) - 58364: 947, // IndexNameAndTypeOpt (3x) - 57456: 948, // keys (3x) - 58396: 949, // Lines (3x) - 58416: 950, // MaxValueOrExpression (3x) - 58426: 951, // NowSym (3x) - 58427: 952, // NowSymFunc (3x) - 58428: 953, // NowSymOptionFraction (3x) - 58456: 954, // OptOrder (3x) - 58459: 955, // OptTemporary (3x) - 58473: 956, // PartDefOptionList (3x) - 58475: 957, // PartitionDefinition (3x) - 58485: 958, // PasswordExpire (3x) - 58487: 959, // PasswordOrLockOption (3x) - 58495: 960, // PluginNameList (3x) - 58501: 961, // PrimaryOpt (3x) - 58504: 962, // PrivElem (3x) - 58506: 963, // PrivType (3x) - 57501: 964, // procedure (3x) - 58521: 965, // RequireClause (3x) - 58522: 966, // RequireClauseOpt (3x) - 58524: 967, // RequireListElement (3x) - 58538: 968, // RolenameWithoutIdent (3x) - 58531: 969, // RoleOrPrivElem (3x) - 58551: 970, // SelectStmtGroup (3x) - 58569: 971, // SetOprOpt (3x) - 58622: 972, // TableAliasRefList (3x) - 58625: 973, // TableElement (3x) - 58634: 974, // TableNameListOpt2 (3x) - 58650: 975, // TextString (3x) - 58659: 976, // TransactionChars (3x) - 57546: 977, // trigger (3x) - 57550: 978, // unlock (3x) - 57553: 979, // usage (3x) - 58680: 980, // ValuesList (3x) - 58682: 981, // ValuesStmtList (3x) - 58678: 982, // ValueSym (3x) - 58685: 983, // VariableAssignment (3x) - 58705: 984, // WindowFrameStart (3x) - 58119: 985, // AdminStmt (2x) - 58122: 986, // AllColumnsOrPredicateColumnsOpt (2x) - 58124: 987, // AlterDatabaseStmt (2x) - 58125: 988, // AlterImportStmt (2x) - 58126: 989, // AlterInstanceStmt (2x) - 58127: 990, // AlterOrderItem (2x) - 58129: 991, // AlterPolicyStmt (2x) - 58130: 992, // AlterSequenceOption (2x) - 58132: 993, // AlterSequenceStmt (2x) - 58134: 994, // AlterTableSpec (2x) - 58138: 995, // AlterUserStmt (2x) - 58139: 996, // AnalyzeOption (2x) - 58167: 997, // BinlogStmt (2x) - 58160: 998, // BRIEStmt (2x) - 58162: 999, // BRIETables (2x) - 57373: 1000, // call (2x) - 58178: 1001, // CallStmt (2x) - 58179: 1002, // CastType (2x) - 58180: 1003, // ChangeStmt (2x) - 58186: 1004, // CheckConstraintKeyword (2x) - 58196: 1005, // ColumnNameListOpt (2x) - 58199: 1006, // ColumnNameOrUserVariable (2x) - 58202: 1007, // ColumnOptionList (2x) - 58203: 1008, // ColumnOptionListOpt (2x) - 58205: 1009, // ColumnSetValue (2x) - 58208: 1010, // CommentOrAttributeOption (2x) - 58212: 1011, // CompletionTypeWithinTransaction (2x) - 58214: 1012, // ConnectionOption (2x) - 58216: 1013, // ConnectionOptions (2x) - 58220: 1014, // CreateBindingStmt (2x) - 58221: 1015, // CreateDatabaseStmt (2x) - 58222: 1016, // CreateImportStmt (2x) - 58223: 1017, // CreateIndexStmt (2x) - 58224: 1018, // CreatePolicyStmt (2x) - 58225: 1019, // CreateRoleStmt (2x) - 58227: 1020, // CreateSequenceStmt (2x) - 58228: 1021, // CreateStatisticsStmt (2x) - 58229: 1022, // CreateTableOptionListOpt (2x) - 58232: 1023, // CreateUserStmt (2x) - 58234: 1024, // CreateViewStmt (2x) - 57393: 1025, // databases (2x) - 58243: 1026, // DeallocateStmt (2x) - 58244: 1027, // DeallocateSym (2x) - 57404: 1028, // describe (2x) - 58255: 1029, // DoStmt (2x) - 58256: 1030, // DropBindingStmt (2x) - 58257: 1031, // DropDatabaseStmt (2x) - 58258: 1032, // DropImportStmt (2x) - 58259: 1033, // DropIndexStmt (2x) - 58260: 1034, // DropPolicyStmt (2x) - 58261: 1035, // DropRoleStmt (2x) - 58262: 1036, // DropSequenceStmt (2x) - 58263: 1037, // DropStatisticsStmt (2x) - 58264: 1038, // DropStatsStmt (2x) - 58265: 1039, // DropTableStmt (2x) - 58266: 1040, // DropUserStmt (2x) - 58267: 1041, // DropViewStmt (2x) - 58269: 1042, // DuplicateOpt (2x) - 58271: 1043, // EmptyStmt (2x) - 58272: 1044, // EncryptionOpt (2x) - 58274: 1045, // EnforcedOrNotOpt (2x) - 58278: 1046, // ErrorHandling (2x) - 58280: 1047, // ExecuteStmt (2x) - 58281: 1048, // ExplainFormatType (2x) - 58282: 1049, // ExplainStmt (2x) - 58283: 1050, // ExplainSym (2x) - 58292: 1051, // Field (2x) - 58295: 1052, // FieldItem (2x) - 58302: 1053, // Fields (2x) - 58307: 1054, // FlashbackDatabaseStmt (2x) - 58308: 1055, // FlashbackTableStmt (2x) - 58309: 1056, // FlashbackToNewName (2x) - 58310: 1057, // FlashbackToTimestampStmt (2x) - 58314: 1058, // FlushStmt (2x) - 58320: 1059, // FuncDatetimePrecList (2x) - 58321: 1060, // FuncDatetimePrecListOpt (2x) - 58334: 1061, // GrantProxyStmt (2x) - 58335: 1062, // GrantRoleStmt (2x) - 58336: 1063, // GrantStmt (2x) - 58338: 1064, // HandleRange (2x) - 58340: 1065, // HashString (2x) - 58341: 1066, // HavingClause (2x) - 58342: 1067, // HelpStmt (2x) - 58354: 1068, // IndexAdviseStmt (2x) - 58356: 1069, // IndexHintList (2x) - 58357: 1070, // IndexHintListOpt (2x) - 58362: 1071, // IndexLockAndAlgorithmOpt (2x) - 58375: 1072, // InsertValues (2x) - 58380: 1073, // IntoOpt (2x) - 58386: 1074, // KeyOrIndexOpt (2x) - 57457: 1075, // kill (2x) - 58387: 1076, // KillOrKillTiDB (2x) - 58388: 1077, // KillStmt (2x) - 58393: 1078, // LimitClause (2x) - 57466: 1079, // linear (2x) - 58395: 1080, // LinearOpt (2x) - 58399: 1081, // LoadDataSetItem (2x) - 58403: 1082, // LoadStatsStmt (2x) - 58404: 1083, // LocalOpt (2x) - 58405: 1084, // LocationLabelList (2x) - 58407: 1085, // LockStatsStmt (2x) - 58408: 1086, // LockTablesStmt (2x) - 58417: 1087, // MaxValueOrExpressionList (2x) - 58423: 1088, // NonTransactionalDMLStmt (2x) - 58429: 1089, // NowSymOptionFractionParentheses (2x) - 58431: 1090, // NumList (2x) - 58434: 1091, // ObjectType (2x) - 57488: 1092, // of (2x) - 58435: 1093, // OfTablesOpt (2x) - 58436: 1094, // OnCommitOpt (2x) - 58437: 1095, // OnDelete (2x) - 58440: 1096, // OnUpdate (2x) - 58445: 1097, // OptCollate (2x) - 58450: 1098, // OptFull (2x) - 58452: 1099, // OptInteger (2x) - 58465: 1100, // OptionalBraces (2x) - 58464: 1101, // OptionLevel (2x) - 58454: 1102, // OptLeadLagInfo (2x) - 58453: 1103, // OptLLDefault (2x) - 58471: 1104, // OuterOpt (2x) - 58476: 1105, // PartitionDefinitionList (2x) - 58477: 1106, // PartitionDefinitionListOpt (2x) - 58478: 1107, // PartitionIntervalOpt (2x) - 58484: 1108, // PartitionOpt (2x) - 58486: 1109, // PasswordOpt (2x) - 58488: 1110, // PasswordOrLockOptionList (2x) - 58489: 1111, // PasswordOrLockOptions (2x) - 58492: 1112, // PlacementOptionList (2x) - 58494: 1113, // PlanReplayerStmt (2x) - 58500: 1114, // PreparedStmt (2x) - 58505: 1115, // PrivLevel (2x) - 58508: 1116, // PurgeImportStmt (2x) - 58509: 1117, // QuickOptional (2x) - 58510: 1118, // RecoverTableStmt (2x) - 58512: 1119, // ReferOpt (2x) - 58514: 1120, // RegexpSym (2x) - 58516: 1121, // RenameTableStmt (2x) - 58517: 1122, // RenameUserStmt (2x) - 58519: 1123, // RepeatableOpt (2x) - 58525: 1124, // RestartStmt (2x) - 58527: 1125, // ResumeImportStmt (2x) - 57515: 1126, // revoke (2x) - 58528: 1127, // RevokeRoleStmt (2x) - 58529: 1128, // RevokeStmt (2x) - 58532: 1129, // RoleOrPrivElemList (2x) - 58533: 1130, // RoleSpec (2x) - 58555: 1131, // SelectStmtOpt (2x) - 58558: 1132, // SelectStmtSQLCache (2x) - 58562: 1133, // SetBindingStmt (2x) - 58563: 1134, // SetDefaultRoleOpt (2x) - 58564: 1135, // SetDefaultRoleStmt (2x) - 58574: 1136, // SetRoleStmt (2x) - 58578: 1137, // ShowImportStmt (2x) - 58583: 1138, // ShowProfileType (2x) - 58586: 1139, // ShowStmt (2x) - 58587: 1140, // ShowTableAliasOpt (2x) - 58589: 1141, // ShutdownStmt (2x) - 58590: 1142, // SignedLiteral (2x) - 58594: 1143, // SplitOption (2x) - 58595: 1144, // SplitRegionStmt (2x) - 58599: 1145, // Statement (2x) - 58602: 1146, // StatsOptionsOpt (2x) - 58603: 1147, // StatsPersistentVal (2x) - 58604: 1148, // StatsType (2x) - 58605: 1149, // StopImportStmt (2x) - 58612: 1150, // SubPartDefinition (2x) - 58615: 1151, // SubPartitionMethod (2x) - 58620: 1152, // Symbol (2x) - 58626: 1153, // TableElementList (2x) - 58629: 1154, // TableLock (2x) - 58633: 1155, // TableNameListOpt (2x) - 58640: 1156, // TableOrTables (2x) - 58649: 1157, // TablesTerminalSym (2x) - 58647: 1158, // TableToTable (2x) - 58651: 1159, // TextStringList (2x) - 58656: 1160, // TraceStmt (2x) - 58661: 1161, // TruncateTableStmt (2x) - 58664: 1162, // UnlockStatsStmt (2x) - 58665: 1163, // UnlockTablesStmt (2x) - 58671: 1164, // UserToUser (2x) - 58668: 1165, // UseStmt (2x) - 58683: 1166, // Varchar (2x) - 58686: 1167, // VariableAssignmentList (2x) - 58695: 1168, // WhenClause (2x) - 58700: 1169, // WindowDefinition (2x) - 58703: 1170, // WindowFrameBound (2x) - 58710: 1171, // WindowSpec (2x) - 58715: 1172, // WithGrantOptionOpt (2x) - 58716: 1173, // WithList (2x) - 58720: 1174, // Writeable (2x) - 58118: 1175, // AdminShowSlow (1x) - 58120: 1176, // AdminStmtLimitOpt (1x) - 58128: 1177, // AlterOrderList (1x) - 58131: 1178, // AlterSequenceOptionList (1x) - 58133: 1179, // AlterTablePartitionOpt (1x) - 58135: 1180, // AlterTableSpecList (1x) - 58136: 1181, // AlterTableSpecListOpt (1x) - 58140: 1182, // AnalyzeOptionList (1x) - 58143: 1183, // AnyOrAll (1x) - 58145: 1184, // AsOfClauseOpt (1x) - 58146: 1185, // AsOpt (1x) - 58151: 1186, // AuthOption (1x) - 58152: 1187, // AuthPlugin (1x) - 58154: 1188, // AutoRandomOpt (1x) - 58164: 1189, // BetweenOrNotOp (1x) - 58166: 1190, // BindingStatusType (1x) - 58169: 1191, // BitValueType (1x) - 58170: 1192, // BlobType (1x) - 58173: 1193, // BooleanType (1x) - 57371: 1194, // both (1x) - 58184: 1195, // CharsetNameOrDefault (1x) - 58185: 1196, // CharsetOpt (1x) - 58187: 1197, // ClearPasswordExpireOptions (1x) - 58191: 1198, // ColumnFormat (1x) - 58193: 1199, // ColumnList (1x) - 58200: 1200, // ColumnNameOrUserVariableList (1x) - 58197: 1201, // ColumnNameOrUserVarListOpt (1x) - 58198: 1202, // ColumnNameOrUserVarListOptWithBrackets (1x) - 58206: 1203, // ColumnSetValueList (1x) - 58211: 1204, // CompareOp (1x) - 58215: 1205, // ConnectionOptionList (1x) - 58218: 1206, // ConstraintElem (1x) - 58226: 1207, // CreateSequenceOptionListOpt (1x) - 58230: 1208, // CreateTableSelectOpt (1x) - 58233: 1209, // CreateViewSelectOpt (1x) - 58240: 1210, // DatabaseOptionListOpt (1x) - 58242: 1211, // DateAndTimeType (1x) - 58237: 1212, // DBNameList (1x) - 58248: 1213, // DefaultValueExpr (1x) - 58268: 1214, // DryRunOptions (1x) - 57410: 1215, // dual (1x) - 58270: 1216, // ElseOpt (1x) - 58275: 1217, // EnforcedOrNotOrNotNullOpt (1x) - 58289: 1218, // ExpressionOpt (1x) - 58291: 1219, // FetchFirstOpt (1x) - 58293: 1220, // FieldAsName (1x) - 58294: 1221, // FieldAsNameOpt (1x) - 58296: 1222, // FieldItemList (1x) - 58298: 1223, // FieldList (1x) - 58304: 1224, // FirstAndLastPartOpt (1x) - 58305: 1225, // FirstOrNext (1x) - 58306: 1226, // FixedPointType (1x) - 58312: 1227, // FloatingPointType (1x) - 58313: 1228, // FlushOption (1x) - 58316: 1229, // FromDual (1x) - 58318: 1230, // FulltextSearchModifierOpt (1x) - 58319: 1231, // FuncDatetimePrec (1x) - 58332: 1232, // GetFormatSelector (1x) - 58339: 1233, // HandleRangeList (1x) - 58344: 1234, // IdentListWithParenOpt (1x) - 58348: 1235, // IfNotRunning (1x) - 58349: 1236, // IfRunning (1x) - 58350: 1237, // IgnoreLines (1x) - 58352: 1238, // ImportTruncate (1x) - 58358: 1239, // IndexHintScope (1x) - 58361: 1240, // IndexKeyTypeOpt (1x) - 58370: 1241, // IndexPartSpecificationListOpt (1x) - 58373: 1242, // IndexTypeOpt (1x) - 58353: 1243, // InOrNotOp (1x) - 58376: 1244, // InstanceOption (1x) - 58378: 1245, // IntegerType (1x) - 58379: 1246, // IntervalExpr (1x) - 58382: 1247, // IsolationLevel (1x) - 58381: 1248, // IsOrNotOp (1x) - 57461: 1249, // leading (1x) - 58390: 1250, // LikeEscapeOpt (1x) - 58391: 1251, // LikeOrNotOp (1x) - 58392: 1252, // LikeTableWithOrWithoutParen (1x) - 58397: 1253, // LinesTerminated (1x) - 58400: 1254, // LoadDataSetList (1x) - 58401: 1255, // LoadDataSetSpecOpt (1x) - 58409: 1256, // LockType (1x) - 58410: 1257, // LogTypeOpt (1x) - 58411: 1258, // Match (1x) - 58412: 1259, // MatchOpt (1x) - 58413: 1260, // MaxIndexNumOpt (1x) - 58414: 1261, // MaxMinutesOpt (1x) - 58415: 1262, // MaxValPartOpt (1x) - 58418: 1263, // NChar (1x) - 58430: 1264, // NullPartOpt (1x) - 58433: 1265, // NumericType (1x) - 58420: 1266, // NVarchar (1x) - 58438: 1267, // OnDeleteUpdateOpt (1x) - 58439: 1268, // OnDuplicateKeyUpdate (1x) - 58441: 1269, // OptBinMod (1x) - 58443: 1270, // OptCharset (1x) - 58446: 1271, // OptErrors (1x) - 58447: 1272, // OptExistingWindowName (1x) - 58449: 1273, // OptFromFirstLast (1x) - 58451: 1274, // OptGConcatSeparator (1x) - 58466: 1275, // OptionalShardColumn (1x) - 58457: 1276, // OptPartitionClause (1x) - 58458: 1277, // OptTable (1x) - 58461: 1278, // OptWindowFrameClause (1x) - 58462: 1279, // OptWindowOrderByClause (1x) - 58468: 1280, // Order (1x) - 58467: 1281, // OrReplace (1x) - 57445: 1282, // outfile (1x) - 58474: 1283, // PartDefValuesOpt (1x) - 58479: 1284, // PartitionKeyAlgorithmOpt (1x) - 58480: 1285, // PartitionMethod (1x) - 58483: 1286, // PartitionNumOpt (1x) - 58490: 1287, // PerDB (1x) - 58491: 1288, // PerTable (1x) - 57499: 1289, // precisionType (1x) - 58499: 1290, // PrepareSQL (1x) - 58507: 1291, // ProcedureCall (1x) - 57506: 1292, // recursive (1x) - 58513: 1293, // RegexpOrNotOp (1x) - 58518: 1294, // ReorganizePartitionRuleOpt (1x) - 58523: 1295, // RequireList (1x) - 58534: 1296, // RoleSpecList (1x) - 58541: 1297, // RowOrRows (1x) - 58548: 1298, // SelectStmtFieldList (1x) - 58556: 1299, // SelectStmtOpts (1x) - 58557: 1300, // SelectStmtOptsList (1x) - 58561: 1301, // SequenceOptionList (1x) - 58566: 1302, // SetOpr (1x) - 58573: 1303, // SetRoleOpt (1x) - 58576: 1304, // ShardableStmt (1x) - 58579: 1305, // ShowIndexKwd (1x) - 58580: 1306, // ShowLikeOrWhereOpt (1x) - 58581: 1307, // ShowPlacementTarget (1x) - 58582: 1308, // ShowProfileArgsOpt (1x) - 58584: 1309, // ShowProfileTypes (1x) - 58585: 1310, // ShowProfileTypesOpt (1x) - 58588: 1311, // ShowTargetFilterable (1x) - 57526: 1312, // spatial (1x) - 58596: 1313, // SplitSyntaxOption (1x) - 57531: 1314, // ssl (1x) - 58597: 1315, // Start (1x) - 58598: 1316, // Starting (1x) - 57532: 1317, // starting (1x) - 58600: 1318, // StatementList (1x) - 58601: 1319, // StatementScope (1x) - 58606: 1320, // StorageMedia (1x) - 57538: 1321, // stored (1x) - 58607: 1322, // StringList (1x) - 58610: 1323, // StringNameOrBRIEOptionKeyword (1x) - 58611: 1324, // StringType (1x) - 58613: 1325, // SubPartDefinitionList (1x) - 58614: 1326, // SubPartDefinitionListOpt (1x) - 58616: 1327, // SubPartitionNumOpt (1x) - 58617: 1328, // SubPartitionOpt (1x) - 58627: 1329, // TableElementListOpt (1x) - 58630: 1330, // TableLockList (1x) - 58643: 1331, // TableRefsClause (1x) - 58644: 1332, // TableSampleMethodOpt (1x) - 58645: 1333, // TableSampleOpt (1x) - 58646: 1334, // TableSampleUnitOpt (1x) - 58648: 1335, // TableToTableList (1x) - 58652: 1336, // TextType (1x) - 57545: 1337, // trailing (1x) - 58660: 1338, // TrimDirection (1x) - 58662: 1339, // Type (1x) - 58672: 1340, // UserToUserList (1x) - 58674: 1341, // UserVariableList (1x) - 58677: 1342, // UsingRoles (1x) - 58679: 1343, // Values (1x) - 58681: 1344, // ValuesOpt (1x) - 58688: 1345, // ViewAlgorithm (1x) - 58689: 1346, // ViewCheckOption (1x) - 58690: 1347, // ViewDefiner (1x) - 58691: 1348, // ViewFieldList (1x) - 58692: 1349, // ViewName (1x) - 58693: 1350, // ViewSQLSecurity (1x) - 57565: 1351, // virtual (1x) - 58694: 1352, // VirtualOrStored (1x) - 58696: 1353, // WhenClauseList (1x) - 58699: 1354, // WindowClauseOptional (1x) - 58701: 1355, // WindowDefinitionList (1x) - 58702: 1356, // WindowFrameBetween (1x) - 58704: 1357, // WindowFrameExtent (1x) - 58706: 1358, // WindowFrameUnits (1x) - 58709: 1359, // WindowNameOrSpec (1x) - 58711: 1360, // WindowSpecDetails (1x) - 58717: 1361, // WithReadLockOpt (1x) - 58718: 1362, // WithValidation (1x) - 58719: 1363, // WithValidationOpt (1x) - 58721: 1364, // Year (1x) - 58117: 1365, // $default (0x) - 58078: 1366, // andnot (0x) - 58149: 1367, // AssignmentListOpt (0x) - 58190: 1368, // ColumnDefList (0x) - 58207: 1369, // CommaOpt (0x) - 58101: 1370, // createTableSelect (0x) - 58092: 1371, // empty (0x) - 57345: 1372, // error (0x) - 58116: 1373, // higherThanComma (0x) - 58110: 1374, // higherThanParenthese (0x) - 58099: 1375, // insertValues (0x) - 57353: 1376, // invalid (0x) - 58102: 1377, // lowerThanCharsetKwd (0x) - 58115: 1378, // lowerThanComma (0x) - 58100: 1379, // lowerThanCreateTableSelect (0x) - 58112: 1380, // lowerThanEq (0x) - 58107: 1381, // lowerThanFunction (0x) - 58098: 1382, // lowerThanInsertValues (0x) - 58103: 1383, // lowerThanKey (0x) - 58104: 1384, // lowerThanLocal (0x) - 58114: 1385, // lowerThanNot (0x) - 58111: 1386, // lowerThanOn (0x) - 58109: 1387, // lowerThanParenthese (0x) - 58105: 1388, // lowerThanRemove (0x) - 58093: 1389, // lowerThanSelectOpt (0x) - 58097: 1390, // lowerThanSelectStmt (0x) - 58096: 1391, // lowerThanSetKeyword (0x) - 58095: 1392, // lowerThanStringLitToken (0x) - 58094: 1393, // lowerThanValueKeyword (0x) - 58106: 1394, // lowerThenOrder (0x) - 58113: 1395, // neg (0x) - 57357: 1396, // odbcDateType (0x) - 57359: 1397, // odbcTimestampType (0x) - 57358: 1398, // odbcTimeType (0x) - 58108: 1399, // tableRefPriority (0x) + 57344: 0, // $end (2298x) + 59: 1, // ';' (2297x) + 58051: 2, // split (1898x) + 57745: 3, // merge (1897x) + 57810: 4, // remove (1896x) + 57811: 5, // reorganize (1896x) + 57629: 6, // comment (1888x) + 57875: 7, // storage (1804x) + 57592: 8, // autoIncrement (1793x) + 44: 9, // ',' (1710x) + 57690: 10, // first (1693x) + 57578: 11, // after (1687x) + 57842: 12, // serial (1683x) + 57593: 13, // autoRandom (1682x) + 57626: 14, // columnFormat (1682x) + 57783: 15, // password (1655x) + 57617: 16, // charsetKwd (1650x) + 57619: 17, // checksum (1638x) + 57962: 18, // placement (1636x) + 57722: 19, // keyBlockSize (1620x) + 57887: 20, // tablespace (1617x) + 57670: 21, // encryption (1615x) + 57673: 22, // engine (1612x) + 57652: 23, // data (1610x) + 57713: 24, // insertMethod (1608x) + 57740: 25, // maxRows (1608x) + 57747: 26, // minRows (1608x) + 57762: 27, // nodegroup (1608x) + 57636: 28, // connection (1600x) + 57594: 29, // autoRandomBase (1597x) + 58041: 30, // statsBuckets (1595x) + 58043: 31, // statsTopN (1595x) + 57902: 32, // ttl (1595x) + 57591: 33, // autoIdCache (1594x) + 57596: 34, // avgRowLength (1594x) + 57634: 35, // compression (1594x) + 57658: 36, // delayKeyWrite (1594x) + 57777: 37, // packKeys (1594x) + 57790: 38, // preSplitRegions (1594x) + 57830: 39, // rowFormat (1594x) + 57835: 40, // secondaryEngine (1594x) + 57846: 41, // shardRowIDBits (1594x) + 57871: 42, // statsAutoRecalc (1594x) + 57589: 43, // statsColChoice (1594x) + 57590: 44, // statsColList (1594x) + 57872: 45, // statsPersistent (1594x) + 57873: 46, // statsSamplePages (1594x) + 57588: 47, // statsSampleRate (1594x) + 57885: 48, // tableChecksum (1594x) + 57903: 49, // ttlEnable (1594x) + 57585: 50, // attribute (1543x) + 57575: 51, // account (1541x) + 57823: 52, // resume (1528x) + 57850: 53, // signed (1528x) + 57856: 54, // snapshot (1527x) + 57597: 55, // backend (1526x) + 57618: 56, // checkpoint (1526x) + 57635: 57, // concurrency (1526x) + 57641: 58, // csvBackslashEscape (1526x) + 57642: 59, // csvDelimiter (1526x) + 57643: 60, // csvHeader (1526x) + 57644: 61, // csvNotNull (1526x) + 57645: 62, // csvNull (1526x) + 57646: 63, // csvSeparator (1526x) + 57647: 64, // csvTrimLastSeparators (1526x) + 57726: 65, // lastBackup (1526x) + 57772: 66, // onDuplicate (1526x) + 57773: 67, // online (1526x) + 57805: 68, // rateLimit (1526x) + 57839: 69, // sendCredentialsToTiKV (1526x) + 57853: 70, // skipSchemaFiles (1526x) + 57876: 71, // strictFormat (1526x) + 57892: 72, // tikvImporter (1526x) + 41: 73, // ')' (1524x) + 57901: 74, // truncate (1523x) + 57759: 75, // no (1522x) + 57870: 76, // start (1520x) + 57612: 77, // cache (1517x) + 57760: 78, // nocache (1516x) + 57651: 79, // cycle (1515x) + 57749: 80, // minValue (1515x) + 57710: 81, // increment (1514x) + 57761: 82, // nocycle (1514x) + 57763: 83, // nomaxvalue (1514x) + 57764: 84, // nominvalue (1514x) + 57820: 85, // restart (1512x) + 57581: 86, // algorithm (1511x) + 57896: 87, // tp (1511x) + 57650: 88, // clustered (1510x) + 57715: 89, // invisible (1510x) + 57765: 90, // nonclustered (1510x) + 58054: 91, // regions (1510x) + 57914: 92, // visible (1510x) + 57878: 93, // subpartition (1507x) + 57782: 94, // partitions (1506x) + 57932: 95, // constraints (1503x) + 57943: 96, // followerConstraints (1503x) + 57944: 97, // followers (1503x) + 57954: 98, // leaderConstraints (1503x) + 57956: 99, // learnerConstraints (1503x) + 57957: 100, // learners (1503x) + 57967: 101, // primaryRegion (1503x) + 57972: 102, // schedule (1503x) + 58006: 103, // voterConstraints (1503x) + 58007: 104, // voters (1503x) + 57627: 105, // columns (1502x) + 57913: 106, // view (1502x) + 57655: 107, // day (1500x) + 57920: 108, // yearType (1500x) + 57834: 109, // second (1498x) + 57869: 110, // sqlTsiYear (1498x) + 57584: 111, // ascii (1497x) + 57611: 112, // byteType (1497x) + 57640: 113, // cpu (1497x) + 57705: 114, // hour (1497x) + 57746: 115, // microsecond (1497x) + 57748: 116, // minute (1497x) + 57752: 117, // month (1497x) + 57801: 118, // quarter (1497x) + 57862: 119, // sqlTsiDay (1497x) + 57863: 120, // sqlTsiHour (1497x) + 57864: 121, // sqlTsiMinute (1497x) + 57865: 122, // sqlTsiMonth (1497x) + 57866: 123, // sqlTsiQuarter (1497x) + 57867: 124, // sqlTsiSecond (1497x) + 57868: 125, // sqlTsiWeek (1497x) + 57907: 126, // unicodeSym (1497x) + 57916: 127, // week (1497x) + 57688: 128, // fields (1496x) + 58010: 129, // ioReadBandwidth (1495x) + 58011: 130, // ioWriteBandwidth (1495x) + 58008: 131, // rruRate (1495x) + 57886: 132, // tables (1495x) + 58009: 133, // wruRate (1495x) + 57874: 134, // status (1494x) + 57840: 135, // separator (1493x) + 57620: 136, // cipher (1492x) + 57346: 137, // identifier (1492x) + 57720: 138, // issuer (1492x) + 57738: 139, // maxConnectionsPerHour (1492x) + 57739: 140, // maxQueriesPerHour (1492x) + 57741: 141, // maxUpdatesPerHour (1492x) + 57742: 142, // maxUserConnections (1492x) + 57791: 143, // preceding (1492x) + 57832: 144, // san (1492x) + 57877: 145, // subject (1492x) + 57895: 146, // tokenIssuer (1492x) + 57708: 147, // importKwd (1491x) + 57731: 148, // local (1491x) + 57803: 149, // query (1490x) + 57852: 150, // skip (1490x) + 57604: 151, // bindings (1489x) + 57657: 152, // definer (1489x) + 57700: 153, // hash (1489x) + 57706: 154, // identified (1489x) + 57734: 155, // logs (1489x) + 57819: 156, // respect (1489x) + 57630: 157, // commit (1488x) + 57648: 158, // current (1488x) + 57672: 159, // enforced (1488x) + 57693: 160, // following (1488x) + 57728: 161, // less (1488x) + 57767: 162, // nowait (1488x) + 57774: 163, // only (1488x) + 57827: 164, // rollback (1488x) + 57833: 165, // savepoint (1488x) + 57891: 166, // than (1488x) + 57911: 167, // value (1488x) + 57600: 168, // begin (1487x) + 57602: 169, // binding (1487x) + 57671: 170, // end (1487x) + 57698: 171, // global (1487x) + 57947: 172, // next_row_id (1487x) + 57771: 173, // offset (1487x) + 57789: 174, // policy (1487x) + 57966: 175, // predicate (1487x) + 57888: 176, // temporary (1487x) + 58049: 177, // tiFlash (1487x) + 57904: 178, // unbounded (1487x) + 57909: 179, // user (1487x) + 57721: 180, // jsonType (1486x) + 57964: 181, // planCache (1486x) + 57792: 182, // prepare (1486x) + 57826: 183, // role (1486x) + 57908: 184, // unknown (1486x) + 57921: 185, // wait (1486x) + 57610: 186, // btree (1485x) + 57653: 187, // datetimeType (1485x) + 57654: 188, // dateType (1485x) + 57691: 189, // fixed (1485x) + 57707: 190, // identSQLErrors (1485x) + 57719: 191, // isolation (1485x) + 57725: 192, // last (1485x) + 57733: 193, // location (1485x) + 57736: 194, // max_idxnum (1485x) + 57744: 195, // memory (1485x) + 57770: 196, // off (1485x) + 57776: 197, // optional (1485x) + 57785: 198, // per_db (1485x) + 57963: 199, // plan (1485x) + 57794: 200, // privileges (1485x) + 57814: 201, // replica (1485x) + 57817: 202, // required (1485x) + 57831: 203, // rtree (1485x) + 57970: 204, // running (1485x) + 58035: 205, // sampleRate (1485x) + 57841: 206, // sequence (1485x) + 57844: 207, // session (1485x) + 57855: 208, // slow (1485x) + 58038: 209, // stats (1485x) + 57894: 210, // timeType (1485x) + 57910: 211, // validation (1485x) + 57912: 212, // variables (1485x) + 57586: 213, // attributes (1484x) + 57632: 214, // compact (1484x) + 57661: 215, // disable (1484x) + 57666: 216, // duplicate (1484x) + 57667: 217, // dynamic (1484x) + 57668: 218, // enable (1484x) + 57676: 219, // errorKwd (1484x) + 57692: 220, // flush (1484x) + 57695: 221, // full (1484x) + 57703: 222, // history (1484x) + 57743: 223, // mb (1484x) + 57750: 224, // mode (1484x) + 57788: 225, // plugins (1484x) + 57796: 226, // processlist (1484x) + 57807: 227, // recover (1484x) + 57812: 228, // repair (1484x) + 57813: 229, // repeatable (1484x) + 57818: 230, // resource (1484x) + 58037: 231, // statistics (1484x) + 57879: 232, // subpartitions (1484x) + 58048: 233, // tidb (1484x) + 57893: 234, // timestampType (1484x) + 57918: 235, // without (1484x) + 58012: 236, // admin (1483x) + 57598: 237, // backup (1483x) + 58013: 238, // batch (1483x) + 57605: 239, // binlog (1483x) + 57607: 240, // block (1483x) + 57608: 241, // booleanType (1483x) + 57929: 242, // briefType (1483x) + 58014: 243, // buckets (1483x) + 57613: 244, // capture (1483x) + 58017: 245, // cardinality (1483x) + 57616: 246, // chain (1483x) + 57623: 247, // clientErrorsSummary (1483x) + 58018: 248, // cmSketch (1483x) + 57624: 249, // coalesce (1483x) + 57633: 250, // compressed (1483x) + 57639: 251, // context (1483x) + 57931: 252, // copyKwd (1483x) + 58020: 253, // correlation (1483x) + 57656: 254, // deallocate (1483x) + 58022: 255, // dependency (1483x) + 57659: 256, // digest (1483x) + 57660: 257, // directory (1483x) + 57663: 258, // discard (1483x) + 57664: 259, // disk (1483x) + 57665: 260, // do (1483x) + 57936: 261, // dotType (1483x) + 58024: 262, // drainer (1483x) + 58025: 263, // dry (1483x) + 57681: 264, // exchange (1483x) + 57683: 265, // execute (1483x) + 57684: 266, // expansion (1483x) + 57941: 267, // flashback (1483x) + 57694: 268, // format (1483x) + 57697: 269, // general (1483x) + 57701: 270, // help (1483x) + 57702: 271, // histogram (1483x) + 57704: 272, // hosts (1483x) + 57948: 273, // inplace (1483x) + 57714: 274, // instance (1483x) + 57949: 275, // instant (1483x) + 57718: 276, // ipc (1483x) + 58027: 277, // job (1483x) + 58026: 278, // jobs (1483x) + 57723: 279, // labels (1483x) + 57732: 280, // locked (1483x) + 57751: 281, // modify (1483x) + 57757: 282, // next (1483x) + 58028: 283, // nodeID (1483x) + 58029: 284, // nodeState (1483x) + 57769: 285, // nulls (1483x) + 57778: 286, // pageSym (1483x) + 58032: 287, // pump (1483x) + 57800: 288, // purge (1483x) + 57806: 289, // rebuild (1483x) + 57808: 290, // redundant (1483x) + 57809: 291, // reload (1483x) + 57821: 292, // restore (1483x) + 57828: 293, // routine (1483x) + 57971: 294, // s3 (1483x) + 58034: 295, // samples (1483x) + 57836: 296, // secondaryLoad (1483x) + 57837: 297, // secondaryUnload (1483x) + 57847: 298, // share (1483x) + 57849: 299, // shutdown (1483x) + 57858: 300, // source (1483x) + 57587: 301, // statsOptions (1483x) + 57978: 302, // stop (1483x) + 57881: 303, // swaps (1483x) + 57985: 304, // tidbJson (1483x) + 57989: 305, // tokudbDefault (1483x) + 57990: 306, // tokudbFast (1483x) + 57991: 307, // tokudbLzma (1483x) + 57992: 308, // tokudbQuickLZ (1483x) + 57994: 309, // tokudbSmall (1483x) + 57993: 310, // tokudbSnappy (1483x) + 57995: 311, // tokudbUncompressed (1483x) + 57996: 312, // tokudbZlib (1483x) + 57997: 313, // tokudbZstd (1483x) + 58050: 314, // topn (1483x) + 57897: 315, // trace (1483x) + 57898: 316, // traditional (1483x) + 58004: 317, // trueCardCost (1483x) + 58003: 318, // verboseType (1483x) + 57915: 319, // warnings (1483x) + 57576: 320, // action (1482x) + 57577: 321, // advise (1482x) + 57579: 322, // against (1482x) + 57580: 323, // ago (1482x) + 57582: 324, // always (1482x) + 57599: 325, // backups (1482x) + 57601: 326, // bernoulli (1482x) + 57603: 327, // bindingCache (1482x) + 57606: 328, // bitType (1482x) + 57609: 329, // boolType (1482x) + 58015: 330, // builtins (1482x) + 58016: 331, // cancel (1482x) + 57614: 332, // cascaded (1482x) + 57615: 333, // causal (1482x) + 57621: 334, // cleanup (1482x) + 57622: 335, // client (1482x) + 57649: 336, // cluster (1482x) + 57625: 337, // collation (1482x) + 58019: 338, // columnStatsUsage (1482x) + 57631: 339, // committed (1482x) + 57628: 340, // config (1482x) + 57637: 341, // consistency (1482x) + 57638: 342, // consistent (1482x) + 58021: 343, // ddl (1482x) + 58023: 344, // depth (1482x) + 57662: 345, // disabled (1482x) + 57937: 346, // dump (1482x) + 57669: 347, // enabled (1482x) + 57674: 348, // engines (1482x) + 57675: 349, // enum (1482x) + 57679: 350, // events (1482x) + 57680: 351, // evolve (1482x) + 57685: 352, // expire (1482x) + 57939: 353, // exprPushdownBlacklist (1482x) + 57686: 354, // extended (1482x) + 57687: 355, // faultsSym (1482x) + 57696: 356, // function (1482x) + 57699: 357, // grants (1482x) + 58045: 358, // histogramsInFlight (1482x) + 57709: 359, // imports (1482x) + 57711: 360, // incremental (1482x) + 57712: 361, // indexes (1482x) + 57950: 362, // internal (1482x) + 57716: 363, // invoker (1482x) + 57717: 364, // io (1482x) + 57724: 365, // language (1482x) + 57729: 366, // level (1482x) + 57730: 367, // list (1482x) + 57735: 368, // master (1482x) + 57737: 369, // max_minutes (1482x) + 57754: 370, // national (1482x) + 57755: 371, // ncharType (1482x) + 57756: 372, // never (1482x) + 57758: 373, // nextval (1482x) + 57766: 374, // none (1482x) + 57768: 375, // nvarcharType (1482x) + 57775: 376, // open (1482x) + 58030: 377, // optimistic (1482x) + 57961: 378, // optRuleBlacklist (1482x) + 57779: 379, // parser (1482x) + 57780: 380, // partial (1482x) + 57781: 381, // partitioning (1482x) + 57786: 382, // per_table (1482x) + 57784: 383, // percent (1482x) + 58031: 384, // pessimistic (1482x) + 57793: 385, // preserve (1482x) + 57797: 386, // profile (1482x) + 57798: 387, // profiles (1482x) + 57802: 388, // queries (1482x) + 57968: 389, // recent (1482x) + 58055: 390, // region (1482x) + 57969: 391, // replayer (1482x) + 58053: 392, // reset (1482x) + 57822: 393, // restores (1482x) + 57824: 394, // reuse (1482x) + 58033: 395, // run (1482x) + 57838: 396, // security (1482x) + 57843: 397, // serializable (1482x) + 58036: 398, // sessionStates (1482x) + 57851: 399, // simple (1482x) + 57854: 400, // slave (1482x) + 58042: 401, // statsHealthy (1482x) + 58040: 402, // statsHistograms (1482x) + 58044: 403, // statsLocked (1482x) + 58039: 404, // statsMeta (1482x) + 57979: 405, // strict (1482x) + 57882: 406, // switchesSym (1482x) + 57883: 407, // system (1482x) + 57884: 408, // systemTime (1482x) + 57984: 409, // target (1482x) + 58047: 410, // telemetryID (1482x) + 57889: 411, // temptable (1482x) + 57890: 412, // textType (1482x) + 57988: 413, // tls (1482x) + 57998: 414, // top (1482x) + 57899: 415, // transaction (1482x) + 57900: 416, // triggers (1482x) + 57905: 417, // uncommitted (1482x) + 57906: 418, // undefined (1482x) + 58052: 419, // width (1482x) + 57919: 420, // x509 (1482x) + 57922: 421, // addDate (1481x) + 57583: 422, // any (1481x) + 57923: 423, // approxCountDistinct (1481x) + 57924: 424, // approxPercentile (1481x) + 57595: 425, // avg (1481x) + 57925: 426, // bitAnd (1481x) + 57926: 427, // bitOr (1481x) + 57927: 428, // bitXor (1481x) + 57928: 429, // bound (1481x) + 57930: 430, // cast (1481x) + 57933: 431, // curTime (1481x) + 57934: 432, // dateAdd (1481x) + 57935: 433, // dateSub (1481x) + 57677: 434, // escape (1481x) + 57678: 435, // event (1481x) + 57938: 436, // exact (1481x) + 57682: 437, // exclusive (1481x) + 57940: 438, // extract (1481x) + 57689: 439, // file (1481x) + 57942: 440, // follower (1481x) + 57945: 441, // getFormat (1481x) + 57946: 442, // groupConcat (1481x) + 57951: 443, // jsonArrayagg (1481x) + 57952: 444, // jsonObjectAgg (1481x) + 57727: 445, // lastval (1481x) + 57953: 446, // leader (1481x) + 57955: 447, // learner (1481x) + 57959: 448, // max (1481x) + 57958: 449, // min (1481x) + 57753: 450, // names (1481x) + 57960: 451, // now (1481x) + 57965: 452, // position (1481x) + 57795: 453, // process (1481x) + 57799: 454, // proxy (1481x) + 57804: 455, // quick (1481x) + 57815: 456, // replicas (1481x) + 57816: 457, // replication (1481x) + 57825: 458, // reverse (1481x) + 57829: 459, // rowCount (1481x) + 57845: 460, // setval (1481x) + 57848: 461, // shared (1481x) + 57857: 462, // some (1481x) + 57859: 463, // sqlBufferResult (1481x) + 57860: 464, // sqlCache (1481x) + 57861: 465, // sqlNoCache (1481x) + 57973: 466, // staleness (1481x) + 57974: 467, // std (1481x) + 57975: 468, // stddev (1481x) + 57976: 469, // stddevPop (1481x) + 57977: 470, // stddevSamp (1481x) + 57980: 471, // strong (1481x) + 57981: 472, // subDate (1481x) + 57983: 473, // substring (1481x) + 57982: 474, // sum (1481x) + 57880: 475, // super (1481x) + 58046: 476, // telemetry (1481x) + 57986: 477, // timestampAdd (1481x) + 57987: 478, // timestampDiff (1481x) + 57999: 479, // trim (1481x) + 58000: 480, // variance (1481x) + 58001: 481, // varPop (1481x) + 58002: 482, // varSamp (1481x) + 58005: 483, // voter (1481x) + 57917: 484, // weightString (1481x) + 57489: 485, // on (1410x) + 40: 486, // '(' (1344x) + 57350: 487, // stringLit (1230x) + 57570: 488, // with (1228x) + 58101: 489, // not2 (1205x) + 57399: 490, // defaultKwd (1144x) + 57482: 491, // not (1142x) + 57365: 492, // as (1121x) + 57380: 493, // collate (1087x) + 57549: 494, // union (1073x) + 57555: 495, // using (1065x) + 57462: 496, // left (1059x) + 57516: 497, // right (1059x) + 43: 498, // '+' (1037x) + 45: 499, // '-' (1035x) + 57481: 500, // mod (1015x) + 57497: 501, // partition (1006x) + 57436: 502, // ignore (972x) + 57416: 503, // except (963x) + 57442: 504, // intersect (962x) + 57486: 505, // null (961x) + 57464: 506, // limit (943x) + 57421: 507, // forKwd (941x) + 57378: 508, // charType (938x) + 57559: 509, // values (938x) + 57444: 510, // into (933x) + 57470: 511, // lock (929x) + 58090: 512, // eq (928x) + 57567: 513, // where (924x) + 57424: 514, // from (922x) + 57418: 515, // fetch (919x) + 57494: 516, // order (915x) + 57512: 517, // replace (915x) + 57422: 518, // force (913x) + 57523: 519, // set (902x) + 57364: 520, // and (901x) + 58085: 521, // intLit (900x) + 57493: 522, // or (877x) + 57355: 523, // andand (876x) + 57787: 524, // pipesAsOr (876x) + 57571: 525, // xor (876x) + 57428: 526, // group (853x) + 57430: 527, // having (850x) + 57534: 528, // straightJoin (844x) + 57569: 529, // window (836x) + 57454: 530, // join (832x) + 57463: 531, // like (825x) + 57574: 532, // natural (822x) + 42: 533, // '*' (821x) + 57385: 534, // cross (821x) + 57440: 535, // inner (821x) + 125: 536, // '}' (818x) + 57519: 537, // rows (806x) + 57554: 538, // use (802x) + 57537: 539, // tableSample (796x) + 57502: 540, // rangeKwd (795x) + 57429: 541, // groups (794x) + 57403: 542, // desc (793x) + 57369: 543, // binaryType (792x) + 57394: 544, // dayHour (792x) + 57395: 545, // dayMicrosecond (792x) + 57396: 546, // dayMinute (792x) + 57397: 547, // daySecond (792x) + 57432: 548, // hourMicrosecond (792x) + 57433: 549, // hourMinute (792x) + 57434: 550, // hourSecond (792x) + 57479: 551, // minuteMicrosecond (792x) + 57480: 552, // minuteSecond (792x) + 57521: 553, // secondMicrosecond (792x) + 57572: 554, // yearMonth (792x) + 57366: 555, // asc (791x) + 57566: 556, // when (788x) + 57437: 557, // in (786x) + 57411: 558, // elseKwd (785x) + 57540: 559, // then (782x) + 47: 560, // '/' (779x) + 37: 561, // '%' (778x) + 38: 562, // '&' (778x) + 94: 563, // '^' (778x) + 124: 564, // '|' (778x) + 57407: 565, // div (778x) + 58095: 566, // lsh (778x) + 58100: 567, // rsh (778x) + 60: 568, // '<' (775x) + 62: 569, // '>' (775x) + 58091: 570, // ge (775x) + 57446: 571, // is (775x) + 58092: 572, // le (775x) + 58096: 573, // neq (775x) + 58097: 574, // neqSynonym (775x) + 58098: 575, // nulleq (775x) + 57367: 576, // between (773x) + 57435: 577, // ifKwd (771x) + 57508: 578, // regexpKwd (765x) + 57517: 579, // rlike (765x) + 57447: 580, // insert (760x) + 57536: 581, // tableKwd (752x) + 57351: 582, // singleAtIdentifier (749x) + 57390: 583, // currentUser (745x) + 57417: 584, // falseKwd (744x) + 57547: 585, // trueKwd (744x) + 58084: 586, // decLit (738x) + 58083: 587, // floatLit (738x) + 57518: 588, // row (737x) + 58086: 589, // hexLit (736x) + 58099: 590, // paramMarker (735x) + 58087: 591, // bitLit (734x) + 57443: 592, // interval (734x) + 123: 593, // '{' (733x) + 57455: 594, // key (733x) + 57392: 595, // database (729x) + 57414: 596, // exists (728x) + 57383: 597, // convert (725x) + 58071: 598, // builtinNow (724x) + 57389: 599, // currentTs (724x) + 57352: 600, // doubleAtIdentifier (724x) + 57468: 601, // localTime (724x) + 57469: 602, // localTs (724x) + 57349: 603, // underscoreCS (724x) + 57379: 604, // check (723x) + 57500: 605, // primary (723x) + 58060: 606, // builtinCount (722x) + 57356: 607, // pipes (722x) + 33: 608, // '!' (721x) + 126: 609, // '~' (721x) + 58061: 610, // builtinApproxCountDistinct (721x) + 58062: 611, // builtinApproxPercentile (721x) + 58056: 612, // builtinBitAnd (721x) + 58057: 613, // builtinBitOr (721x) + 58058: 614, // builtinBitXor (721x) + 58059: 615, // builtinCast (721x) + 58063: 616, // builtinCurDate (721x) + 58064: 617, // builtinCurTime (721x) + 58065: 618, // builtinDateAdd (721x) + 58066: 619, // builtinDateSub (721x) + 58067: 620, // builtinExtract (721x) + 58068: 621, // builtinGroupConcat (721x) + 58069: 622, // builtinMax (721x) + 58070: 623, // builtinMin (721x) + 58072: 624, // builtinPosition (721x) + 58076: 625, // builtinStddevPop (721x) + 58077: 626, // builtinStddevSamp (721x) + 58073: 627, // builtinSubstring (721x) + 58074: 628, // builtinSum (721x) + 58075: 629, // builtinSysDate (721x) + 58078: 630, // builtinTranslate (721x) + 58079: 631, // builtinTrim (721x) + 58080: 632, // builtinUser (721x) + 58081: 633, // builtinVarPop (721x) + 58082: 634, // builtinVarSamp (721x) + 57375: 635, // caseKwd (721x) + 57386: 636, // cumeDist (721x) + 57387: 637, // currentDate (721x) + 57391: 638, // currentRole (721x) + 57388: 639, // currentTime (721x) + 57402: 640, // denseRank (721x) + 57419: 641, // firstValue (721x) + 57458: 642, // lag (721x) + 57459: 643, // lastValue (721x) + 57460: 644, // lead (721x) + 57484: 645, // nthValue (721x) + 57485: 646, // ntile (721x) + 57498: 647, // percentRank (721x) + 57503: 648, // rank (721x) + 57511: 649, // repeat (721x) + 57520: 650, // rowNumber (721x) + 57535: 651, // tidbCurrentTSO (721x) + 57556: 652, // utcDate (721x) + 57558: 653, // utcTime (721x) + 57557: 654, // utcTimestamp (721x) + 57548: 655, // unique (716x) + 57382: 656, // constraint (714x) + 57507: 657, // references (711x) + 57522: 658, // selectKwd (709x) + 57426: 659, // generated (707x) + 57377: 660, // character (702x) + 57438: 661, // index (690x) + 57474: 662, // match (663x) + 57544: 663, // to (582x) + 57361: 664, // all (567x) + 46: 665, // '.' (562x) + 57363: 666, // analyze (546x) + 57552: 667, // update (543x) + 57475: 668, // maxValue (530x) + 58093: 669, // jss (528x) + 58094: 670, // juss (528x) + 57465: 671, // lines (517x) + 58089: 672, // assignmentEq (514x) + 57372: 673, // by (514x) + 57362: 674, // alter (512x) + 57513: 675, // require (509x) + 58357: 676, // Identifier (506x) + 58436: 677, // NotKeywordToken (506x) + 58666: 678, // TiDBKeyword (506x) + 58676: 679, // UnReservedKeyword (506x) + 64: 680, // '@' (504x) + 57527: 681, // sql (502x) + 57409: 682, // drop (498x) + 57374: 683, // cascade (497x) + 57504: 684, // read (497x) + 57514: 685, // restrict (497x) + 57347: 686, // asof (495x) + 57384: 687, // create (493x) + 57423: 688, // foreign (493x) + 57425: 689, // fulltext (493x) + 57348: 690, // toTimestamp (492x) + 57562: 691, // varcharacter (491x) + 57561: 692, // varcharType (491x) + 57376: 693, // change (490x) + 57398: 694, // decimalType (490x) + 57408: 695, // doubleType (490x) + 57420: 696, // floatType (490x) + 57441: 697, // integerType (490x) + 57448: 698, // intType (490x) + 57505: 699, // realType (490x) + 57510: 700, // rename (490x) + 57568: 701, // write (490x) + 57563: 702, // varbinaryType (489x) + 57360: 703, // add (488x) + 57368: 704, // bigIntType (488x) + 57370: 705, // blobType (488x) + 57449: 706, // int1Type (488x) + 57450: 707, // int2Type (488x) + 57451: 708, // int3Type (488x) + 57452: 709, // int4Type (488x) + 57453: 710, // int8Type (488x) + 57560: 711, // long (488x) + 57471: 712, // longblobType (488x) + 57472: 713, // longtextType (488x) + 57476: 714, // mediumblobType (488x) + 57477: 715, // mediumIntType (488x) + 57478: 716, // mediumtextType (488x) + 57487: 717, // numericType (488x) + 57490: 718, // optimize (488x) + 57525: 719, // smallIntType (488x) + 57541: 720, // tinyblobType (488x) + 57542: 721, // tinyIntType (488x) + 57543: 722, // tinytextType (488x) + 58631: 723, // SubSelect (223x) + 58686: 724, // UserVariable (181x) + 58606: 725, // SimpleIdent (180x) + 58410: 726, // Literal (179x) + 58621: 727, // StringLiteral (179x) + 58433: 728, // NextValueForSequence (177x) + 58334: 729, // FunctionCallGeneric (176x) + 58335: 730, // FunctionCallKeyword (176x) + 58336: 731, // FunctionCallNonKeyword (176x) + 58337: 732, // FunctionNameConflict (176x) + 58338: 733, // FunctionNameDateArith (176x) + 58339: 734, // FunctionNameDateArithMultiForms (176x) + 58340: 735, // FunctionNameDatetimePrecision (176x) + 58341: 736, // FunctionNameOptionalBraces (176x) + 58342: 737, // FunctionNameSequence (176x) + 58605: 738, // SimpleExpr (176x) + 58632: 739, // SumExpr (176x) + 58634: 740, // SystemVariable (176x) + 58697: 741, // Variable (176x) + 58720: 742, // WindowFuncCall (176x) + 58179: 743, // BitExpr (163x) + 58509: 744, // PredicateExpr (132x) + 58182: 745, // BoolPri (129x) + 58298: 746, // Expression (129x) + 58431: 747, // NUM (105x) + 58735: 748, // logAnd (97x) + 58736: 749, // logOr (97x) + 58288: 750, // EqOpt (82x) + 58644: 751, // TableName (77x) + 58622: 752, // StringName (56x) + 57401: 753, // deleteKwd (53x) + 57551: 754, // unsigned (47x) + 58401: 755, // LengthNum (46x) + 57496: 756, // over (45x) + 57573: 757, // zerofill (45x) + 58204: 758, // ColumnName (41x) + 57405: 759, // distinct (36x) + 57406: 760, // distinctRow (36x) + 58725: 761, // WindowingClause (35x) + 58559: 762, // SelectStmt (34x) + 58560: 763, // SelectStmtBasic (34x) + 58562: 764, // SelectStmtFromDualTable (34x) + 58563: 765, // SelectStmtFromTable (34x) + 58580: 766, // SetOprClause (34x) + 57400: 767, // delayed (33x) + 57431: 768, // highPriority (33x) + 57473: 769, // lowPriority (33x) + 58581: 770, // SetOprClauseList (33x) + 58584: 771, // SetOprStmtWithLimitOrderBy (33x) + 58585: 772, // SetOprStmtWoutLimitOrderBy (33x) + 58726: 773, // WithClause (31x) + 58572: 774, // SelectStmtWithClause (30x) + 58583: 775, // SetOprStmt (30x) + 57354: 776, // hintComment (27x) + 58389: 777, // Int64Num (26x) + 58309: 778, // FieldLen (25x) + 58475: 779, // OptWindowingClause (24x) + 58680: 780, // UpdateStmtNoWith (24x) + 58262: 781, // DeleteWithoutUsingStmt (23x) + 58481: 782, // OrderBy (23x) + 58566: 783, // SelectStmtLimit (23x) + 57528: 784, // sqlBigResult (23x) + 57529: 785, // sqlCalcFoundRows (23x) + 57530: 786, // sqlSmallResult (23x) + 58386: 787, // InsertIntoStmt (21x) + 58531: 788, // ReplaceIntoStmt (21x) + 58679: 789, // UpdateStmt (21x) + 58193: 790, // CharsetKw (20x) + 58688: 791, // Username (20x) + 58358: 792, // IfExists (19x) + 58299: 793, // ExpressionList (18x) + 58261: 794, // DeleteWithUsingStmt (17x) + 58504: 795, // PlacementPolicyOption (17x) + 58645: 796, // TableNameList (17x) + 58359: 797, // IfNotExists (16x) + 57539: 798, // terminated (16x) + 58260: 799, // DeleteFromStmt (15x) + 58265: 800, // DistinctKwd (15x) + 58493: 801, // PartitionNameList (15x) + 58266: 802, // DistinctOpt (14x) + 57412: 803, // enclosed (14x) + 58460: 804, // OptFieldLen (14x) + 58668: 805, // TimestampUnit (14x) + 58710: 806, // WhereClause (14x) + 58711: 807, // WhereClauseOptional (14x) + 58257: 808, // DefaultKwdOpt (13x) + 57413: 809, // escaped (13x) + 57492: 810, // optionally (13x) + 58297: 811, // ExprOrDefault (12x) + 58395: 812, // JoinTable (12x) + 58454: 813, // OptBinary (12x) + 57509: 814, // release (12x) + 58549: 815, // RolenameComposed (12x) + 58641: 816, // TableFactor (12x) + 58654: 817, // TableRef (12x) + 58152: 818, // AnalyzeOptionListOpt (11x) + 58329: 819, // FromOrIn (11x) + 58667: 820, // TimeUnit (11x) + 58148: 821, // AlterTableStmt (10x) + 58194: 822, // CharsetName (10x) + 58205: 823, // ColumnNameList (10x) + 58247: 824, // DBName (10x) + 57467: 825, // load (10x) + 58437: 826, // NotSym (10x) + 57483: 827, // noWriteToBinLog (10x) + 58482: 828, // OrderByOptional (10x) + 58484: 829, // PartDefOption (10x) + 58604: 830, // SignedNum (10x) + 58185: 831, // BuggyDefaultFalseDistinctOpt (9x) + 58256: 832, // DefaultFalseDistinctOpt (9x) + 58396: 833, // JoinType (9x) + 58444: 834, // NumLiteral (9x) + 58548: 835, // Rolename (9x) + 58543: 836, // RoleNameString (9x) + 58246: 837, // CrossOpt (8x) + 58289: 838, // EqOrAssignmentEq (8x) + 58296: 839, // ExplainableStmt (8x) + 58300: 840, // ExpressionListOpt (8x) + 58380: 841, // IndexPartSpecification (8x) + 58397: 842, // KeyOrIndex (8x) + 58434: 843, // NoWriteToBinLogAliasOpt (8x) + 58567: 844, // SelectStmtLimitOpt (8x) + 58700: 845, // VariableName (8x) + 58133: 846, // AllOrPartitionNameList (7x) + 58229: 847, // ConstraintKeywordOpt (7x) + 58252: 848, // DatabaseSym (7x) + 58315: 849, // FieldsOrColumns (7x) + 58327: 850, // ForceOpt (7x) + 58381: 851, // IndexPartSpecificationList (7x) + 58513: 852, // Priority (7x) + 58553: 853, // RowFormat (7x) + 58556: 854, // RowValue (7x) + 58578: 855, // SetExpr (7x) + 58590: 856, // ShowDatabaseNameOpt (7x) + 58651: 857, // TableOption (7x) + 57564: 858, // varying (7x) + 58153: 859, // AnalyzeTableStmt (6x) + 58174: 860, // BeginTransactionStmt (6x) + 58176: 861, // BindableStmt (6x) + 57381: 862, // column (6x) + 58199: 863, // ColumnDef (6x) + 58219: 864, // CommitStmt (6x) + 58249: 865, // DatabaseOption (6x) + 58291: 866, // EscapedTableRef (6x) + 58313: 867, // FieldTerminator (6x) + 57427: 868, // grant (6x) + 58363: 869, // IgnoreOptional (6x) + 58372: 870, // IndexInvisible (6x) + 58377: 871, // IndexNameList (6x) + 58383: 872, // IndexType (6x) + 58414: 873, // LoadDataStmt (6x) + 58494: 874, // PartitionNameListOpt (6x) + 58507: 875, // PolicyName (6x) + 58526: 876, // ReleaseSavepointStmt (6x) + 58550: 877, // RolenameList (6x) + 58552: 878, // RollbackStmt (6x) + 58557: 879, // SavepointStmt (6x) + 58588: 880, // SetStmt (6x) + 57524: 881, // show (6x) + 58649: 882, // TableOptimizerHints (6x) + 58689: 883, // UsernameList (6x) + 58727: 884, // WithClustered (6x) + 58131: 885, // AlgorithmClause (5x) + 58187: 886, // ByItem (5x) + 58198: 887, // CollationName (5x) + 58202: 888, // ColumnKeywordOpt (5x) + 58263: 889, // DirectPlacementOption (5x) + 58264: 890, // DirectResourceGroupOption (5x) + 58311: 891, // FieldOpt (5x) + 58312: 892, // FieldOpts (5x) + 58355: 893, // IdentList (5x) + 58375: 894, // IndexName (5x) + 58378: 895, // IndexOption (5x) + 58379: 896, // IndexOptionList (5x) + 57439: 897, // infile (5x) + 58406: 898, // LimitOption (5x) + 58418: 899, // LockClause (5x) + 58456: 900, // OptCharsetWithOptBinary (5x) + 58467: 901, // OptNullTreatment (5x) + 58514: 902, // PriorityOpt (5x) + 58558: 903, // SelectLockOpt (5x) + 58565: 904, // SelectStmtIntoOption (5x) + 58655: 905, // TableRefs (5x) + 58682: 906, // UserSpec (5x) + 58158: 907, // Assignment (4x) + 58164: 908, // AuthString (4x) + 58166: 909, // BRIEBooleanOptionName (4x) + 58167: 910, // BRIEIntegerOptionName (4x) + 58168: 911, // BRIEKeywordOptionName (4x) + 58169: 912, // BRIEOption (4x) + 58170: 913, // BRIEOptions (4x) + 58172: 914, // BRIEStringOptionName (4x) + 58186: 915, // BuiltinFunction (4x) + 58188: 916, // ByList (4x) + 58192: 917, // Char (4x) + 58223: 918, // ConfigItemName (4x) + 58227: 919, // Constraint (4x) + 58323: 920, // FloatOpt (4x) + 58384: 921, // IndexTypeName (4x) + 57491: 922, // option (4x) + 58472: 923, // OptWild (4x) + 57495: 924, // outer (4x) + 58508: 925, // Precision (4x) + 58522: 926, // ReferDef (4x) + 58539: 927, // RestrictOrCascadeOpt (4x) + 58555: 928, // RowStmt (4x) + 58573: 929, // SequenceOption (4x) + 57533: 930, // statsExtended (4x) + 58636: 931, // TableAsName (4x) + 58637: 932, // TableAsNameOpt (4x) + 58648: 933, // TableNameOptWild (4x) + 58650: 934, // TableOptimizerHintsOpt (4x) + 58652: 935, // TableOptionList (4x) + 58670: 936, // TraceableStmt (4x) + 58671: 937, // TransactionChar (4x) + 58683: 938, // UserSpecList (4x) + 58721: 939, // WindowName (4x) + 58155: 940, // AsOfClause (3x) + 58159: 941, // AssignmentList (3x) + 58161: 942, // AttributesOpt (3x) + 58183: 943, // Boolean (3x) + 58211: 944, // ColumnOption (3x) + 58214: 945, // ColumnPosition (3x) + 58220: 946, // CommonTableExpr (3x) + 58242: 947, // CreateTableStmt (3x) + 58250: 948, // DatabaseOptionList (3x) + 58258: 949, // DefaultTrueDistinctOpt (3x) + 58285: 950, // EnforcedOrNot (3x) + 57415: 951, // explain (3x) + 58302: 952, // ExtendedPriv (3x) + 58343: 953, // GeneratedAlways (3x) + 58345: 954, // GlobalScope (3x) + 58349: 955, // GroupByClause (3x) + 58367: 956, // IndexHint (3x) + 58371: 957, // IndexHintType (3x) + 58376: 958, // IndexNameAndTypeOpt (3x) + 57456: 959, // keys (3x) + 58408: 960, // Lines (3x) + 58428: 961, // MaxValueOrExpression (3x) + 58438: 962, // NowSym (3x) + 58439: 963, // NowSymFunc (3x) + 58440: 964, // NowSymOptionFraction (3x) + 58468: 965, // OptOrder (3x) + 58471: 966, // OptTemporary (3x) + 58485: 967, // PartDefOptionList (3x) + 58487: 968, // PartitionDefinition (3x) + 58498: 969, // PasswordOrLockOption (3x) + 58506: 970, // PluginNameList (3x) + 58512: 971, // PrimaryOpt (3x) + 58515: 972, // PrivElem (3x) + 58517: 973, // PrivType (3x) + 57501: 974, // procedure (3x) + 58532: 975, // RequireClause (3x) + 58533: 976, // RequireClauseOpt (3x) + 58535: 977, // RequireListElement (3x) + 58551: 978, // RolenameWithoutIdent (3x) + 58544: 979, // RoleOrPrivElem (3x) + 58564: 980, // SelectStmtGroup (3x) + 58582: 981, // SetOprOpt (3x) + 58635: 982, // TableAliasRefList (3x) + 58638: 983, // TableElement (3x) + 58647: 984, // TableNameListOpt2 (3x) + 58663: 985, // TextString (3x) + 58672: 986, // TransactionChars (3x) + 57546: 987, // trigger (3x) + 57550: 988, // unlock (3x) + 57553: 989, // usage (3x) + 58693: 990, // ValuesList (3x) + 58695: 991, // ValuesStmtList (3x) + 58691: 992, // ValueSym (3x) + 58698: 993, // VariableAssignment (3x) + 58718: 994, // WindowFrameStart (3x) + 58129: 995, // AdminStmt (2x) + 58132: 996, // AllColumnsOrPredicateColumnsOpt (2x) + 58134: 997, // AlterDatabaseStmt (2x) + 58135: 998, // AlterImportStmt (2x) + 58136: 999, // AlterInstanceStmt (2x) + 58137: 1000, // AlterOrderItem (2x) + 58139: 1001, // AlterPolicyStmt (2x) + 58140: 1002, // AlterResourceGroupStmt (2x) + 58141: 1003, // AlterSequenceOption (2x) + 58143: 1004, // AlterSequenceStmt (2x) + 58144: 1005, // AlterTableSpec (2x) + 58149: 1006, // AlterUserStmt (2x) + 58150: 1007, // AnalyzeOption (2x) + 58178: 1008, // BinlogStmt (2x) + 58171: 1009, // BRIEStmt (2x) + 58173: 1010, // BRIETables (2x) + 57373: 1011, // call (2x) + 58189: 1012, // CallStmt (2x) + 58190: 1013, // CastType (2x) + 58191: 1014, // ChangeStmt (2x) + 58197: 1015, // CheckConstraintKeyword (2x) + 58206: 1016, // ColumnNameListOpt (2x) + 58209: 1017, // ColumnNameOrUserVariable (2x) + 58212: 1018, // ColumnOptionList (2x) + 58213: 1019, // ColumnOptionListOpt (2x) + 58215: 1020, // ColumnSetValue (2x) + 58218: 1021, // CommentOrAttributeOption (2x) + 58222: 1022, // CompletionTypeWithinTransaction (2x) + 58224: 1023, // ConnectionOption (2x) + 58226: 1024, // ConnectionOptions (2x) + 58230: 1025, // CreateBindingStmt (2x) + 58231: 1026, // CreateDatabaseStmt (2x) + 58232: 1027, // CreateImportStmt (2x) + 58233: 1028, // CreateIndexStmt (2x) + 58234: 1029, // CreatePolicyStmt (2x) + 58235: 1030, // CreateResourceGroupStmt (2x) + 58236: 1031, // CreateRoleStmt (2x) + 58238: 1032, // CreateSequenceStmt (2x) + 58239: 1033, // CreateStatisticsStmt (2x) + 58240: 1034, // CreateTableOptionListOpt (2x) + 58243: 1035, // CreateUserStmt (2x) + 58245: 1036, // CreateViewStmt (2x) + 57393: 1037, // databases (2x) + 58254: 1038, // DeallocateStmt (2x) + 58255: 1039, // DeallocateSym (2x) + 57404: 1040, // describe (2x) + 58267: 1041, // DoStmt (2x) + 58268: 1042, // DropBindingStmt (2x) + 58269: 1043, // DropDatabaseStmt (2x) + 58270: 1044, // DropImportStmt (2x) + 58271: 1045, // DropIndexStmt (2x) + 58272: 1046, // DropPolicyStmt (2x) + 58273: 1047, // DropRoleStmt (2x) + 58274: 1048, // DropSequenceStmt (2x) + 58275: 1049, // DropStatisticsStmt (2x) + 58276: 1050, // DropStatsStmt (2x) + 58277: 1051, // DropTableStmt (2x) + 58278: 1052, // DropUserStmt (2x) + 58279: 1053, // DropViewStmt (2x) + 58281: 1054, // DuplicateOpt (2x) + 58283: 1055, // EmptyStmt (2x) + 58284: 1056, // EncryptionOpt (2x) + 58286: 1057, // EnforcedOrNotOpt (2x) + 58290: 1058, // ErrorHandling (2x) + 58292: 1059, // ExecuteStmt (2x) + 58293: 1060, // ExplainFormatType (2x) + 58294: 1061, // ExplainStmt (2x) + 58295: 1062, // ExplainSym (2x) + 58304: 1063, // Field (2x) + 58307: 1064, // FieldItem (2x) + 58314: 1065, // Fields (2x) + 58319: 1066, // FlashbackDatabaseStmt (2x) + 58320: 1067, // FlashbackTableStmt (2x) + 58321: 1068, // FlashbackToNewName (2x) + 58322: 1069, // FlashbackToTimestampStmt (2x) + 58326: 1070, // FlushStmt (2x) + 58332: 1071, // FuncDatetimePrecList (2x) + 58333: 1072, // FuncDatetimePrecListOpt (2x) + 58346: 1073, // GrantProxyStmt (2x) + 58347: 1074, // GrantRoleStmt (2x) + 58348: 1075, // GrantStmt (2x) + 58350: 1076, // HandleRange (2x) + 58352: 1077, // HashString (2x) + 58353: 1078, // HavingClause (2x) + 58354: 1079, // HelpStmt (2x) + 58366: 1080, // IndexAdviseStmt (2x) + 58368: 1081, // IndexHintList (2x) + 58369: 1082, // IndexHintListOpt (2x) + 58374: 1083, // IndexLockAndAlgorithmOpt (2x) + 58387: 1084, // InsertValues (2x) + 58392: 1085, // IntoOpt (2x) + 58398: 1086, // KeyOrIndexOpt (2x) + 57457: 1087, // kill (2x) + 58399: 1088, // KillOrKillTiDB (2x) + 58400: 1089, // KillStmt (2x) + 58405: 1090, // LimitClause (2x) + 57466: 1091, // linear (2x) + 58407: 1092, // LinearOpt (2x) + 58411: 1093, // LoadDataSetItem (2x) + 58415: 1094, // LoadStatsStmt (2x) + 58416: 1095, // LocalOpt (2x) + 58417: 1096, // LocationLabelList (2x) + 58419: 1097, // LockStatsStmt (2x) + 58420: 1098, // LockTablesStmt (2x) + 58429: 1099, // MaxValueOrExpressionList (2x) + 58435: 1100, // NonTransactionalDMLStmt (2x) + 58441: 1101, // NowSymOptionFractionParentheses (2x) + 58443: 1102, // NumList (2x) + 58446: 1103, // ObjectType (2x) + 57488: 1104, // of (2x) + 58447: 1105, // OfTablesOpt (2x) + 58448: 1106, // OnCommitOpt (2x) + 58449: 1107, // OnDelete (2x) + 58452: 1108, // OnUpdate (2x) + 58457: 1109, // OptCollate (2x) + 58462: 1110, // OptFull (2x) + 58464: 1111, // OptInteger (2x) + 58477: 1112, // OptionalBraces (2x) + 58476: 1113, // OptionLevel (2x) + 58466: 1114, // OptLeadLagInfo (2x) + 58465: 1115, // OptLLDefault (2x) + 58483: 1116, // OuterOpt (2x) + 58488: 1117, // PartitionDefinitionList (2x) + 58489: 1118, // PartitionDefinitionListOpt (2x) + 58490: 1119, // PartitionIntervalOpt (2x) + 58496: 1120, // PartitionOpt (2x) + 58497: 1121, // PasswordOpt (2x) + 58499: 1122, // PasswordOrLockOptionList (2x) + 58500: 1123, // PasswordOrLockOptions (2x) + 58503: 1124, // PlacementOptionList (2x) + 58505: 1125, // PlanReplayerStmt (2x) + 58511: 1126, // PreparedStmt (2x) + 58516: 1127, // PrivLevel (2x) + 58519: 1128, // PurgeImportStmt (2x) + 58520: 1129, // QuickOptional (2x) + 58521: 1130, // RecoverTableStmt (2x) + 58523: 1131, // ReferOpt (2x) + 58525: 1132, // RegexpSym (2x) + 58527: 1133, // RenameTableStmt (2x) + 58528: 1134, // RenameUserStmt (2x) + 58530: 1135, // RepeatableOpt (2x) + 58536: 1136, // ResourceGroupName (2x) + 58537: 1137, // ResourceGroupOptionList (2x) + 58538: 1138, // RestartStmt (2x) + 58540: 1139, // ResumeImportStmt (2x) + 57515: 1140, // revoke (2x) + 58541: 1141, // RevokeRoleStmt (2x) + 58542: 1142, // RevokeStmt (2x) + 58545: 1143, // RoleOrPrivElemList (2x) + 58546: 1144, // RoleSpec (2x) + 58568: 1145, // SelectStmtOpt (2x) + 58571: 1146, // SelectStmtSQLCache (2x) + 58575: 1147, // SetBindingStmt (2x) + 58576: 1148, // SetDefaultRoleOpt (2x) + 58577: 1149, // SetDefaultRoleStmt (2x) + 58587: 1150, // SetRoleStmt (2x) + 58591: 1151, // ShowImportStmt (2x) + 58596: 1152, // ShowProfileType (2x) + 58599: 1153, // ShowStmt (2x) + 58600: 1154, // ShowTableAliasOpt (2x) + 58602: 1155, // ShutdownStmt (2x) + 58603: 1156, // SignedLiteral (2x) + 58607: 1157, // SplitOption (2x) + 58608: 1158, // SplitRegionStmt (2x) + 58612: 1159, // Statement (2x) + 58615: 1160, // StatsOptionsOpt (2x) + 58616: 1161, // StatsPersistentVal (2x) + 58617: 1162, // StatsType (2x) + 58618: 1163, // StopImportStmt (2x) + 58625: 1164, // SubPartDefinition (2x) + 58628: 1165, // SubPartitionMethod (2x) + 58633: 1166, // Symbol (2x) + 58639: 1167, // TableElementList (2x) + 58642: 1168, // TableLock (2x) + 58646: 1169, // TableNameListOpt (2x) + 58653: 1170, // TableOrTables (2x) + 58662: 1171, // TablesTerminalSym (2x) + 58660: 1172, // TableToTable (2x) + 58664: 1173, // TextStringList (2x) + 58669: 1174, // TraceStmt (2x) + 58674: 1175, // TruncateTableStmt (2x) + 58677: 1176, // UnlockStatsStmt (2x) + 58678: 1177, // UnlockTablesStmt (2x) + 58684: 1178, // UserToUser (2x) + 58681: 1179, // UseStmt (2x) + 58696: 1180, // Varchar (2x) + 58699: 1181, // VariableAssignmentList (2x) + 58708: 1182, // WhenClause (2x) + 58713: 1183, // WindowDefinition (2x) + 58716: 1184, // WindowFrameBound (2x) + 58723: 1185, // WindowSpec (2x) + 58728: 1186, // WithGrantOptionOpt (2x) + 58729: 1187, // WithList (2x) + 58733: 1188, // Writeable (2x) + 58128: 1189, // AdminShowSlow (1x) + 58130: 1190, // AdminStmtLimitOpt (1x) + 58138: 1191, // AlterOrderList (1x) + 58142: 1192, // AlterSequenceOptionList (1x) + 58145: 1193, // AlterTableSpecList (1x) + 58146: 1194, // AlterTableSpecListOpt (1x) + 58147: 1195, // AlterTableSpecSingleOpt (1x) + 58151: 1196, // AnalyzeOptionList (1x) + 58154: 1197, // AnyOrAll (1x) + 58156: 1198, // AsOfClauseOpt (1x) + 58157: 1199, // AsOpt (1x) + 58162: 1200, // AuthOption (1x) + 58163: 1201, // AuthPlugin (1x) + 58165: 1202, // AutoRandomOpt (1x) + 58175: 1203, // BetweenOrNotOp (1x) + 58177: 1204, // BindingStatusType (1x) + 58180: 1205, // BitValueType (1x) + 58181: 1206, // BlobType (1x) + 58184: 1207, // BooleanType (1x) + 57371: 1208, // both (1x) + 58195: 1209, // CharsetNameOrDefault (1x) + 58196: 1210, // CharsetOpt (1x) + 58201: 1211, // ColumnFormat (1x) + 58203: 1212, // ColumnList (1x) + 58210: 1213, // ColumnNameOrUserVariableList (1x) + 58207: 1214, // ColumnNameOrUserVarListOpt (1x) + 58208: 1215, // ColumnNameOrUserVarListOptWithBrackets (1x) + 58216: 1216, // ColumnSetValueList (1x) + 58221: 1217, // CompareOp (1x) + 58225: 1218, // ConnectionOptionList (1x) + 58228: 1219, // ConstraintElem (1x) + 58237: 1220, // CreateSequenceOptionListOpt (1x) + 58241: 1221, // CreateTableSelectOpt (1x) + 58244: 1222, // CreateViewSelectOpt (1x) + 58251: 1223, // DatabaseOptionListOpt (1x) + 58253: 1224, // DateAndTimeType (1x) + 58248: 1225, // DBNameList (1x) + 58259: 1226, // DefaultValueExpr (1x) + 58280: 1227, // DryRunOptions (1x) + 57410: 1228, // dual (1x) + 58282: 1229, // ElseOpt (1x) + 58287: 1230, // EnforcedOrNotOrNotNullOpt (1x) + 58301: 1231, // ExpressionOpt (1x) + 58303: 1232, // FetchFirstOpt (1x) + 58305: 1233, // FieldAsName (1x) + 58306: 1234, // FieldAsNameOpt (1x) + 58308: 1235, // FieldItemList (1x) + 58310: 1236, // FieldList (1x) + 58316: 1237, // FirstAndLastPartOpt (1x) + 58317: 1238, // FirstOrNext (1x) + 58318: 1239, // FixedPointType (1x) + 58324: 1240, // FloatingPointType (1x) + 58325: 1241, // FlushOption (1x) + 58328: 1242, // FromDual (1x) + 58330: 1243, // FulltextSearchModifierOpt (1x) + 58331: 1244, // FuncDatetimePrec (1x) + 58344: 1245, // GetFormatSelector (1x) + 58351: 1246, // HandleRangeList (1x) + 58356: 1247, // IdentListWithParenOpt (1x) + 58360: 1248, // IfNotRunning (1x) + 58361: 1249, // IfRunning (1x) + 58362: 1250, // IgnoreLines (1x) + 58364: 1251, // ImportTruncate (1x) + 58370: 1252, // IndexHintScope (1x) + 58373: 1253, // IndexKeyTypeOpt (1x) + 58382: 1254, // IndexPartSpecificationListOpt (1x) + 58385: 1255, // IndexTypeOpt (1x) + 58365: 1256, // InOrNotOp (1x) + 58388: 1257, // InstanceOption (1x) + 58390: 1258, // IntegerType (1x) + 58391: 1259, // IntervalExpr (1x) + 58394: 1260, // IsolationLevel (1x) + 58393: 1261, // IsOrNotOp (1x) + 57461: 1262, // leading (1x) + 58402: 1263, // LikeEscapeOpt (1x) + 58403: 1264, // LikeOrNotOp (1x) + 58404: 1265, // LikeTableWithOrWithoutParen (1x) + 58409: 1266, // LinesTerminated (1x) + 58412: 1267, // LoadDataSetList (1x) + 58413: 1268, // LoadDataSetSpecOpt (1x) + 58421: 1269, // LockType (1x) + 58422: 1270, // LogTypeOpt (1x) + 58423: 1271, // Match (1x) + 58424: 1272, // MatchOpt (1x) + 58425: 1273, // MaxIndexNumOpt (1x) + 58426: 1274, // MaxMinutesOpt (1x) + 58427: 1275, // MaxValPartOpt (1x) + 58430: 1276, // NChar (1x) + 58442: 1277, // NullPartOpt (1x) + 58445: 1278, // NumericType (1x) + 58432: 1279, // NVarchar (1x) + 58450: 1280, // OnDeleteUpdateOpt (1x) + 58451: 1281, // OnDuplicateKeyUpdate (1x) + 58453: 1282, // OptBinMod (1x) + 58455: 1283, // OptCharset (1x) + 58458: 1284, // OptErrors (1x) + 58459: 1285, // OptExistingWindowName (1x) + 58461: 1286, // OptFromFirstLast (1x) + 58463: 1287, // OptGConcatSeparator (1x) + 58478: 1288, // OptionalShardColumn (1x) + 58469: 1289, // OptPartitionClause (1x) + 58470: 1290, // OptTable (1x) + 58473: 1291, // OptWindowFrameClause (1x) + 58474: 1292, // OptWindowOrderByClause (1x) + 58480: 1293, // Order (1x) + 58479: 1294, // OrReplace (1x) + 57445: 1295, // outfile (1x) + 58486: 1296, // PartDefValuesOpt (1x) + 58491: 1297, // PartitionKeyAlgorithmOpt (1x) + 58492: 1298, // PartitionMethod (1x) + 58495: 1299, // PartitionNumOpt (1x) + 58501: 1300, // PerDB (1x) + 58502: 1301, // PerTable (1x) + 57499: 1302, // precisionType (1x) + 58510: 1303, // PrepareSQL (1x) + 58518: 1304, // ProcedureCall (1x) + 57506: 1305, // recursive (1x) + 58524: 1306, // RegexpOrNotOp (1x) + 58529: 1307, // ReorganizePartitionRuleOpt (1x) + 58534: 1308, // RequireList (1x) + 58547: 1309, // RoleSpecList (1x) + 58554: 1310, // RowOrRows (1x) + 58561: 1311, // SelectStmtFieldList (1x) + 58569: 1312, // SelectStmtOpts (1x) + 58570: 1313, // SelectStmtOptsList (1x) + 58574: 1314, // SequenceOptionList (1x) + 58579: 1315, // SetOpr (1x) + 58586: 1316, // SetRoleOpt (1x) + 58589: 1317, // ShardableStmt (1x) + 58592: 1318, // ShowIndexKwd (1x) + 58593: 1319, // ShowLikeOrWhereOpt (1x) + 58594: 1320, // ShowPlacementTarget (1x) + 58595: 1321, // ShowProfileArgsOpt (1x) + 58597: 1322, // ShowProfileTypes (1x) + 58598: 1323, // ShowProfileTypesOpt (1x) + 58601: 1324, // ShowTargetFilterable (1x) + 57526: 1325, // spatial (1x) + 58609: 1326, // SplitSyntaxOption (1x) + 57531: 1327, // ssl (1x) + 58610: 1328, // Start (1x) + 58611: 1329, // Starting (1x) + 57532: 1330, // starting (1x) + 58613: 1331, // StatementList (1x) + 58614: 1332, // StatementScope (1x) + 58619: 1333, // StorageMedia (1x) + 57538: 1334, // stored (1x) + 58620: 1335, // StringList (1x) + 58623: 1336, // StringNameOrBRIEOptionKeyword (1x) + 58624: 1337, // StringType (1x) + 58626: 1338, // SubPartDefinitionList (1x) + 58627: 1339, // SubPartDefinitionListOpt (1x) + 58629: 1340, // SubPartitionNumOpt (1x) + 58630: 1341, // SubPartitionOpt (1x) + 58640: 1342, // TableElementListOpt (1x) + 58643: 1343, // TableLockList (1x) + 58656: 1344, // TableRefsClause (1x) + 58657: 1345, // TableSampleMethodOpt (1x) + 58658: 1346, // TableSampleOpt (1x) + 58659: 1347, // TableSampleUnitOpt (1x) + 58661: 1348, // TableToTableList (1x) + 58665: 1349, // TextType (1x) + 57545: 1350, // trailing (1x) + 58673: 1351, // TrimDirection (1x) + 58675: 1352, // Type (1x) + 58685: 1353, // UserToUserList (1x) + 58687: 1354, // UserVariableList (1x) + 58690: 1355, // UsingRoles (1x) + 58692: 1356, // Values (1x) + 58694: 1357, // ValuesOpt (1x) + 58701: 1358, // ViewAlgorithm (1x) + 58702: 1359, // ViewCheckOption (1x) + 58703: 1360, // ViewDefiner (1x) + 58704: 1361, // ViewFieldList (1x) + 58705: 1362, // ViewName (1x) + 58706: 1363, // ViewSQLSecurity (1x) + 57565: 1364, // virtual (1x) + 58707: 1365, // VirtualOrStored (1x) + 58709: 1366, // WhenClauseList (1x) + 58712: 1367, // WindowClauseOptional (1x) + 58714: 1368, // WindowDefinitionList (1x) + 58715: 1369, // WindowFrameBetween (1x) + 58717: 1370, // WindowFrameExtent (1x) + 58719: 1371, // WindowFrameUnits (1x) + 58722: 1372, // WindowNameOrSpec (1x) + 58724: 1373, // WindowSpecDetails (1x) + 58730: 1374, // WithReadLockOpt (1x) + 58731: 1375, // WithValidation (1x) + 58732: 1376, // WithValidationOpt (1x) + 58734: 1377, // Year (1x) + 58127: 1378, // $default (0x) + 58088: 1379, // andnot (0x) + 58160: 1380, // AssignmentListOpt (0x) + 58200: 1381, // ColumnDefList (0x) + 58217: 1382, // CommaOpt (0x) + 58111: 1383, // createTableSelect (0x) + 58102: 1384, // empty (0x) + 57345: 1385, // error (0x) + 58126: 1386, // higherThanComma (0x) + 58120: 1387, // higherThanParenthese (0x) + 58109: 1388, // insertValues (0x) + 57353: 1389, // invalid (0x) + 58112: 1390, // lowerThanCharsetKwd (0x) + 58125: 1391, // lowerThanComma (0x) + 58110: 1392, // lowerThanCreateTableSelect (0x) + 58122: 1393, // lowerThanEq (0x) + 58117: 1394, // lowerThanFunction (0x) + 58108: 1395, // lowerThanInsertValues (0x) + 58113: 1396, // lowerThanKey (0x) + 58114: 1397, // lowerThanLocal (0x) + 58124: 1398, // lowerThanNot (0x) + 58121: 1399, // lowerThanOn (0x) + 58119: 1400, // lowerThanParenthese (0x) + 58115: 1401, // lowerThanRemove (0x) + 58103: 1402, // lowerThanSelectOpt (0x) + 58107: 1403, // lowerThanSelectStmt (0x) + 58106: 1404, // lowerThanSetKeyword (0x) + 58105: 1405, // lowerThanStringLitToken (0x) + 58104: 1406, // lowerThanValueKeyword (0x) + 58116: 1407, // lowerThenOrder (0x) + 58123: 1408, // neg (0x) + 57357: 1409, // odbcDateType (0x) + 57359: 1410, // odbcTimestampType (0x) + 57358: 1411, // odbcTimeType (0x) + 58118: 1412, // tableRefPriority (0x) } yySymNames = []string{ @@ -2270,6 +2293,7 @@ var ( "autoRandomBase", "statsBuckets", "statsTopN", + "ttl", "autoIdCache", "avgRowLength", "compression", @@ -2286,9 +2310,9 @@ var ( "statsSamplePages", "statsSampleRate", "tableChecksum", + "ttlEnable", "attribute", "account", - "')'", "resume", "signed", "snapshot", @@ -2310,6 +2334,7 @@ var ( "skipSchemaFiles", "strictFormat", "tikvImporter", + "')'", "truncate", "no", "start", @@ -2343,14 +2368,13 @@ var ( "voters", "columns", "view", - "yearType", "day", - "ascii", - "byteType", + "yearType", "second", "sqlTsiYear", - "unicodeSym", - "fields", + "ascii", + "byteType", + "cpu", "hour", "microsecond", "minute", @@ -2363,8 +2387,14 @@ var ( "sqlTsiQuarter", "sqlTsiSecond", "sqlTsiWeek", + "unicodeSym", "week", + "fields", + "ioReadBandwidth", + "ioWriteBandwidth", + "rruRate", "tables", + "wruRate", "status", "separator", "cipher", @@ -2430,6 +2460,7 @@ var ( "off", "optional", "per_db", + "plan", "privileges", "replica", "required", @@ -2452,15 +2483,15 @@ var ( "errorKwd", "flush", "full", + "history", "mb", "mode", - "never", - "plan", "plugins", "processlist", "recover", "repair", "repeatable", + "resource", "statistics", "subpartitions", "tidb", @@ -2474,6 +2505,7 @@ var ( "booleanType", "briefType", "buckets", + "capture", "cardinality", "chain", "clientErrorsSummary", @@ -2483,9 +2515,9 @@ var ( "context", "copyKwd", "correlation", - "cpu", "deallocate", "dependency", + "digest", "directory", "discard", "disk", @@ -2533,6 +2565,7 @@ var ( "statsOptions", "stop", "swaps", + "tidbJson", "tokudbDefault", "tokudbFast", "tokudbLzma", @@ -2560,7 +2593,6 @@ var ( "boolType", "builtins", "cancel", - "capture", "cascaded", "causal", "cleanup", @@ -2588,7 +2620,6 @@ var ( "function", "grants", "histogramsInFlight", - "history", "imports", "incremental", "indexes", @@ -2602,6 +2633,7 @@ var ( "max_minutes", "national", "ncharType", + "never", "nextval", "none", "nvarcharType", @@ -2623,6 +2655,7 @@ var ( "replayer", "reset", "restores", + "reuse", "run", "security", "serializable", @@ -2715,17 +2748,17 @@ var ( "weightString", "on", "'('", - "with", "stringLit", + "with", "not2", + "defaultKwd", "not", "as", - "defaultKwd", + "collate", "union", "using", "left", "right", - "collate", "'+'", "'-'", "mod", @@ -2736,17 +2769,17 @@ var ( "null", "limit", "forKwd", + "charType", "values", "into", "lock", - "where", "eq", + "where", "from", "fetch", "order", - "force", "replace", - "charType", + "force", "set", "and", "intLit", @@ -2772,7 +2805,6 @@ var ( "groups", "desc", "binaryType", - "asc", "dayHour", "dayMicrosecond", "dayMinute", @@ -2784,6 +2816,7 @@ var ( "minuteSecond", "secondMicrosecond", "yearMonth", + "asc", "when", "in", "elseKwd", @@ -2809,8 +2842,8 @@ var ( "regexpKwd", "rlike", "insert", - "singleAtIdentifier", "tableKwd", + "singleAtIdentifier", "currentUser", "falseKwd", "trueKwd", @@ -2819,9 +2852,9 @@ var ( "row", "hexLit", "paramMarker", + "bitLit", "interval", "'{'", - "bitLit", "key", "database", "exists", @@ -2831,9 +2864,9 @@ var ( "doubleAtIdentifier", "localTime", "localTs", + "underscoreCS", "check", "primary", - "underscoreCS", "builtinCount", "pipes", "'!'", @@ -2886,11 +2919,11 @@ var ( "unique", "constraint", "references", - "generated", "selectKwd", + "generated", "character", - "match", "index", + "match", "to", "all", "'.'", @@ -2902,12 +2935,12 @@ var ( "lines", "assignmentEq", "by", + "alter", + "require", "Identifier", "NotKeywordToken", "TiDBKeyword", "UnReservedKeyword", - "alter", - "require", "'@'", "sql", "drop", @@ -2978,8 +3011,8 @@ var ( "NUM", "logAnd", "logOr", - "TableName", "EqOpt", + "TableName", "StringName", "deleteKwd", "unsigned", @@ -3016,29 +3049,29 @@ var ( "sqlCalcFoundRows", "sqlSmallResult", "InsertIntoStmt", + "ReplaceIntoStmt", "UpdateStmt", "CharsetKw", - "ReplaceIntoStmt", "Username", + "IfExists", "ExpressionList", "DeleteWithUsingStmt", - "IfExists", "PlacementPolicyOption", "TableNameList", + "IfNotExists", "terminated", "DeleteFromStmt", "DistinctKwd", - "IfNotExists", "PartitionNameList", "DistinctOpt", "enclosed", "OptFieldLen", + "TimestampUnit", "WhereClause", "WhereClauseOptional", "DefaultKwdOpt", "escaped", "optionally", - "TimestampUnit", "ExprOrDefault", "JoinTable", "OptBinary", @@ -3048,6 +3081,7 @@ var ( "TableRef", "AnalyzeOptionListOpt", "FromOrIn", + "TimeUnit", "AlterTableStmt", "CharsetName", "ColumnNameList", @@ -3058,7 +3092,6 @@ var ( "OrderByOptional", "PartDefOption", "SignedNum", - "TimeUnit", "BuggyDefaultFalseDistinctOpt", "DefaultFalseDistinctOpt", "JoinType", @@ -3103,6 +3136,7 @@ var ( "IndexType", "LoadDataStmt", "PartitionNameListOpt", + "PolicyName", "ReleaseSavepointStmt", "RolenameList", "RollbackStmt", @@ -3117,6 +3151,7 @@ var ( "CollationName", "ColumnKeywordOpt", "DirectPlacementOption", + "DirectResourceGroupOption", "FieldOpt", "FieldOpts", "IdentList", @@ -3128,7 +3163,6 @@ var ( "LockClause", "OptCharsetWithOptBinary", "OptNullTreatment", - "PolicyName", "PriorityOpt", "SelectLockOpt", "SelectStmtIntoOption", @@ -3196,7 +3230,6 @@ var ( "OptTemporary", "PartDefOptionList", "PartitionDefinition", - "PasswordExpire", "PasswordOrLockOption", "PluginNameList", "PrimaryOpt", @@ -3230,6 +3263,7 @@ var ( "AlterInstanceStmt", "AlterOrderItem", "AlterPolicyStmt", + "AlterResourceGroupStmt", "AlterSequenceOption", "AlterSequenceStmt", "AlterTableSpec", @@ -3257,6 +3291,7 @@ var ( "CreateImportStmt", "CreateIndexStmt", "CreatePolicyStmt", + "CreateResourceGroupStmt", "CreateRoleStmt", "CreateSequenceStmt", "CreateStatisticsStmt", @@ -3362,6 +3397,8 @@ var ( "RenameTableStmt", "RenameUserStmt", "RepeatableOpt", + "ResourceGroupName", + "ResourceGroupOptionList", "RestartStmt", "ResumeImportStmt", "revoke", @@ -3417,9 +3454,9 @@ var ( "AdminStmtLimitOpt", "AlterOrderList", "AlterSequenceOptionList", - "AlterTablePartitionOpt", "AlterTableSpecList", "AlterTableSpecListOpt", + "AlterTableSpecSingleOpt", "AnalyzeOptionList", "AnyOrAll", "AsOfClauseOpt", @@ -3435,7 +3472,6 @@ var ( "both", "CharsetNameOrDefault", "CharsetOpt", - "ClearPasswordExpireOptions", "ColumnFormat", "ColumnList", "ColumnNameOrUserVariableList", @@ -3642,1439 +3678,1460 @@ var ( yyReductions = []struct{ xsym, components int }{ {0, 1}, - {1315, 1}, - {810, 6}, - {810, 8}, - {810, 10}, - {810, 5}, - {810, 7}, - {810, 7}, - {810, 9}, - {1112, 1}, - {1112, 2}, - {1112, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {878, 3}, - {785, 4}, - {785, 4}, - {785, 4}, - {785, 4}, - {931, 3}, - {931, 3}, - {1146, 3}, - {1146, 3}, - {1179, 1}, - {1179, 2}, - {1179, 4}, - {1179, 8}, - {1179, 8}, - {1179, 3}, - {1179, 3}, - {1084, 0}, - {1084, 3}, - {994, 1}, - {994, 5}, - {994, 5}, - {994, 5}, - {994, 5}, - {994, 6}, - {994, 2}, - {994, 5}, - {994, 6}, - {994, 8}, - {994, 8}, - {994, 1}, - {994, 1}, - {994, 3}, - {994, 4}, - {994, 5}, - {994, 3}, - {994, 4}, - {994, 8}, - {994, 4}, - {994, 7}, - {994, 3}, - {994, 4}, - {994, 4}, - {994, 4}, - {994, 4}, - {994, 2}, - {994, 2}, - {994, 4}, - {994, 4}, - {994, 5}, - {994, 3}, - {994, 2}, - {994, 2}, - {994, 5}, - {994, 6}, - {994, 6}, - {994, 8}, - {994, 5}, - {994, 5}, - {994, 3}, - {994, 3}, - {994, 3}, - {994, 5}, - {994, 1}, - {994, 1}, - {994, 1}, - {994, 1}, - {994, 2}, - {994, 2}, - {994, 1}, - {994, 1}, - {994, 4}, - {994, 3}, - {994, 4}, - {994, 1}, - {994, 1}, - {1294, 0}, - {1294, 5}, - {836, 1}, - {836, 1}, - {1363, 0}, - {1363, 1}, - {1362, 2}, - {1362, 2}, - {873, 1}, - {873, 1}, - {874, 3}, - {874, 3}, - {874, 3}, - {874, 3}, - {874, 3}, - {887, 3}, - {887, 3}, - {1174, 2}, - {1174, 2}, - {832, 1}, - {832, 1}, - {1074, 0}, - {1074, 1}, - {877, 0}, - {877, 1}, - {934, 0}, - {934, 1}, - {934, 2}, - {1181, 0}, - {1181, 1}, - {1180, 1}, - {1180, 3}, - {791, 1}, - {791, 3}, - {837, 0}, - {837, 1}, - {837, 2}, - {1152, 1}, - {1121, 3}, - {1335, 1}, - {1335, 3}, - {1158, 3}, - {1122, 3}, - {1340, 1}, - {1340, 3}, - {1164, 3}, - {1118, 5}, - {1118, 3}, - {1118, 4}, - {1057, 4}, - {1057, 5}, - {1057, 5}, - {1055, 4}, - {1056, 0}, - {1056, 2}, - {1054, 4}, - {1144, 6}, - {1144, 8}, - {1143, 6}, - {1143, 2}, - {1313, 0}, - {1313, 2}, - {1313, 1}, - {1313, 3}, - {849, 5}, - {849, 6}, - {849, 7}, - {849, 7}, - {849, 8}, - {849, 9}, - {849, 8}, - {849, 7}, - {849, 6}, - {849, 8}, - {986, 0}, - {986, 2}, - {986, 2}, - {808, 0}, - {808, 2}, - {1182, 1}, - {1182, 3}, - {996, 2}, - {996, 2}, - {996, 3}, - {996, 3}, + {1328, 1}, + {821, 6}, + {821, 8}, + {821, 10}, + {821, 5}, + {821, 7}, + {821, 7}, + {821, 9}, + {1137, 1}, + {1137, 2}, + {1137, 3}, + {890, 3}, + {890, 3}, + {890, 3}, + {890, 3}, + {890, 3}, + {1124, 1}, + {1124, 2}, + {1124, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {889, 3}, + {795, 4}, + {795, 4}, + {795, 4}, + {795, 4}, + {942, 3}, + {942, 3}, + {1160, 3}, + {1160, 3}, + {1195, 1}, + {1195, 2}, + {1195, 4}, + {1195, 8}, + {1195, 8}, + {1195, 3}, + {1195, 3}, + {1195, 2}, + {1096, 0}, + {1096, 3}, + {1005, 1}, + {1005, 5}, + {1005, 5}, + {1005, 5}, + {1005, 5}, + {1005, 6}, + {1005, 2}, + {1005, 5}, + {1005, 6}, + {1005, 8}, + {1005, 8}, + {1005, 1}, + {1005, 1}, + {1005, 3}, + {1005, 4}, + {1005, 5}, + {1005, 3}, + {1005, 4}, + {1005, 8}, + {1005, 4}, + {1005, 7}, + {1005, 3}, + {1005, 4}, + {1005, 4}, + {1005, 4}, + {1005, 4}, + {1005, 2}, + {1005, 2}, + {1005, 4}, + {1005, 4}, + {1005, 5}, + {1005, 3}, + {1005, 2}, + {1005, 2}, + {1005, 5}, + {1005, 6}, + {1005, 6}, + {1005, 8}, + {1005, 5}, + {1005, 5}, + {1005, 3}, + {1005, 3}, + {1005, 3}, + {1005, 5}, + {1005, 1}, + {1005, 1}, + {1005, 1}, + {1005, 1}, + {1005, 2}, + {1005, 2}, + {1005, 1}, + {1005, 1}, + {1005, 4}, + {1005, 3}, + {1005, 4}, + {1005, 1}, + {1005, 1}, + {1307, 0}, + {1307, 5}, + {846, 1}, + {846, 1}, + {1376, 0}, + {1376, 1}, + {1375, 2}, + {1375, 2}, + {884, 1}, + {884, 1}, + {885, 3}, + {885, 3}, + {885, 3}, + {885, 3}, + {885, 3}, + {899, 3}, + {899, 3}, + {1188, 2}, + {1188, 2}, + {842, 1}, + {842, 1}, + {1086, 0}, + {1086, 1}, + {888, 0}, + {888, 1}, + {945, 0}, + {945, 1}, + {945, 2}, + {1194, 0}, + {1194, 1}, + {1193, 1}, + {1193, 3}, + {801, 1}, + {801, 3}, + {847, 0}, + {847, 1}, + {847, 2}, + {1166, 1}, + {1133, 3}, + {1348, 1}, + {1348, 3}, + {1172, 3}, + {1134, 3}, + {1353, 1}, + {1353, 3}, + {1178, 3}, + {1130, 5}, + {1130, 3}, + {1130, 4}, + {1069, 4}, + {1069, 5}, + {1069, 5}, + {1067, 4}, + {1068, 0}, + {1068, 2}, + {1066, 4}, + {1158, 6}, + {1158, 8}, + {1157, 6}, + {1157, 2}, + {1326, 0}, + {1326, 2}, + {1326, 1}, + {1326, 3}, + {859, 5}, + {859, 6}, + {859, 7}, + {859, 7}, + {859, 8}, + {859, 9}, + {859, 8}, + {859, 7}, + {859, 6}, + {859, 8}, + {996, 0}, {996, 2}, {996, 2}, - {896, 3}, - {930, 1}, - {930, 3}, - {1367, 0}, - {1367, 1}, - {850, 1}, - {850, 2}, - {850, 2}, - {850, 2}, - {850, 4}, - {850, 5}, - {850, 6}, - {850, 4}, - {850, 5}, - {997, 2}, - {1368, 1}, - {1368, 3}, - {853, 3}, - {853, 3}, - {748, 1}, - {748, 3}, - {748, 5}, - {812, 1}, - {812, 3}, - {1005, 0}, - {1005, 1}, - {1234, 0}, - {1234, 3}, - {881, 1}, - {881, 3}, - {1201, 0}, - {1201, 1}, - {1200, 1}, - {1200, 3}, - {1006, 1}, - {1006, 1}, - {1202, 0}, - {1202, 3}, - {854, 1}, - {854, 2}, - {961, 0}, - {961, 1}, - {815, 1}, - {815, 1}, - {939, 1}, - {939, 2}, - {1045, 0}, - {1045, 1}, - {1217, 2}, - {1217, 1}, - {933, 2}, - {933, 1}, - {933, 1}, - {933, 2}, - {933, 3}, - {933, 1}, - {933, 2}, - {933, 2}, - {933, 3}, - {933, 3}, - {933, 2}, - {933, 6}, - {933, 6}, - {933, 1}, - {933, 2}, - {933, 2}, - {933, 2}, - {933, 2}, - {1188, 0}, - {1188, 3}, - {1188, 5}, - {1320, 1}, - {1320, 1}, - {1320, 1}, - {1198, 1}, - {1198, 1}, - {1198, 1}, - {942, 0}, - {942, 2}, - {1352, 0}, - {1352, 1}, - {1352, 1}, - {1007, 1}, + {818, 0}, + {818, 2}, + {1196, 1}, + {1196, 3}, {1007, 2}, - {1008, 0}, - {1008, 1}, - {1206, 7}, - {1206, 7}, - {1206, 7}, - {1206, 7}, - {1206, 8}, - {1206, 5}, - {1258, 2}, - {1258, 2}, - {1258, 2}, - {1259, 0}, - {1259, 1}, - {915, 5}, - {1095, 3}, - {1096, 3}, - {1267, 0}, - {1267, 1}, - {1267, 1}, - {1267, 2}, - {1267, 2}, - {1119, 1}, - {1119, 1}, - {1119, 2}, - {1119, 2}, - {1119, 2}, - {1213, 1}, - {1213, 1}, - {1213, 1}, + {1007, 2}, + {1007, 3}, + {1007, 3}, + {1007, 2}, + {1007, 2}, + {907, 3}, + {941, 1}, + {941, 3}, + {1380, 0}, + {1380, 1}, + {860, 1}, + {860, 2}, + {860, 2}, + {860, 2}, + {860, 4}, + {860, 5}, + {860, 6}, + {860, 4}, + {860, 5}, + {1008, 2}, + {1381, 1}, + {1381, 3}, + {863, 3}, + {863, 3}, + {758, 1}, + {758, 3}, + {758, 5}, + {823, 1}, + {823, 3}, + {1016, 0}, + {1016, 1}, + {1247, 0}, + {1247, 3}, + {893, 1}, + {893, 3}, + {1214, 0}, + {1214, 1}, {1213, 1}, - {904, 3}, - {904, 3}, - {904, 4}, - {1089, 3}, - {1089, 1}, - {953, 1}, - {953, 3}, - {953, 4}, - {718, 4}, - {718, 4}, - {952, 1}, - {952, 1}, - {952, 1}, - {952, 1}, - {951, 1}, - {951, 1}, - {951, 1}, - {1142, 1}, - {1142, 2}, - {1142, 2}, - {824, 1}, - {824, 1}, - {824, 1}, - {1148, 1}, - {1148, 1}, - {1148, 1}, - {1190, 1}, - {1190, 1}, - {1021, 12}, - {1037, 3}, - {1017, 13}, - {1241, 0}, - {1241, 3}, - {841, 1}, + {1213, 3}, + {1017, 1}, + {1017, 1}, + {1215, 0}, + {1215, 3}, + {864, 1}, + {864, 2}, + {971, 0}, + {971, 1}, + {826, 1}, + {826, 1}, + {950, 1}, + {950, 2}, + {1057, 0}, + {1057, 1}, + {1230, 2}, + {1230, 1}, + {944, 2}, + {944, 1}, + {944, 1}, + {944, 2}, + {944, 3}, + {944, 1}, + {944, 2}, + {944, 2}, + {944, 3}, + {944, 3}, + {944, 2}, + {944, 6}, + {944, 6}, + {944, 1}, + {944, 2}, + {944, 2}, + {944, 2}, + {944, 2}, + {1202, 0}, + {1202, 3}, + {1202, 5}, + {1333, 1}, + {1333, 1}, + {1333, 1}, + {1211, 1}, + {1211, 1}, + {1211, 1}, + {953, 0}, + {953, 2}, + {1365, 0}, + {1365, 1}, + {1365, 1}, + {1018, 1}, + {1018, 2}, + {1019, 0}, + {1019, 1}, + {1219, 7}, + {1219, 7}, + {1219, 7}, + {1219, 7}, + {1219, 8}, + {1219, 5}, + {1271, 2}, + {1271, 2}, + {1271, 2}, + {1272, 0}, + {1272, 1}, + {926, 5}, + {1107, 3}, + {1108, 3}, + {1280, 0}, + {1280, 1}, + {1280, 1}, + {1280, 2}, + {1280, 2}, + {1131, 1}, + {1131, 1}, + {1131, 2}, + {1131, 2}, + {1131, 2}, + {1226, 1}, + {1226, 1}, + {1226, 1}, + {1226, 1}, + {915, 3}, + {915, 3}, + {915, 4}, + {1101, 3}, + {1101, 1}, + {964, 1}, + {964, 3}, + {964, 4}, + {728, 4}, + {728, 4}, + {963, 1}, + {963, 1}, + {963, 1}, + {963, 1}, + {962, 1}, + {962, 1}, + {962, 1}, + {1156, 1}, + {1156, 2}, + {1156, 2}, + {834, 1}, + {834, 1}, + {834, 1}, + {1162, 1}, + {1162, 1}, + {1162, 1}, + {1204, 1}, + {1204, 1}, + {1033, 12}, + {1049, 3}, + {1028, 13}, + {1254, 0}, + {1254, 3}, + {851, 1}, + {851, 3}, {841, 3}, - {831, 3}, - {831, 4}, - {1071, 0}, - {1071, 1}, - {1071, 1}, - {1071, 2}, - {1071, 2}, - {1240, 0}, - {1240, 1}, - {1240, 1}, - {1240, 1}, - {987, 4}, - {987, 3}, - {1015, 5}, - {813, 1}, - {890, 1}, - {855, 4}, - {855, 4}, - {855, 4}, - {855, 2}, - {855, 1}, - {855, 5}, - {1210, 0}, - {1210, 1}, - {937, 1}, - {937, 2}, - {936, 12}, - {936, 7}, - {1094, 0}, - {1094, 4}, - {1094, 4}, - {797, 0}, - {797, 1}, - {1108, 0}, - {1108, 6}, - {1151, 6}, - {1151, 5}, - {1284, 0}, - {1284, 3}, - {1285, 1}, - {1285, 5}, - {1285, 6}, - {1285, 4}, - {1285, 5}, - {1285, 4}, - {1285, 3}, - {1285, 1}, - {1107, 0}, - {1107, 7}, - {1246, 1}, - {1246, 2}, - {1264, 0}, - {1264, 2}, - {1262, 0}, - {1262, 2}, - {1224, 0}, - {1224, 14}, - {1080, 0}, - {1080, 1}, - {1328, 0}, - {1328, 4}, - {1327, 0}, - {1327, 2}, - {1286, 0}, - {1286, 2}, + {841, 4}, + {1083, 0}, + {1083, 1}, + {1083, 1}, + {1083, 2}, + {1083, 2}, + {1253, 0}, + {1253, 1}, + {1253, 1}, + {1253, 1}, + {997, 4}, + {997, 3}, + {1026, 5}, + {824, 1}, + {875, 1}, + {1136, 1}, + {865, 4}, + {865, 4}, + {865, 4}, + {865, 2}, + {865, 1}, + {865, 5}, + {1223, 0}, + {1223, 1}, + {948, 1}, + {948, 2}, + {947, 12}, + {947, 7}, {1106, 0}, - {1106, 3}, - {1105, 1}, - {1105, 3}, - {957, 5}, - {1326, 0}, - {1326, 3}, - {1325, 1}, - {1325, 3}, - {1150, 3}, - {956, 0}, - {956, 2}, - {818, 3}, - {818, 3}, - {818, 4}, - {818, 3}, - {818, 4}, - {818, 4}, - {818, 3}, - {818, 3}, - {818, 3}, - {818, 3}, - {818, 1}, - {1283, 0}, - {1283, 4}, - {1283, 6}, - {1283, 1}, - {1283, 5}, - {1283, 1}, - {1283, 1}, - {1042, 0}, - {1042, 1}, - {1042, 1}, - {1185, 0}, - {1185, 1}, - {1208, 0}, - {1208, 1}, - {1208, 1}, - {1208, 1}, - {1208, 1}, - {1209, 1}, - {1209, 1}, - {1209, 1}, - {1209, 1}, - {1252, 2}, - {1252, 4}, - {1024, 11}, - {1281, 0}, - {1281, 2}, - {1345, 0}, - {1345, 3}, - {1345, 3}, - {1345, 3}, - {1347, 0}, - {1347, 3}, - {1350, 0}, - {1350, 3}, - {1350, 3}, - {1349, 1}, - {1348, 0}, - {1348, 3}, + {1106, 4}, + {1106, 4}, + {808, 0}, + {808, 1}, + {1120, 0}, + {1120, 6}, + {1165, 6}, + {1165, 5}, + {1297, 0}, + {1297, 3}, + {1298, 1}, + {1298, 5}, + {1298, 6}, + {1298, 4}, + {1298, 5}, + {1298, 4}, + {1298, 3}, + {1298, 1}, + {1119, 0}, + {1119, 7}, + {1259, 1}, + {1259, 2}, + {1277, 0}, + {1277, 2}, + {1275, 0}, + {1275, 2}, + {1237, 0}, + {1237, 14}, + {1092, 0}, + {1092, 1}, + {1341, 0}, + {1341, 4}, + {1340, 0}, + {1340, 2}, + {1299, 0}, + {1299, 2}, + {1118, 0}, + {1118, 3}, + {1117, 1}, + {1117, 3}, + {968, 5}, + {1339, 0}, + {1339, 3}, + {1338, 1}, + {1338, 3}, + {1164, 3}, + {967, 0}, + {967, 2}, + {829, 3}, + {829, 3}, + {829, 4}, + {829, 3}, + {829, 4}, + {829, 4}, + {829, 3}, + {829, 3}, + {829, 3}, + {829, 3}, + {829, 1}, + {1296, 0}, + {1296, 4}, + {1296, 6}, + {1296, 1}, + {1296, 5}, + {1296, 1}, + {1296, 1}, + {1054, 0}, + {1054, 1}, + {1054, 1}, + {1199, 0}, {1199, 1}, - {1199, 3}, - {1346, 0}, - {1346, 4}, - {1346, 4}, - {1029, 2}, - {771, 13}, - {771, 9}, - {783, 10}, - {788, 1}, - {788, 1}, - {788, 2}, - {788, 2}, - {838, 1}, - {1031, 4}, - {1033, 7}, - {1039, 6}, - {955, 0}, - {955, 1}, - {955, 2}, - {1041, 4}, - {1041, 6}, - {1040, 3}, - {1040, 5}, - {1035, 3}, - {1035, 5}, - {1038, 3}, - {1038, 5}, - {1038, 4}, - {916, 0}, - {916, 1}, - {916, 1}, - {1156, 1}, - {1156, 1}, - {741, 0}, - {741, 1}, - {1043, 0}, - {1160, 2}, - {1160, 5}, - {1160, 3}, - {1160, 6}, - {1050, 1}, - {1050, 1}, - {1050, 1}, - {1049, 2}, - {1049, 3}, - {1049, 2}, - {1049, 4}, - {1049, 7}, - {1049, 5}, - {1049, 7}, - {1049, 5}, - {1049, 3}, - {1049, 6}, - {1049, 6}, - {1048, 1}, - {1048, 1}, - {1048, 1}, - {1048, 1}, - {1048, 1}, - {1048, 1}, - {1048, 1}, - {868, 2}, - {865, 3}, - {998, 5}, - {998, 5}, - {999, 2}, - {999, 2}, - {999, 2}, + {1221, 0}, + {1221, 1}, + {1221, 1}, + {1221, 1}, + {1221, 1}, + {1222, 1}, + {1222, 1}, + {1222, 1}, + {1222, 1}, + {1265, 2}, + {1265, 4}, + {1036, 11}, + {1294, 0}, + {1294, 2}, + {1358, 0}, + {1358, 3}, + {1358, 3}, + {1358, 3}, + {1360, 0}, + {1360, 3}, + {1363, 0}, + {1363, 3}, + {1363, 3}, + {1362, 1}, + {1361, 0}, + {1361, 3}, {1212, 1}, {1212, 3}, - {902, 0}, - {902, 2}, - {899, 1}, - {899, 1}, - {898, 1}, - {898, 1}, - {898, 1}, - {898, 1}, - {898, 1}, - {898, 1}, - {898, 1}, - {898, 1}, - {903, 1}, - {903, 1}, - {903, 1}, - {903, 1}, - {900, 1}, - {900, 1}, - {900, 2}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 5}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 6}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 3}, - {901, 3}, - {745, 1}, - {767, 1}, - {737, 1}, - {932, 1}, - {932, 1}, - {932, 1}, - {1101, 1}, - {1101, 1}, - {1101, 1}, - {1116, 3}, - {1016, 8}, - {1149, 4}, - {1125, 4}, - {988, 6}, - {1032, 4}, - {1137, 5}, - {1236, 0}, - {1236, 2}, - {1235, 0}, - {1235, 3}, - {1271, 0}, - {1271, 1}, - {1046, 0}, - {1046, 1}, - {1046, 2}, - {1046, 2}, - {1046, 2}, - {1046, 2}, - {1238, 0}, - {1238, 3}, - {1238, 3}, - {736, 3}, - {736, 3}, - {736, 3}, - {736, 3}, - {736, 2}, - {736, 9}, - {736, 3}, - {736, 3}, - {736, 3}, - {736, 1}, - {950, 1}, - {950, 1}, - {1230, 0}, - {1230, 4}, - {1230, 7}, - {1230, 3}, - {1230, 3}, - {739, 1}, - {739, 1}, - {738, 1}, - {738, 1}, - {782, 1}, - {782, 3}, - {1087, 1}, - {1087, 3}, - {830, 0}, - {830, 1}, - {1060, 0}, + {1359, 0}, + {1359, 4}, + {1359, 4}, + {1041, 2}, + {781, 13}, + {781, 9}, + {794, 10}, + {799, 1}, + {799, 1}, + {799, 2}, + {799, 2}, + {848, 1}, + {1043, 4}, + {1045, 7}, + {1051, 6}, + {966, 0}, + {966, 1}, + {966, 2}, + {1053, 4}, + {1053, 6}, + {1052, 3}, + {1052, 5}, + {1047, 3}, + {1047, 5}, + {1050, 3}, + {1050, 5}, + {1050, 4}, + {927, 0}, + {927, 1}, + {927, 1}, + {1170, 1}, + {1170, 1}, + {750, 0}, + {750, 1}, + {1055, 0}, + {1174, 2}, + {1174, 5}, + {1174, 3}, + {1174, 6}, + {1062, 1}, + {1062, 1}, + {1062, 1}, + {1061, 2}, + {1061, 3}, + {1061, 2}, + {1061, 4}, + {1061, 7}, + {1061, 5}, + {1061, 7}, + {1061, 5}, + {1061, 3}, + {1061, 6}, + {1061, 6}, {1060, 1}, - {1059, 1}, - {735, 3}, - {735, 3}, - {735, 4}, - {735, 5}, - {735, 1}, - {1204, 1}, - {1204, 1}, - {1204, 1}, - {1204, 1}, - {1204, 1}, - {1204, 1}, - {1204, 1}, - {1204, 1}, - {1189, 1}, - {1189, 2}, - {1248, 1}, - {1248, 2}, - {1243, 1}, - {1243, 2}, - {1251, 1}, - {1251, 2}, - {1293, 1}, - {1293, 2}, - {1183, 1}, - {1183, 1}, - {1183, 1}, - {734, 5}, - {734, 3}, - {734, 5}, - {734, 4}, - {734, 3}, - {734, 1}, - {1120, 1}, - {1120, 1}, - {1250, 0}, - {1250, 2}, - {1051, 1}, - {1051, 3}, - {1051, 5}, - {1051, 2}, - {1221, 0}, - {1221, 1}, - {1220, 1}, - {1220, 2}, - {1220, 1}, - {1220, 2}, - {1223, 1}, - {1223, 3}, - {944, 3}, - {1066, 0}, - {1066, 2}, - {1184, 0}, - {1184, 1}, - {929, 3}, - {784, 0}, - {784, 2}, - {790, 0}, - {790, 3}, - {859, 0}, - {859, 1}, - {882, 0}, - {882, 1}, - {884, 0}, - {884, 2}, - {883, 3}, - {883, 1}, - {883, 3}, - {883, 2}, - {883, 1}, - {883, 1}, - {947, 1}, - {947, 3}, - {947, 3}, - {1242, 0}, - {1242, 1}, - {862, 2}, - {862, 2}, - {910, 1}, + {1060, 1}, + {1060, 1}, + {1060, 1}, + {1060, 1}, + {1060, 1}, + {1060, 1}, + {1060, 1}, + {879, 2}, + {876, 3}, + {1009, 5}, + {1009, 5}, + {1010, 2}, + {1010, 2}, + {1010, 2}, + {1225, 1}, + {1225, 3}, + {913, 0}, + {913, 2}, {910, 1}, {910, 1}, - {860, 1}, - {860, 1}, - {664, 1}, - {664, 1}, - {664, 1}, - {664, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {667, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {666, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {665, 1}, - {1001, 2}, - {1291, 1}, - {1291, 3}, - {1291, 4}, - {1291, 6}, - {777, 9}, - {1073, 0}, - {1073, 1}, - {1072, 5}, - {1072, 4}, - {1072, 4}, - {1072, 4}, - {1072, 4}, - {1072, 2}, - {1072, 1}, - {1072, 1}, - {1072, 1}, + {909, 1}, + {909, 1}, + {909, 1}, + {909, 1}, + {909, 1}, + {909, 1}, + {909, 1}, + {909, 1}, + {914, 1}, + {914, 1}, + {914, 1}, + {914, 1}, + {911, 1}, + {911, 1}, + {911, 2}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 5}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 6}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 3}, + {912, 3}, + {755, 1}, + {777, 1}, + {747, 1}, + {943, 1}, + {943, 1}, + {943, 1}, + {1113, 1}, + {1113, 1}, + {1113, 1}, + {1128, 3}, + {1027, 8}, + {1163, 4}, + {1139, 4}, + {998, 6}, + {1044, 4}, + {1151, 5}, + {1249, 0}, + {1249, 2}, + {1248, 0}, + {1248, 3}, + {1284, 0}, + {1284, 1}, + {1058, 0}, + {1058, 1}, + {1058, 2}, + {1058, 2}, + {1058, 2}, + {1058, 2}, + {1251, 0}, + {1251, 3}, + {1251, 3}, + {746, 3}, + {746, 3}, + {746, 3}, + {746, 3}, + {746, 2}, + {746, 9}, + {746, 3}, + {746, 3}, + {746, 3}, + {746, 1}, + {961, 1}, + {961, 1}, + {1243, 0}, + {1243, 4}, + {1243, 7}, + {1243, 3}, + {1243, 3}, + {749, 1}, + {749, 1}, + {748, 1}, + {748, 1}, + {793, 1}, + {793, 3}, + {1099, 1}, + {1099, 3}, + {840, 0}, + {840, 1}, + {1072, 0}, {1072, 1}, - {1072, 2}, - {982, 1}, - {982, 1}, - {980, 1}, - {980, 3}, - {844, 3}, - {1344, 0}, - {1344, 1}, - {1343, 3}, - {1343, 1}, - {801, 1}, - {801, 1}, - {1009, 3}, - {1203, 0}, + {1071, 1}, + {745, 3}, + {745, 3}, + {745, 4}, + {745, 5}, + {745, 1}, + {1217, 1}, + {1217, 1}, + {1217, 1}, + {1217, 1}, + {1217, 1}, + {1217, 1}, + {1217, 1}, + {1217, 1}, {1203, 1}, - {1203, 3}, - {1268, 0}, - {1268, 5}, - {780, 6}, - {716, 1}, - {716, 1}, - {716, 1}, - {716, 1}, - {716, 1}, - {716, 1}, - {716, 1}, - {716, 2}, - {716, 1}, - {716, 1}, - {716, 2}, - {716, 2}, - {717, 1}, - {717, 2}, - {1177, 1}, - {1177, 3}, - {990, 2}, - {772, 3}, - {905, 1}, - {905, 3}, - {875, 1}, - {875, 2}, - {1280, 1}, - {1280, 1}, - {954, 0}, - {954, 1}, - {954, 1}, - {817, 0}, - {817, 1}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 5}, - {733, 5}, - {733, 5}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 3}, - {733, 1}, - {715, 1}, - {715, 3}, - {715, 5}, - {728, 1}, - {728, 1}, - {728, 1}, - {728, 1}, - {728, 3}, - {728, 1}, - {728, 1}, - {728, 1}, - {728, 1}, - {728, 1}, - {728, 2}, - {728, 2}, - {728, 2}, - {728, 2}, - {728, 3}, - {728, 2}, - {728, 1}, - {728, 3}, - {728, 5}, - {728, 6}, - {728, 2}, - {728, 4}, - {728, 2}, - {728, 6}, - {728, 5}, - {728, 6}, - {728, 6}, - {728, 4}, - {728, 4}, - {728, 3}, - {728, 3}, - {789, 1}, - {789, 1}, - {792, 1}, - {792, 1}, - {822, 0}, - {822, 1}, - {938, 0}, - {938, 1}, - {821, 1}, - {821, 2}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {722, 1}, - {1100, 0}, - {1100, 2}, + {1203, 2}, + {1261, 1}, + {1261, 2}, + {1256, 1}, + {1256, 2}, + {1264, 1}, + {1264, 2}, + {1306, 1}, + {1306, 2}, + {1197, 1}, + {1197, 1}, + {1197, 1}, + {744, 5}, + {744, 3}, + {744, 5}, + {744, 4}, + {744, 3}, + {744, 1}, + {1132, 1}, + {1132, 1}, + {1263, 0}, + {1263, 2}, + {1063, 1}, + {1063, 3}, + {1063, 5}, + {1063, 2}, + {1234, 0}, + {1234, 1}, + {1233, 1}, + {1233, 2}, + {1233, 1}, + {1233, 2}, + {1236, 1}, + {1236, 3}, + {955, 3}, + {1078, 0}, + {1078, 2}, + {1198, 0}, + {1198, 1}, + {940, 3}, + {792, 0}, + {792, 2}, + {797, 0}, + {797, 3}, + {869, 0}, + {869, 1}, + {894, 0}, + {894, 1}, + {896, 0}, + {896, 2}, + {895, 3}, + {895, 1}, + {895, 3}, + {895, 2}, + {895, 1}, + {895, 1}, + {958, 1}, + {958, 3}, + {958, 3}, + {1255, 0}, + {1255, 1}, + {872, 2}, + {872, 2}, + {921, 1}, + {921, 1}, + {921, 1}, + {870, 1}, + {870, 1}, + {676, 1}, + {676, 1}, + {676, 1}, + {676, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {679, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {678, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {677, 1}, + {1012, 2}, + {1304, 1}, + {1304, 3}, + {1304, 4}, + {1304, 6}, + {787, 9}, + {1085, 0}, + {1085, 1}, + {1084, 5}, + {1084, 4}, + {1084, 4}, + {1084, 4}, + {1084, 4}, + {1084, 2}, + {1084, 1}, + {1084, 1}, + {1084, 1}, + {1084, 1}, + {1084, 2}, + {992, 1}, + {992, 1}, + {990, 1}, + {990, 3}, + {854, 3}, + {1357, 0}, + {1357, 1}, + {1356, 3}, + {1356, 1}, + {811, 1}, + {811, 1}, + {1020, 3}, + {1216, 0}, + {1216, 1}, + {1216, 3}, + {1281, 0}, + {1281, 5}, + {788, 6}, {726, 1}, {726, 1}, {726, 1}, {726, 1}, {726, 1}, - {725, 1}, - {725, 1}, - {725, 1}, - {725, 1}, - {725, 1}, - {725, 1}, - {720, 4}, - {720, 4}, - {720, 2}, - {720, 3}, - {720, 2}, - {720, 4}, - {720, 6}, - {720, 2}, - {720, 2}, - {720, 2}, - {720, 4}, - {720, 6}, - {720, 4}, - {721, 4}, - {721, 4}, - {721, 6}, - {721, 8}, - {721, 8}, - {721, 6}, - {721, 6}, - {721, 6}, - {721, 6}, - {721, 6}, - {721, 8}, - {721, 8}, - {721, 8}, - {721, 8}, - {721, 4}, - {721, 6}, - {721, 6}, - {721, 7}, - {721, 4}, - {721, 7}, - {721, 7}, - {721, 1}, - {721, 8}, - {1232, 1}, - {1232, 1}, - {1232, 1}, - {1232, 1}, - {723, 1}, - {723, 1}, - {724, 1}, - {724, 1}, - {1338, 1}, - {1338, 1}, - {1338, 1}, - {727, 4}, - {727, 6}, + {726, 1}, + {726, 1}, + {726, 2}, + {726, 1}, + {726, 1}, + {726, 2}, + {726, 2}, {727, 1}, - {729, 6}, - {729, 4}, + {727, 2}, + {1191, 1}, + {1191, 3}, + {1000, 2}, + {782, 3}, + {916, 1}, + {916, 3}, + {886, 1}, + {886, 2}, + {1293, 1}, + {1293, 1}, + {965, 0}, + {965, 1}, + {965, 1}, + {828, 0}, + {828, 1}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 5}, + {743, 5}, + {743, 5}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 3}, + {743, 1}, + {725, 1}, + {725, 3}, + {725, 5}, + {738, 1}, + {738, 1}, + {738, 1}, + {738, 1}, + {738, 3}, + {738, 1}, + {738, 1}, + {738, 1}, + {738, 1}, + {738, 1}, + {738, 2}, + {738, 2}, + {738, 2}, + {738, 2}, + {738, 3}, + {738, 2}, + {738, 1}, + {738, 3}, + {738, 5}, + {738, 6}, + {738, 2}, + {738, 4}, + {738, 2}, + {738, 6}, + {738, 5}, + {738, 6}, + {738, 6}, + {738, 4}, + {738, 4}, + {738, 3}, + {738, 3}, + {800, 1}, + {800, 1}, + {802, 1}, + {802, 1}, + {832, 0}, + {832, 1}, + {949, 0}, + {949, 1}, + {831, 1}, + {831, 2}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {732, 1}, + {1112, 0}, + {1112, 2}, + {736, 1}, + {736, 1}, + {736, 1}, + {736, 1}, + {736, 1}, + {735, 1}, + {735, 1}, + {735, 1}, + {735, 1}, + {735, 1}, + {735, 1}, + {730, 4}, + {730, 4}, + {730, 2}, + {730, 3}, + {730, 2}, + {730, 4}, + {730, 6}, + {730, 2}, + {730, 2}, + {730, 2}, + {730, 4}, + {730, 6}, + {730, 4}, + {731, 4}, + {731, 4}, + {731, 6}, + {731, 8}, + {731, 8}, + {731, 6}, + {731, 6}, + {731, 6}, + {731, 6}, + {731, 6}, + {731, 8}, + {731, 8}, + {731, 8}, + {731, 8}, + {731, 4}, + {731, 6}, + {731, 6}, + {731, 7}, + {731, 4}, + {731, 7}, + {731, 7}, + {731, 1}, + {731, 8}, + {1245, 1}, + {1245, 1}, + {1245, 1}, + {1245, 1}, + {733, 1}, + {733, 1}, + {734, 1}, + {734, 1}, + {1351, 1}, + {1351, 1}, + {1351, 1}, + {737, 4}, + {737, 6}, + {737, 1}, + {739, 6}, + {739, 4}, + {739, 4}, + {739, 5}, + {739, 6}, + {739, 5}, + {739, 6}, + {739, 5}, + {739, 6}, + {739, 5}, + {739, 6}, + {739, 5}, + {739, 5}, + {739, 8}, + {739, 6}, + {739, 6}, + {739, 6}, + {739, 6}, + {739, 6}, + {739, 6}, + {739, 6}, + {739, 5}, + {739, 6}, + {739, 7}, + {739, 8}, + {739, 8}, + {739, 9}, + {1287, 0}, + {1287, 2}, {729, 4}, - {729, 5}, - {729, 6}, - {729, 5}, - {729, 6}, - {729, 5}, - {729, 6}, - {729, 5}, - {729, 6}, - {729, 5}, - {729, 5}, - {729, 8}, - {729, 6}, {729, 6}, - {729, 6}, - {729, 6}, - {729, 6}, - {729, 6}, - {729, 6}, - {729, 5}, - {729, 6}, - {729, 7}, - {729, 8}, - {729, 8}, - {729, 9}, - {1274, 0}, - {1274, 2}, - {719, 4}, - {719, 6}, - {1231, 0}, - {1231, 2}, - {1231, 3}, + {1244, 0}, + {1244, 2}, + {1244, 3}, {820, 1}, {820, 1}, {820, 1}, @@ -5087,628 +5144,236 @@ var ( {820, 1}, {820, 1}, {820, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {800, 1}, - {1218, 0}, - {1218, 1}, - {1353, 1}, - {1353, 2}, - {1168, 4}, - {1216, 0}, - {1216, 2}, - {1002, 2}, - {1002, 3}, - {1002, 1}, - {1002, 1}, - {1002, 2}, - {1002, 2}, - {1002, 2}, - {1002, 2}, - {1002, 2}, - {1002, 1}, - {1002, 1}, - {1002, 2}, - {1002, 1}, - {842, 1}, - {842, 1}, - {842, 1}, - {891, 0}, - {891, 1}, - {740, 1}, - {740, 3}, - {786, 1}, - {786, 3}, - {922, 2}, - {922, 4}, - {972, 1}, - {972, 3}, - {912, 0}, - {912, 2}, - {1117, 0}, - {1117, 1}, - {1114, 4}, - {1290, 1}, - {1290, 1}, - {1047, 2}, - {1047, 4}, - {1341, 1}, - {1341, 3}, - {1026, 3}, - {1027, 1}, - {1027, 1}, - {867, 1}, - {867, 2}, - {867, 3}, - {867, 4}, - {1011, 4}, - {1011, 4}, - {1011, 5}, - {1011, 2}, - {1011, 3}, - {1011, 1}, - {1011, 2}, - {1141, 1}, - {1124, 1}, - {1067, 2}, - {753, 4}, - {754, 3}, - {755, 7}, - {1333, 0}, - {1333, 7}, - {1333, 5}, - {1332, 0}, - {1332, 1}, - {1332, 1}, - {1332, 1}, - {1334, 0}, - {1334, 1}, - {1334, 1}, - {1123, 0}, - {1123, 4}, - {752, 7}, - {752, 6}, - {752, 5}, - {752, 6}, - {752, 6}, - {764, 2}, - {764, 2}, - {763, 2}, - {763, 3}, - {1173, 3}, - {1173, 1}, - {935, 4}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {805, 1}, + {1231, 0}, + {1231, 1}, + {1366, 1}, + {1366, 2}, + {1182, 4}, + {1229, 0}, {1229, 2}, - {1354, 0}, - {1354, 2}, - {1355, 1}, - {1355, 3}, - {1169, 3}, - {928, 1}, - {1171, 3}, - {1360, 4}, - {1272, 0}, - {1272, 1}, - {1276, 0}, - {1276, 3}, - {1279, 0}, - {1279, 3}, - {1278, 0}, - {1278, 2}, - {1358, 1}, - {1358, 1}, - {1358, 1}, - {1357, 1}, - {1357, 1}, - {984, 2}, - {984, 2}, - {984, 2}, - {984, 4}, - {984, 2}, - {1356, 4}, - {1170, 1}, - {1170, 2}, - {1170, 2}, - {1170, 2}, - {1170, 4}, - {769, 0}, - {769, 1}, - {751, 2}, - {1359, 1}, - {1359, 1}, - {732, 4}, - {732, 4}, - {732, 4}, - {732, 4}, - {732, 4}, - {732, 5}, - {732, 7}, - {732, 7}, - {732, 6}, - {732, 6}, - {732, 9}, - {1102, 0}, - {1102, 3}, - {1102, 3}, - {1103, 0}, - {1103, 2}, - {889, 0}, - {889, 2}, - {889, 2}, - {1273, 0}, - {1273, 2}, - {1273, 2}, - {1331, 1}, - {894, 1}, - {894, 3}, - {856, 1}, - {856, 4}, - {807, 1}, - {807, 1}, - {806, 6}, - {806, 2}, - {806, 3}, - {864, 0}, - {864, 4}, - {921, 0}, - {921, 1}, - {920, 1}, - {920, 2}, - {946, 2}, - {946, 2}, - {946, 2}, - {1239, 0}, - {1239, 2}, - {1239, 3}, - {1239, 3}, - {945, 5}, - {861, 0}, - {861, 1}, - {861, 3}, - {861, 1}, - {861, 3}, - {1069, 1}, - {1069, 2}, - {1070, 0}, - {1070, 1}, - {802, 3}, - {802, 5}, - {802, 7}, - {802, 7}, - {802, 9}, - {802, 4}, - {802, 6}, - {802, 3}, - {802, 5}, - {823, 1}, - {823, 1}, - {1104, 0}, - {1104, 1}, - {827, 1}, - {827, 2}, - {827, 2}, - {1078, 0}, - {1078, 2}, - {886, 1}, - {886, 1}, - {1297, 1}, - {1297, 1}, - {1225, 1}, - {1225, 1}, - {1219, 0}, - {1219, 1}, - {773, 2}, - {773, 4}, - {773, 4}, - {773, 5}, - {834, 0}, - {834, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1131, 1}, - {1299, 0}, - {1299, 1}, - {1300, 2}, - {1300, 1}, - {871, 1}, + {1013, 2}, + {1013, 3}, + {1013, 1}, + {1013, 1}, + {1013, 2}, + {1013, 2}, + {1013, 2}, + {1013, 2}, + {1013, 2}, + {1013, 1}, + {1013, 1}, + {1013, 2}, + {1013, 1}, + {852, 1}, + {852, 1}, + {852, 1}, + {902, 0}, + {902, 1}, + {751, 1}, + {751, 3}, + {796, 1}, + {796, 3}, + {933, 2}, + {933, 4}, + {982, 1}, + {982, 3}, {923, 0}, - {923, 1}, - {1132, 1}, - {1132, 1}, - {1298, 1}, - {970, 0}, - {970, 1}, - {893, 0}, - {893, 5}, - {713, 3}, - {713, 3}, - {713, 3}, - {713, 3}, - {892, 0}, - {892, 3}, - {892, 3}, - {892, 4}, - {892, 5}, - {892, 4}, - {892, 5}, - {892, 5}, - {892, 4}, - {1093, 0}, - {1093, 2}, - {765, 1}, - {765, 1}, - {765, 2}, - {765, 2}, - {762, 3}, - {762, 3}, - {761, 4}, - {761, 4}, - {761, 5}, - {761, 2}, - {761, 2}, - {761, 3}, - {760, 1}, - {760, 3}, - {756, 1}, - {756, 1}, - {1302, 2}, - {1302, 2}, - {1302, 2}, - {971, 1}, - {1003, 9}, - {1003, 9}, - {869, 2}, - {869, 4}, - {869, 6}, - {869, 4}, - {869, 4}, - {869, 3}, - {869, 6}, - {869, 6}, - {869, 3}, - {1136, 3}, - {1135, 6}, - {1134, 1}, - {1134, 1}, - {1134, 1}, - {1303, 3}, + {923, 2}, + {1129, 0}, + {1129, 1}, + {1126, 4}, {1303, 1}, {1303, 1}, - {976, 1}, - {976, 3}, - {926, 3}, - {926, 2}, - {926, 2}, - {926, 3}, - {1247, 2}, - {1247, 2}, - {1247, 2}, - {1247, 1}, - {845, 1}, - {845, 1}, - {845, 1}, - {828, 1}, - {828, 1}, - {835, 1}, - {835, 3}, - {907, 1}, - {907, 3}, - {907, 3}, - {983, 3}, - {983, 4}, - {983, 4}, - {983, 4}, - {983, 3}, - {983, 3}, - {983, 2}, - {983, 4}, - {983, 4}, - {983, 2}, - {983, 2}, - {1195, 1}, - {1195, 1}, - {811, 1}, - {811, 1}, - {876, 1}, - {876, 1}, - {1167, 1}, - {1167, 3}, - {731, 1}, - {731, 1}, - {730, 1}, - {714, 1}, - {781, 1}, - {781, 3}, - {781, 2}, - {781, 2}, - {872, 1}, - {872, 3}, - {1109, 1}, - {1109, 4}, - {897, 1}, - {826, 1}, - {826, 1}, - {805, 3}, - {805, 2}, - {968, 1}, - {968, 1}, - {825, 1}, - {825, 1}, + {1059, 2}, + {1059, 4}, + {1354, 1}, + {1354, 3}, + {1038, 3}, + {1039, 1}, + {1039, 1}, + {878, 1}, + {878, 2}, + {878, 3}, + {878, 4}, + {1022, 4}, + {1022, 4}, + {1022, 5}, + {1022, 2}, + {1022, 3}, + {1022, 1}, + {1022, 2}, + {1155, 1}, + {1138, 1}, + {1079, 2}, + {763, 4}, + {764, 3}, + {765, 7}, + {1346, 0}, + {1346, 7}, + {1346, 5}, + {1345, 0}, + {1345, 1}, + {1345, 1}, + {1345, 1}, + {1347, 0}, + {1347, 1}, + {1347, 1}, + {1135, 0}, + {1135, 4}, + {762, 7}, + {762, 6}, + {762, 5}, + {762, 6}, + {762, 6}, + {774, 2}, + {774, 2}, + {773, 2}, + {773, 3}, + {1187, 3}, + {1187, 1}, + {946, 4}, + {1242, 2}, + {1367, 0}, + {1367, 2}, + {1368, 1}, + {1368, 3}, + {1183, 3}, + {939, 1}, + {1185, 3}, + {1373, 4}, + {1285, 0}, + {1285, 1}, + {1289, 0}, + {1289, 3}, + {1292, 0}, + {1292, 3}, + {1291, 0}, + {1291, 2}, + {1371, 1}, + {1371, 1}, + {1371, 1}, + {1370, 1}, + {1370, 1}, + {994, 2}, + {994, 2}, + {994, 2}, + {994, 4}, + {994, 2}, + {1369, 4}, + {1184, 1}, + {1184, 2}, + {1184, 2}, + {1184, 2}, + {1184, 4}, + {779, 0}, + {779, 1}, + {761, 2}, + {1372, 1}, + {1372, 1}, + {742, 4}, + {742, 4}, + {742, 4}, + {742, 4}, + {742, 4}, + {742, 5}, + {742, 7}, + {742, 7}, + {742, 6}, + {742, 6}, + {742, 9}, + {1114, 0}, + {1114, 3}, + {1114, 3}, + {1115, 0}, + {1115, 2}, + {901, 0}, + {901, 2}, + {901, 2}, + {1286, 0}, + {1286, 2}, + {1286, 2}, + {1344, 1}, + {905, 1}, + {905, 3}, {866, 1}, - {866, 3}, - {1176, 2}, - {1176, 4}, - {1176, 4}, - {985, 3}, - {985, 5}, - {985, 6}, - {985, 4}, - {985, 4}, - {985, 5}, - {985, 5}, - {985, 5}, - {985, 6}, - {985, 4}, - {985, 5}, - {985, 6}, - {985, 6}, - {985, 4}, - {985, 3}, - {985, 3}, - {985, 4}, - {985, 4}, - {985, 5}, - {985, 5}, - {985, 3}, - {985, 3}, - {985, 3}, - {985, 3}, - {985, 3}, - {985, 3}, - {985, 3}, - {985, 3}, - {985, 4}, - {1175, 2}, - {1175, 2}, - {1175, 3}, - {1175, 3}, - {1233, 1}, - {1233, 3}, - {1064, 5}, - {1090, 1}, - {1090, 3}, - {1139, 3}, - {1139, 4}, - {1139, 4}, - {1139, 5}, - {1139, 4}, - {1139, 5}, - {1139, 4}, - {1139, 4}, - {1139, 6}, - {1139, 4}, - {1139, 8}, - {1139, 2}, - {1139, 5}, - {1139, 3}, - {1139, 3}, - {1139, 2}, - {1139, 5}, - {1139, 2}, - {1139, 2}, - {1139, 4}, - {1307, 2}, - {1307, 2}, - {1307, 4}, - {1310, 0}, + {866, 4}, + {817, 1}, + {817, 1}, + {816, 6}, + {816, 2}, + {816, 3}, + {874, 0}, + {874, 4}, + {932, 0}, + {932, 1}, + {931, 1}, + {931, 2}, + {957, 2}, + {957, 2}, + {957, 2}, + {1252, 0}, + {1252, 2}, + {1252, 3}, + {1252, 3}, + {956, 5}, + {871, 0}, + {871, 1}, + {871, 3}, + {871, 1}, + {871, 3}, + {1081, 1}, + {1081, 2}, + {1082, 0}, + {1082, 1}, + {812, 3}, + {812, 5}, + {812, 7}, + {812, 7}, + {812, 9}, + {812, 4}, + {812, 6}, + {812, 3}, + {812, 5}, + {833, 1}, + {833, 1}, + {1116, 0}, + {1116, 1}, + {837, 1}, + {837, 2}, + {837, 2}, + {1090, 0}, + {1090, 2}, + {898, 1}, + {898, 1}, {1310, 1}, - {1309, 1}, - {1309, 3}, - {1138, 1}, - {1138, 1}, - {1138, 2}, - {1138, 2}, - {1138, 2}, - {1138, 1}, - {1138, 1}, - {1138, 1}, - {1138, 1}, - {1308, 0}, - {1308, 3}, - {1342, 0}, - {1342, 2}, - {1305, 1}, - {1305, 1}, - {1305, 1}, - {809, 1}, - {809, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 3}, - {1311, 3}, - {1311, 3}, - {1311, 3}, - {1311, 5}, - {1311, 4}, - {1311, 5}, - {1311, 5}, - {1311, 1}, - {1311, 5}, - {1311, 1}, - {1311, 2}, - {1311, 2}, - {1311, 2}, - {1311, 1}, - {1311, 2}, - {1311, 2}, - {1311, 2}, - {1311, 2}, - {1311, 2}, - {1311, 2}, - {1311, 2}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 2}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 1}, - {1311, 2}, - {1306, 0}, - {1306, 2}, - {1306, 2}, - {943, 0}, - {943, 1}, - {943, 1}, - {1319, 0}, - {1319, 1}, - {1319, 1}, - {1319, 1}, - {1098, 0}, - {1098, 1}, - {846, 0}, - {846, 2}, - {1140, 2}, - {1058, 3}, - {960, 1}, - {960, 3}, - {1228, 1}, - {1228, 1}, - {1228, 3}, - {1228, 1}, - {1228, 2}, - {1228, 3}, - {1228, 1}, - {1257, 0}, - {1257, 1}, - {1257, 1}, - {1257, 1}, - {1257, 1}, - {1257, 1}, - {833, 0}, - {833, 1}, - {833, 1}, - {1155, 0}, - {1155, 1}, - {974, 0}, - {974, 2}, - {1361, 0}, - {1361, 3}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, - {1145, 1}, + {1310, 1}, + {1238, 1}, + {1238, 1}, + {1232, 0}, + {1232, 1}, + {783, 2}, + {783, 4}, + {783, 4}, + {783, 5}, + {844, 0}, + {844, 1}, {1145, 1}, {1145, 1}, {1145, 1}, @@ -5718,5733 +5383,6230 @@ var ( {1145, 1}, {1145, 1}, {1145, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {925, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {829, 1}, - {1318, 1}, - {1318, 3}, - {908, 2}, - {1004, 1}, - {1004, 1}, - {973, 1}, - {973, 1}, - {1153, 1}, + {1312, 0}, + {1312, 1}, + {1313, 2}, + {1313, 1}, + {882, 1}, + {934, 0}, + {934, 1}, + {1146, 1}, + {1146, 1}, + {1311, 1}, + {980, 0}, + {980, 1}, + {904, 0}, + {904, 5}, + {723, 3}, + {723, 3}, + {723, 3}, + {723, 3}, + {903, 0}, + {903, 3}, + {903, 3}, + {903, 4}, + {903, 5}, + {903, 4}, + {903, 5}, + {903, 5}, + {903, 4}, + {1105, 0}, + {1105, 2}, + {775, 1}, + {775, 1}, + {775, 2}, + {775, 2}, + {772, 3}, + {772, 3}, + {771, 4}, + {771, 4}, + {771, 5}, + {771, 2}, + {771, 2}, + {771, 3}, + {770, 1}, + {770, 3}, + {766, 1}, + {766, 1}, + {1315, 2}, + {1315, 2}, + {1315, 2}, + {981, 1}, + {1014, 9}, + {1014, 9}, + {880, 2}, + {880, 4}, + {880, 6}, + {880, 4}, + {880, 4}, + {880, 3}, + {880, 6}, + {880, 6}, + {880, 3}, + {1150, 3}, + {1149, 6}, + {1148, 1}, + {1148, 1}, + {1148, 1}, + {1316, 3}, + {1316, 1}, + {1316, 1}, + {986, 1}, + {986, 3}, + {937, 3}, + {937, 2}, + {937, 2}, + {937, 3}, + {1260, 2}, + {1260, 2}, + {1260, 2}, + {1260, 1}, + {855, 1}, + {855, 1}, + {855, 1}, + {838, 1}, + {838, 1}, + {845, 1}, + {845, 3}, + {918, 1}, + {918, 3}, + {918, 3}, + {993, 3}, + {993, 4}, + {993, 4}, + {993, 4}, + {993, 3}, + {993, 3}, + {993, 2}, + {993, 4}, + {993, 4}, + {993, 2}, + {993, 2}, + {1209, 1}, + {1209, 1}, + {822, 1}, + {822, 1}, + {887, 1}, + {887, 1}, + {1181, 1}, + {1181, 3}, + {741, 1}, + {741, 1}, + {740, 1}, + {724, 1}, + {791, 1}, + {791, 3}, + {791, 2}, + {791, 2}, + {883, 1}, + {883, 3}, + {1121, 1}, + {1121, 4}, + {908, 1}, + {836, 1}, + {836, 1}, + {815, 3}, + {815, 2}, + {978, 1}, + {978, 1}, + {835, 1}, + {835, 1}, + {877, 1}, + {877, 3}, + {1190, 2}, + {1190, 4}, + {1190, 4}, + {995, 3}, + {995, 5}, + {995, 6}, + {995, 4}, + {995, 4}, + {995, 5}, + {995, 5}, + {995, 5}, + {995, 6}, + {995, 4}, + {995, 5}, + {995, 6}, + {995, 6}, + {995, 4}, + {995, 3}, + {995, 3}, + {995, 4}, + {995, 4}, + {995, 5}, + {995, 5}, + {995, 3}, + {995, 3}, + {995, 3}, + {995, 3}, + {995, 3}, + {995, 3}, + {995, 3}, + {995, 3}, + {995, 4}, + {1189, 2}, + {1189, 2}, + {1189, 3}, + {1189, 3}, + {1246, 1}, + {1246, 3}, + {1076, 5}, + {1102, 1}, + {1102, 3}, {1153, 3}, - {1329, 0}, - {1329, 3}, - {847, 1}, - {847, 4}, - {847, 4}, - {847, 4}, - {847, 3}, - {847, 4}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 1}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 3}, - {847, 2}, - {847, 2}, - {847, 3}, - {847, 3}, - {847, 5}, - {847, 3}, - {840, 0}, - {840, 1}, - {1147, 1}, - {1147, 1}, - {1022, 0}, - {1022, 1}, - {924, 1}, - {924, 2}, - {924, 3}, - {1277, 0}, - {1277, 1}, - {1161, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {843, 3}, - {1339, 1}, - {1339, 1}, - {1339, 1}, - {1265, 3}, - {1265, 2}, - {1265, 3}, - {1265, 3}, - {1265, 2}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1245, 1}, - {1193, 1}, - {1193, 1}, - {1099, 0}, - {1099, 1}, - {1099, 1}, - {1226, 1}, - {1226, 1}, - {1226, 1}, - {1227, 1}, - {1227, 1}, - {1227, 1}, - {1227, 2}, - {1191, 1}, + {1153, 4}, + {1153, 4}, + {1153, 5}, + {1153, 4}, + {1153, 5}, + {1153, 4}, + {1153, 4}, + {1153, 6}, + {1153, 4}, + {1153, 8}, + {1153, 2}, + {1153, 5}, + {1153, 3}, + {1153, 3}, + {1153, 2}, + {1153, 5}, + {1153, 2}, + {1153, 2}, + {1153, 4}, + {1320, 2}, + {1320, 2}, + {1320, 4}, + {1323, 0}, + {1323, 1}, + {1322, 1}, + {1322, 3}, + {1152, 1}, + {1152, 1}, + {1152, 2}, + {1152, 2}, + {1152, 2}, + {1152, 1}, + {1152, 1}, + {1152, 1}, + {1152, 1}, + {1321, 0}, + {1321, 3}, + {1355, 0}, + {1355, 2}, + {1318, 1}, + {1318, 1}, + {1318, 1}, + {819, 1}, + {819, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, {1324, 3}, - {1324, 2}, {1324, 3}, - {1324, 2}, {1324, 3}, {1324, 3}, + {1324, 5}, + {1324, 4}, + {1324, 5}, + {1324, 5}, + {1324, 1}, + {1324, 5}, + {1324, 1}, + {1324, 2}, {1324, 2}, {1324, 2}, {1324, 1}, {1324, 2}, - {1324, 5}, - {1324, 5}, + {1324, 2}, + {1324, 2}, + {1324, 2}, + {1324, 2}, + {1324, 2}, + {1324, 2}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, {1324, 1}, - {1324, 3}, {1324, 2}, - {906, 1}, - {906, 1}, - {1263, 1}, - {1263, 2}, - {1263, 2}, - {1166, 2}, - {1166, 2}, - {1166, 1}, - {1166, 1}, - {1266, 2}, - {1266, 2}, - {1266, 1}, - {1266, 2}, - {1266, 2}, - {1266, 3}, - {1266, 3}, - {1266, 2}, - {1364, 1}, - {1364, 1}, - {1192, 1}, - {1192, 2}, - {1192, 1}, - {1192, 1}, - {1192, 2}, - {1336, 1}, - {1336, 2}, - {1336, 1}, - {1336, 1}, - {888, 1}, - {888, 1}, - {888, 1}, - {888, 1}, - {1211, 1}, - {1211, 2}, - {1211, 2}, - {1211, 2}, - {1211, 3}, - {768, 3}, - {794, 0}, - {794, 1}, - {879, 1}, - {879, 1}, - {879, 1}, - {880, 0}, - {880, 2}, - {909, 0}, - {909, 1}, - {909, 1}, - {914, 5}, - {1269, 0}, - {1269, 1}, - {803, 0}, - {803, 2}, - {803, 3}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 1}, + {1324, 2}, + {1319, 0}, + {1319, 2}, + {1319, 2}, + {954, 0}, + {954, 1}, + {954, 1}, + {1332, 0}, + {1332, 1}, + {1332, 1}, + {1332, 1}, + {1110, 0}, + {1110, 1}, + {856, 0}, + {856, 2}, + {1154, 2}, + {1070, 3}, + {970, 1}, + {970, 3}, + {1241, 1}, + {1241, 1}, + {1241, 3}, + {1241, 1}, + {1241, 2}, + {1241, 3}, + {1241, 1}, {1270, 0}, - {1270, 2}, - {779, 2}, - {779, 1}, - {779, 2}, - {1097, 0}, - {1097, 2}, - {1322, 1}, - {1322, 3}, - {975, 1}, - {975, 1}, - {975, 1}, + {1270, 1}, + {1270, 1}, + {1270, 1}, + {1270, 1}, + {1270, 1}, + {843, 0}, + {843, 1}, + {843, 1}, + {1169, 0}, + {1169, 1}, + {984, 0}, + {984, 2}, + {1374, 0}, + {1374, 3}, {1159, 1}, - {1159, 3}, - {742, 1}, - {742, 1}, - {1323, 1}, - {1323, 1}, - {1323, 1}, - {778, 1}, - {778, 2}, - {770, 10}, - {770, 8}, - {1165, 2}, - {795, 2}, - {796, 0}, - {796, 1}, - {1369, 0}, - {1369, 1}, - {1023, 8}, - {1019, 4}, - {995, 8}, - {995, 9}, - {989, 3}, - {1244, 2}, - {1244, 6}, - {895, 2}, - {927, 1}, - {927, 3}, - {1013, 0}, - {1013, 2}, - {1205, 1}, - {1205, 2}, - {1012, 2}, - {1012, 2}, - {1012, 2}, - {1012, 2}, - {966, 0}, - {966, 1}, - {965, 2}, - {965, 2}, - {965, 2}, - {965, 2}, - {1295, 1}, - {1295, 3}, - {1295, 2}, - {967, 2}, - {967, 2}, - {967, 2}, - {967, 2}, - {967, 2}, - {1010, 0}, - {1010, 2}, - {1010, 2}, - {1111, 0}, - {1111, 1}, - {1110, 1}, - {1110, 2}, - {959, 2}, - {959, 2}, - {959, 1}, - {959, 4}, - {959, 2}, - {959, 2}, - {958, 3}, - {1197, 0}, - {1186, 0}, - {1186, 3}, - {1186, 3}, - {1186, 5}, - {1186, 5}, - {1186, 4}, - {1187, 1}, - {1065, 1}, - {1065, 1}, - {1130, 1}, - {1296, 1}, - {1296, 3}, - {851, 1}, - {851, 1}, - {851, 1}, - {851, 1}, - {851, 1}, - {851, 1}, - {851, 1}, - {851, 1}, - {1014, 7}, - {1030, 5}, - {1030, 7}, - {1133, 5}, - {1133, 7}, - {1063, 9}, - {1061, 7}, - {1062, 4}, - {1172, 0}, - {1172, 3}, - {1172, 3}, - {1172, 3}, - {1172, 3}, - {1172, 3}, - {941, 1}, - {941, 2}, - {969, 1}, - {969, 1}, - {969, 1}, - {969, 3}, - {969, 3}, - {1129, 1}, - {1129, 3}, - {962, 1}, - {962, 4}, - {963, 1}, - {963, 2}, - {963, 1}, - {963, 1}, - {963, 2}, - {963, 2}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 2}, - {963, 1}, - {963, 2}, - {963, 1}, - {963, 2}, - {963, 2}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 1}, - {963, 3}, - {963, 2}, - {963, 2}, - {963, 2}, - {963, 2}, - {963, 2}, - {963, 2}, - {963, 2}, - {963, 1}, - {963, 1}, - {1091, 0}, - {1091, 1}, - {1091, 1}, - {1091, 1}, - {1115, 1}, - {1115, 3}, - {1115, 3}, - {1115, 3}, - {1115, 1}, - {1128, 7}, - {1127, 4}, - {863, 15}, - {1237, 0}, - {1237, 3}, - {1196, 0}, - {1196, 3}, - {1083, 0}, - {1083, 1}, - {1053, 0}, - {1053, 2}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {1159, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, + {936, 1}, {839, 1}, {839, 1}, - {1222, 2}, - {1222, 1}, - {1052, 3}, - {1052, 4}, - {1052, 3}, - {1052, 3}, - {857, 1}, + {839, 1}, + {839, 1}, + {839, 1}, + {839, 1}, + {839, 1}, + {839, 1}, + {839, 1}, + {1331, 1}, + {1331, 3}, + {919, 2}, + {1015, 1}, + {1015, 1}, + {983, 1}, + {983, 1}, + {1167, 1}, + {1167, 3}, + {1342, 0}, + {1342, 3}, {857, 1}, + {857, 4}, + {857, 4}, + {857, 4}, + {857, 3}, + {857, 4}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, {857, 1}, - {949, 0}, - {949, 3}, - {1316, 0}, - {1316, 3}, - {1253, 0}, - {1253, 3}, - {1255, 0}, - {1255, 2}, - {1254, 3}, - {1254, 1}, - {1081, 3}, - {1163, 2}, - {1086, 3}, - {1157, 1}, - {1157, 1}, - {1154, 2}, - {1256, 1}, - {1256, 2}, - {1256, 1}, - {1256, 2}, - {1330, 1}, - {1330, 3}, - {1088, 6}, - {1304, 1}, - {1304, 1}, - {1304, 1}, - {1214, 0}, - {1214, 2}, - {1214, 3}, - {1275, 0}, - {1275, 2}, - {1077, 2}, - {1077, 3}, - {1077, 3}, - {1077, 2}, - {1076, 1}, - {1076, 2}, - {1082, 3}, - {1085, 3}, - {1162, 3}, - {1034, 5}, - {1018, 7}, - {991, 6}, - {1020, 6}, - {1207, 0}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 3}, + {857, 2}, + {857, 2}, + {857, 3}, + {857, 3}, + {857, 5}, + {857, 3}, + {857, 7}, + {857, 3}, + {850, 0}, + {850, 1}, + {1161, 1}, + {1161, 1}, + {1034, 0}, + {1034, 1}, + {935, 1}, + {935, 2}, + {935, 3}, + {1290, 0}, + {1290, 1}, + {1175, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {853, 3}, + {1352, 1}, + {1352, 1}, + {1352, 1}, + {1278, 3}, + {1278, 2}, + {1278, 3}, + {1278, 3}, + {1278, 2}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, + {1258, 1}, {1207, 1}, - {1301, 1}, - {1301, 2}, - {918, 3}, - {918, 3}, - {918, 3}, - {918, 3}, - {918, 3}, - {918, 1}, - {918, 2}, - {918, 3}, - {918, 1}, - {918, 2}, - {918, 3}, - {918, 1}, - {918, 2}, - {918, 1}, - {918, 1}, - {918, 2}, - {819, 1}, - {819, 2}, - {819, 2}, - {1036, 4}, - {993, 5}, - {1178, 1}, - {1178, 2}, - {992, 1}, - {992, 1}, - {992, 3}, - {992, 3}, - {1068, 8}, - {1261, 0}, - {1261, 2}, - {1260, 0}, - {1260, 3}, + {1207, 1}, + {1111, 0}, + {1111, 1}, + {1111, 1}, + {1239, 1}, + {1239, 1}, + {1239, 1}, + {1240, 1}, + {1240, 1}, + {1240, 1}, + {1240, 2}, + {1205, 1}, + {1337, 3}, + {1337, 2}, + {1337, 3}, + {1337, 2}, + {1337, 3}, + {1337, 3}, + {1337, 2}, + {1337, 2}, + {1337, 1}, + {1337, 2}, + {1337, 5}, + {1337, 5}, + {1337, 1}, + {1337, 3}, + {1337, 2}, + {917, 1}, + {917, 1}, + {1276, 1}, + {1276, 2}, + {1276, 2}, + {1180, 2}, + {1180, 2}, + {1180, 1}, + {1180, 1}, + {1279, 2}, + {1279, 2}, + {1279, 1}, + {1279, 2}, + {1279, 2}, + {1279, 3}, + {1279, 3}, + {1279, 2}, + {1377, 1}, + {1377, 1}, + {1206, 1}, + {1206, 2}, + {1206, 1}, + {1206, 1}, + {1206, 2}, + {1349, 1}, + {1349, 2}, + {1349, 1}, + {1349, 1}, + {900, 1}, + {900, 1}, + {900, 1}, + {900, 1}, + {1224, 1}, + {1224, 2}, + {1224, 2}, + {1224, 2}, + {1224, 3}, + {778, 3}, + {804, 0}, + {804, 1}, + {891, 1}, + {891, 1}, + {891, 1}, + {892, 0}, + {892, 2}, + {920, 0}, + {920, 1}, + {920, 1}, + {925, 5}, + {1282, 0}, + {1282, 1}, + {813, 0}, + {813, 2}, + {813, 3}, + {1283, 0}, + {1283, 2}, + {790, 2}, + {790, 1}, + {790, 2}, + {1109, 0}, + {1109, 2}, + {1335, 1}, + {1335, 3}, + {985, 1}, + {985, 1}, + {985, 1}, + {1173, 1}, + {1173, 3}, + {752, 1}, + {752, 1}, + {1336, 1}, + {1336, 1}, + {1336, 1}, + {789, 1}, + {789, 2}, + {780, 10}, + {780, 8}, + {1179, 2}, + {806, 2}, + {807, 0}, + {807, 1}, + {1382, 0}, + {1382, 1}, + {1035, 8}, + {1031, 4}, + {1006, 8}, + {1006, 9}, + {999, 3}, + {1257, 2}, + {1257, 6}, + {906, 2}, + {938, 1}, + {938, 3}, + {1024, 0}, + {1024, 2}, + {1218, 1}, + {1218, 2}, + {1023, 2}, + {1023, 2}, + {1023, 2}, + {1023, 2}, + {976, 0}, + {976, 1}, + {975, 2}, + {975, 2}, + {975, 2}, + {975, 2}, + {1308, 1}, + {1308, 3}, + {1308, 2}, + {977, 2}, + {977, 2}, + {977, 2}, + {977, 2}, + {977, 2}, + {1021, 0}, + {1021, 2}, + {1021, 2}, + {1123, 0}, + {1123, 1}, + {1122, 1}, + {1122, 2}, + {969, 2}, + {969, 2}, + {969, 3}, + {969, 3}, + {969, 4}, + {969, 5}, + {969, 2}, + {969, 5}, + {969, 3}, + {969, 3}, + {1200, 0}, + {1200, 3}, + {1200, 3}, + {1200, 5}, + {1200, 5}, + {1200, 4}, + {1201, 1}, + {1077, 1}, + {1077, 1}, + {1144, 1}, + {1309, 1}, + {1309, 3}, + {861, 1}, + {861, 1}, + {861, 1}, + {861, 1}, + {861, 1}, + {861, 1}, + {861, 1}, + {861, 1}, + {1025, 7}, + {1025, 9}, + {1042, 5}, + {1042, 7}, + {1042, 7}, + {1147, 5}, + {1147, 7}, + {1075, 9}, + {1073, 7}, + {1074, 4}, + {1186, 0}, + {1186, 3}, + {1186, 3}, + {1186, 3}, + {1186, 3}, + {1186, 3}, + {952, 1}, + {952, 2}, + {979, 1}, + {979, 1}, + {979, 1}, + {979, 3}, + {979, 3}, + {1143, 1}, + {1143, 3}, + {972, 1}, + {972, 4}, + {973, 1}, + {973, 2}, + {973, 1}, + {973, 1}, + {973, 2}, + {973, 2}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 2}, + {973, 1}, + {973, 2}, + {973, 1}, + {973, 2}, + {973, 2}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 1}, + {973, 3}, + {973, 2}, + {973, 2}, + {973, 2}, + {973, 2}, + {973, 2}, + {973, 2}, + {973, 2}, + {973, 1}, + {973, 1}, + {1103, 0}, + {1103, 1}, + {1103, 1}, + {1103, 1}, + {1127, 1}, + {1127, 3}, + {1127, 3}, + {1127, 3}, + {1127, 1}, + {1142, 7}, + {1141, 4}, + {873, 15}, + {1250, 0}, + {1250, 3}, + {1210, 0}, + {1210, 3}, + {1095, 0}, + {1095, 1}, + {1065, 0}, + {1065, 2}, + {849, 1}, + {849, 1}, + {1235, 2}, + {1235, 1}, + {1064, 3}, + {1064, 4}, + {1064, 3}, + {1064, 3}, + {867, 1}, + {867, 1}, + {867, 1}, + {960, 0}, + {960, 3}, + {1329, 0}, + {1329, 3}, + {1266, 0}, + {1266, 3}, + {1268, 0}, + {1268, 2}, + {1267, 3}, + {1267, 1}, + {1093, 3}, + {1177, 2}, + {1098, 3}, + {1171, 1}, + {1171, 1}, + {1168, 2}, + {1269, 1}, + {1269, 2}, + {1269, 1}, + {1269, 2}, + {1343, 1}, + {1343, 3}, + {1100, 6}, + {1317, 1}, + {1317, 1}, + {1317, 1}, + {1317, 1}, + {1227, 0}, + {1227, 2}, + {1227, 3}, {1288, 0}, {1288, 2}, - {1287, 0}, - {1287, 2}, - {1044, 1}, - {981, 1}, - {981, 3}, - {917, 2}, - {1113, 5}, - {1113, 6}, - {1113, 9}, - {1113, 10}, - {1113, 5}, - {1113, 6}, - {1113, 4}, + {1089, 2}, + {1089, 3}, + {1089, 3}, + {1089, 2}, + {1088, 1}, + {1088, 2}, + {1094, 3}, + {1097, 3}, + {1176, 3}, + {1046, 5}, + {1030, 6}, + {1002, 6}, + {1046, 5}, + {1029, 7}, + {1001, 6}, + {1032, 6}, + {1220, 0}, + {1220, 1}, + {1314, 1}, + {1314, 2}, + {929, 3}, + {929, 3}, + {929, 3}, + {929, 3}, + {929, 3}, + {929, 1}, + {929, 2}, + {929, 3}, + {929, 1}, + {929, 2}, + {929, 3}, + {929, 1}, + {929, 2}, + {929, 1}, + {929, 1}, + {929, 2}, + {830, 1}, + {830, 2}, + {830, 2}, + {1048, 4}, + {1004, 5}, + {1192, 1}, + {1192, 2}, + {1003, 1}, + {1003, 1}, + {1003, 3}, + {1003, 3}, + {1080, 8}, + {1274, 0}, + {1274, 2}, + {1273, 0}, + {1273, 3}, + {1301, 0}, + {1301, 2}, + {1300, 0}, + {1300, 2}, + {1056, 1}, + {991, 1}, + {991, 3}, + {928, 2}, + {1125, 5}, + {1125, 6}, + {1125, 9}, + {1125, 10}, + {1125, 5}, + {1125, 6}, + {1125, 4}, + {1125, 5}, } yyXErrors = map[yyXError]string{} - yyParseTab = [4368][]uint16{ + yyParseTab = [4445][]uint16{ // 0 - {2062, 2062, 2564, 51: 2588, 72: 2711, 74: 2567, 83: 2599, 150: 2569, 157: 2597, 2582, 161: 2566, 175: 2593, 212: 2618, 217: 2724, 220: 2562, 228: 2617, 2584, 2720, 2568, 246: 2596, 251: 2572, 256: 2594, 258: 2563, 261: 2600, 279: 2586, 283: 2585, 290: 2598, 293: 2587, 305: 2577, 476: 2608, 2607, 498: 2606, 500: 2719, 507: 2592, 509: 2616, 528: 2714, 532: 2580, 570: 2591, 572: 2605, 649: 2601, 652: 2723, 656: 2565, 2713, 668: 2560, 672: 2571, 677: 2570, 683: 2615, 690: 2561, 713: 2612, 743: 2573, 752: 2614, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2691, 2690, 770: 2712, 2574, 777: 2670, 2702, 780: 2683, 783: 2575, 788: 2634, 804: 2583, 810: 2622, 814: 2717, 849: 2628, 2629, 854: 2632, 858: 2715, 863: 2673, 865: 2685, 867: 2680, 2689, 2692, 2589, 936: 2641, 940: 2578, 978: 2718, 985: 2620, 987: 2621, 2624, 2625, 991: 2627, 993: 2626, 995: 2623, 997: 2630, 2631, 1000: 2590, 2669, 1003: 2637, 1014: 2645, 2638, 2639, 2640, 2646, 2644, 2647, 2648, 1023: 2643, 2642, 1026: 2633, 2595, 2579, 2649, 2661, 2650, 2651, 2652, 2654, 2658, 2655, 2659, 2660, 2653, 2657, 2656, 1043: 2619, 1047: 2635, 1049: 2636, 2581, 1054: 2665, 2663, 1057: 2664, 2662, 1061: 2667, 2668, 2666, 1067: 2708, 2671, 1075: 2722, 2721, 2672, 1082: 2674, 1085: 2675, 2705, 1088: 2709, 1113: 2677, 2678, 1116: 2679, 1118: 2684, 1121: 2681, 2682, 1124: 2707, 2686, 2716, 2688, 2687, 1133: 2693, 1135: 2695, 2694, 2698, 1139: 2699, 1141: 2706, 1144: 2696, 2710, 1149: 2697, 1160: 2700, 2701, 2676, 2704, 1165: 2703, 1315: 2558, 1318: 2559}, - {2557}, - {2556, 6923}, - {18: 6874, 140: 6871, 172: 6872, 198: 6875, 265: 6873, 492: 4217, 572: 1873, 585: 6201, 838: 6870, 859: 4216}, - {172: 6855, 572: 6854}, + {2086, 2086, 2598, 52: 2622, 74: 2747, 76: 2601, 85: 2633, 157: 2603, 164: 2631, 2616, 168: 2600, 182: 2627, 199: 2760, 220: 2652, 227: 2596, 236: 2651, 2618, 2756, 2602, 254: 2630, 260: 2606, 265: 2628, 267: 2597, 270: 2634, 288: 2620, 292: 2619, 299: 2632, 302: 2621, 315: 2611, 486: 2642, 488: 2641, 509: 2640, 511: 2755, 517: 2626, 519: 2650, 538: 2750, 542: 2614, 580: 2625, 2639, 658: 2635, 661: 2759, 666: 2599, 2749, 674: 2594, 682: 2605, 687: 2604, 693: 2649, 700: 2595, 723: 2646, 753: 2607, 762: 2648, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2727, 2726, 780: 2748, 2608, 787: 2706, 2719, 2738, 794: 2609, 799: 2669, 814: 2617, 821: 2656, 825: 2753, 859: 2663, 2664, 864: 2667, 868: 2751, 873: 2709, 876: 2721, 878: 2716, 2725, 2728, 2623, 947: 2676, 951: 2612, 988: 2754, 995: 2654, 997: 2655, 2658, 2659, 1001: 2661, 2662, 1004: 2660, 1006: 2657, 1008: 2665, 2666, 1011: 2624, 2705, 1014: 2672, 1025: 2680, 2673, 2674, 2675, 2681, 2682, 2679, 2683, 2684, 1035: 2678, 2677, 1038: 2668, 2629, 2613, 2685, 2697, 2686, 2687, 2688, 2690, 2694, 2691, 2695, 2696, 2689, 2693, 2692, 1055: 2653, 1059: 2670, 1061: 2671, 2615, 1066: 2701, 2699, 1069: 2700, 2698, 1073: 2703, 2704, 2702, 1079: 2744, 2707, 1087: 2758, 2757, 2708, 1094: 2710, 1097: 2711, 2741, 1100: 2745, 1125: 2713, 2714, 1128: 2715, 1130: 2720, 1133: 2717, 2718, 1138: 2743, 2722, 2752, 2724, 2723, 1147: 2729, 1149: 2731, 2730, 2734, 1153: 2735, 1155: 2742, 1158: 2732, 2746, 1163: 2733, 1174: 2736, 2737, 2712, 2740, 1179: 2739, 1328: 2592, 1331: 2593}, + {2591}, + {2590, 7034}, + {18: 6981, 147: 6977, 179: 6978, 206: 6982, 230: 6980, 274: 6979, 502: 4266, 581: 1896, 595: 6262, 848: 6976, 869: 4265}, + {179: 6961, 581: 6960}, // 5 - {572: 6848}, - {327: 6832, 572: 6833, 585: 6201, 838: 6834}, - {381: 6813, 491: 6814, 572: 2400, 1313: 6812}, - {352: 6768, 572: 6767}, - {2368, 2368, 368: 6766, 375: 6765}, + {581: 6954}, + {336: 6938, 581: 6939, 595: 6262, 848: 6940}, + {390: 6919, 501: 6920, 581: 2425, 1326: 6918}, + {360: 6874, 581: 6873}, + {2393, 2393, 377: 6872, 384: 6871}, // 10 - {405: 6754}, - {478: 6753}, - {2335, 2335, 73: 6030, 510: 6028, 804: 6029, 1011: 6752}, - {18: 2112, 84: 2112, 104: 2112, 140: 6524, 145: 2112, 162: 610, 164: 6460, 169: 5629, 172: 6525, 176: 6526, 198: 6528, 6164, 223: 6516, 512: 6523, 572: 2081, 585: 6201, 645: 6518, 652: 2217, 671: 2112, 679: 6520, 838: 6521, 943: 6527, 955: 5628, 1240: 6517, 1281: 6522, 1312: 6519}, - {18: 6467, 104: 6461, 126: 2081, 140: 6465, 162: 610, 164: 6460, 169: 5629, 172: 6462, 175: 1048, 6463, 198: 6468, 6164, 201: 6464, 223: 6456, 572: 2081, 585: 6201, 652: 6458, 838: 6457, 943: 6466, 955: 6459}, + {415: 6860}, + {487: 6859}, + {2360, 2360, 75: 6091, 520: 6089, 814: 6090, 1022: 6858}, + {18: 2136, 86: 2136, 106: 2136, 147: 6593, 152: 2136, 169: 623, 171: 6522, 176: 5690, 179: 6594, 183: 6595, 206: 6598, 6225, 230: 6597, 6585, 522: 6592, 581: 2105, 595: 6262, 655: 6587, 661: 2242, 681: 2136, 689: 6589, 848: 6590, 954: 6596, 966: 5689, 1253: 6586, 1294: 6591, 1325: 6588}, + {18: 6529, 106: 6523, 132: 2105, 147: 6527, 169: 623, 171: 6522, 176: 5690, 179: 6524, 182: 1061, 6525, 206: 6531, 6225, 209: 6526, 230: 6530, 6518, 581: 2105, 595: 6262, 661: 6520, 848: 6519, 954: 6528, 966: 6521}, // 15 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 6455}, - {2: 867, 867, 867, 867, 867, 867, 867, 10: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 51: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 492: 867, 503: 867, 757: 867, 867, 867, 766: 5436, 871: 5437, 923: 6443}, - {2089, 2089}, - {2088, 2088}, - {476: 2608, 498: 2606, 572: 2605, 649: 2601, 657: 2713, 713: 3914, 743: 2573, 752: 3913, 2602, 2603, 2604, 2613, 760: 2611, 3915, 3916, 770: 5217, 5215, 783: 5216}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 6517}, + {2: 880, 880, 880, 880, 880, 880, 880, 10: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 74: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 502: 880, 514: 880, 767: 880, 880, 880, 776: 5497, 882: 5498, 934: 6505}, + {2113, 2113}, + {2112, 2112}, + {486: 2642, 509: 2640, 581: 2639, 658: 2635, 667: 2749, 723: 3963, 753: 2607, 762: 3962, 2636, 2637, 2638, 2647, 770: 2645, 3964, 3965, 780: 5278, 5276, 794: 5277}, // 20 - {74: 2567, 150: 2569, 157: 2597, 2582, 161: 2566, 217: 6416, 259: 6415, 476: 2608, 2607, 498: 2606, 507: 2592, 509: 6419, 570: 2591, 572: 2605, 649: 2601, 656: 2565, 2713, 713: 6417, 743: 2573, 752: 6418, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 6425, 6424, 770: 2712, 2574, 777: 6422, 6421, 780: 6423, 783: 2575, 788: 6420, 804: 2583, 814: 6434, 849: 6433, 6427, 854: 6428, 863: 6426, 865: 6430, 867: 6431, 6429, 6432, 925: 6414}, - {2: 2057, 2057, 2057, 2057, 2057, 2057, 2057, 10: 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 51: 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 2057, 476: 2057, 2057, 497: 2057, 2057, 507: 2057, 570: 2057, 572: 2057, 649: 2057, 656: 2057, 2057, 668: 2057, 743: 2057}, - {2: 2056, 2056, 2056, 2056, 2056, 2056, 2056, 10: 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 51: 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 2056, 476: 2056, 2056, 497: 2056, 2056, 507: 2056, 570: 2056, 572: 2056, 649: 2056, 656: 2056, 2056, 668: 2056, 743: 2056}, - {2: 2055, 2055, 2055, 2055, 2055, 2055, 2055, 10: 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 51: 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 2055, 476: 2055, 2055, 497: 2055, 2055, 507: 2055, 570: 2055, 572: 2055, 649: 2055, 656: 2055, 2055, 668: 2055, 743: 2055}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 6384, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 2608, 2607, 497: 6383, 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 656: 6385, 2713, 664: 3947, 2785, 2786, 2784, 2730, 713: 2731, 740: 6381, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 6382}, + {76: 2601, 157: 2603, 164: 2631, 2616, 168: 2600, 199: 6478, 268: 6477, 486: 2642, 488: 2641, 509: 2640, 517: 2626, 519: 6481, 580: 2625, 2639, 658: 2635, 666: 2599, 2749, 723: 6479, 753: 2607, 762: 6480, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 6487, 6486, 780: 2748, 2608, 787: 6484, 6485, 6483, 794: 2609, 799: 6482, 814: 2617, 825: 6496, 859: 6495, 6489, 864: 6490, 873: 6488, 876: 6492, 878: 6493, 6491, 6494, 936: 6476}, + {2: 2081, 2081, 2081, 2081, 2081, 2081, 2081, 10: 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 74: 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 2081, 486: 2081, 488: 2081, 507: 2081, 509: 2081, 517: 2081, 580: 2081, 2081, 658: 2081, 666: 2081, 2081, 674: 2081, 753: 2081}, + {2: 2080, 2080, 2080, 2080, 2080, 2080, 2080, 10: 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 74: 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 2080, 486: 2080, 488: 2080, 507: 2080, 509: 2080, 517: 2080, 580: 2080, 2080, 658: 2080, 666: 2080, 2080, 674: 2080, 753: 2080}, + {2: 2079, 2079, 2079, 2079, 2079, 2079, 2079, 10: 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 74: 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 2079, 486: 2079, 488: 2079, 507: 2079, 509: 2079, 517: 2079, 580: 2079, 2079, 658: 2079, 666: 2079, 2079, 674: 2079, 753: 2079}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 6445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 2642, 488: 2641, 507: 6444, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 666: 6446, 2749, 674: 2769, 676: 3996, 2824, 2825, 2823, 723: 2770, 751: 6442, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 6443}, // 25 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6380, 2785, 2786, 2784}, - {158: 6378}, - {572: 6296, 585: 6201, 838: 6295, 999: 6374}, - {572: 6296, 585: 6201, 838: 6295, 999: 6294}, - {140: 6292}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6441, 2824, 2825, 2823}, + {165: 6439}, + {581: 6357, 595: 6262, 848: 6356, 1010: 6435}, + {581: 6357, 595: 6262, 848: 6356, 1010: 6355}, + {147: 6353}, // 30 - {140: 6287}, - {140: 6281}, - {16: 3862, 18: 6125, 30: 6154, 6153, 103: 603, 112: 603, 126: 603, 610, 140: 6114, 144: 610, 164: 6163, 183: 6138, 192: 6123, 199: 6164, 204: 610, 213: 6165, 218: 6148, 603, 253: 6145, 278: 6144, 309: 6137, 315: 6160, 317: 6142, 320: 6124, 328: 6140, 6158, 331: 6131, 339: 6129, 341: 6147, 345: 6135, 347: 6146, 6118, 6157, 351: 6162, 353: 6127, 360: 6119, 367: 6133, 377: 6122, 6121, 384: 6161, 388: 6149, 391: 6155, 6152, 6156, 6151, 406: 6141, 508: 3863, 572: 6117, 596: 6136, 650: 3861, 652: 6126, 656: 6159, 677: 6116, 779: 6132, 919: 6150, 943: 6139, 948: 6128, 964: 6143, 1025: 6130, 1098: 6120, 1305: 6134, 1311: 6115}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 6103, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6105, 2785, 2786, 2784, 1291: 6104}, - {2: 867, 867, 867, 867, 867, 867, 867, 10: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 51: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 492: 867, 499: 867, 757: 867, 867, 867, 766: 5436, 871: 5437, 923: 6090}, + {147: 6348}, + {147: 6342}, + {16: 3911, 18: 6186, 30: 6215, 6214, 105: 616, 128: 616, 132: 616, 134: 623, 147: 6175, 151: 623, 171: 6224, 190: 6199, 200: 6184, 207: 6225, 212: 623, 221: 6226, 225: 6209, 616, 262: 6206, 287: 6205, 319: 6198, 325: 6221, 327: 6203, 330: 6185, 337: 6201, 6219, 340: 6192, 348: 6190, 350: 6208, 354: 6196, 356: 6207, 6179, 6218, 6223, 361: 6188, 368: 6180, 376: 6194, 386: 6183, 6182, 393: 6222, 398: 6210, 401: 6216, 6213, 6217, 6212, 416: 6202, 508: 3912, 581: 6178, 606: 6197, 660: 3910, 6187, 666: 6220, 687: 6177, 790: 6193, 930: 6211, 954: 6200, 959: 6189, 974: 6204, 1037: 6191, 1110: 6181, 1318: 6195, 1324: 6176}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 6164, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6166, 2824, 2825, 2823, 1304: 6165}, + {2: 880, 880, 880, 880, 880, 880, 880, 10: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 74: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 502: 880, 510: 880, 767: 880, 880, 880, 776: 5497, 882: 5498, 934: 6151}, // 35 - {2: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 10: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 51: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 499: 1071, 757: 5441, 5440, 5439, 842: 5442, 891: 6056}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6051, 2785, 2786, 2784}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6045, 2785, 2786, 2784}, - {175: 6043}, - {175: 1049}, + {2: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 10: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 74: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 510: 1084, 767: 5502, 5501, 5500, 852: 5503, 902: 6117}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6112, 2824, 2825, 2823}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6106, 2824, 2825, 2823}, + {182: 6104}, + {182: 1062}, // 40 - {1047, 1047, 73: 6030, 510: 6028, 653: 6027, 804: 6029, 1011: 6026}, - {1036, 1036}, - {1035, 1035}, - {478: 6025}, - {2: 872, 872, 872, 872, 872, 872, 872, 10: 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 51: 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 5995, 6001, 6002, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 476: 872, 478: 872, 872, 872, 482: 872, 485: 872, 872, 488: 872, 872, 872, 495: 872, 498: 872, 507: 872, 872, 511: 872, 518: 5998, 523: 872, 533: 872, 567: 872, 570: 872, 872, 573: 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 585: 872, 872, 872, 872, 872, 872, 872, 872, 595: 872, 872, 598: 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 651: 872, 654: 3572, 749: 3570, 3571, 757: 5441, 5440, 5439, 766: 5436, 774: 5994, 5997, 5993, 789: 5916, 792: 5991, 842: 5992, 871: 5990, 1131: 6000, 5996, 1299: 5989, 5999}, + {1060, 1060, 75: 6091, 520: 6089, 663: 6088, 814: 6090, 1022: 6087}, + {1049, 1049}, + {1048, 1048}, + {487: 6086}, + {2: 885, 885, 885, 885, 885, 885, 885, 10: 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 74: 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 6056, 6062, 6063, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 486: 885, 885, 489: 885, 885, 885, 496: 885, 885, 885, 885, 885, 505: 885, 508: 885, 885, 517: 885, 521: 885, 528: 6059, 533: 885, 543: 885, 577: 885, 580: 885, 582: 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 595: 885, 885, 885, 885, 885, 885, 885, 885, 885, 606: 885, 608: 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 885, 662: 885, 664: 3621, 759: 3619, 3620, 767: 5502, 5501, 5500, 776: 5497, 784: 6055, 6058, 6054, 800: 5977, 802: 6052, 852: 6053, 882: 6051, 1145: 6061, 6057, 1312: 6050, 6060}, // 45 - {257, 257, 50: 257, 475: 257, 477: 257, 483: 257, 257, 493: 257, 257, 496: 257, 257, 499: 257, 257, 2745, 503: 5964, 257, 257, 516: 257, 795: 2746, 5965, 1229: 5963}, - {862, 862, 50: 862, 475: 862, 477: 862, 483: 862, 862, 493: 862, 862, 496: 862, 862, 499: 862, 862, 504: 862, 862, 516: 5954, 944: 5956, 970: 5955}, - {1311, 1311, 50: 1311, 475: 1311, 477: 1311, 483: 1311, 1311, 493: 1311, 1311, 496: 1311, 1311, 499: 1311, 1311, 504: 1311, 2748, 772: 2749, 817: 5950}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5945}, - {578: 3922, 917: 3921, 981: 3920}, + {266, 266, 73: 266, 485: 266, 488: 266, 494: 266, 266, 503: 266, 266, 506: 266, 266, 510: 266, 266, 513: 2784, 6025, 266, 266, 526: 266, 806: 2785, 6026, 1242: 6024}, + {875, 875, 73: 875, 485: 875, 488: 875, 494: 875, 875, 503: 875, 875, 506: 875, 875, 510: 875, 875, 515: 875, 875, 526: 6015, 955: 6017, 980: 6016}, + {1324, 1324, 73: 1324, 485: 1324, 488: 1324, 494: 1324, 1324, 503: 1324, 1324, 506: 1324, 1324, 510: 1324, 1324, 515: 1324, 2787, 782: 2788, 828: 6011}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6006}, + {588: 3971, 928: 3970, 991: 3969}, // 50 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5932, 2785, 2786, 2784, 935: 5931, 1173: 5929, 1292: 5930}, - {476: 2608, 2607, 498: 2606, 572: 2605, 649: 2601, 713: 5928, 752: 3907, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 3909, 3908}, - {843, 843, 50: 843, 475: 843, 477: 843, 484: 843}, - {842, 842, 50: 842, 475: 842, 477: 842, 484: 842}, - {483: 5913, 493: 5914, 5915, 1302: 5912}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5993, 2824, 2825, 2823, 946: 5992, 1187: 5990, 1305: 5991}, + {486: 2642, 488: 2641, 509: 2640, 581: 2639, 658: 2635, 723: 5989, 762: 3956, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 3958, 3957}, + {856, 856, 73: 856, 485: 856, 488: 856, 495: 856}, + {855, 855, 73: 855, 485: 855, 488: 855, 495: 855}, + {494: 5974, 503: 5975, 5976, 1315: 5973}, // 55 - {499, 499, 483: 828, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {483: 831, 493: 831, 831}, - {501, 501, 483: 829, 493: 829, 829}, - {253: 5897, 278: 5896}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 5738, 5733, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 5736, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 5742, 2831, 5735, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 5739, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 5740, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 5734, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 5743, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 5741, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 5737, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 482: 5745, 508: 3863, 571: 5749, 590: 5748, 650: 3861, 664: 5746, 2785, 2786, 2784, 779: 5750, 835: 5747, 983: 5751, 1167: 5744}, + {510, 510, 494: 841, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {494: 844, 503: 844, 844}, + {512, 512, 494: 842, 503: 842, 842}, + {262: 5958, 287: 5957}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 5799, 5794, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 5797, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 5803, 2870, 5796, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 5800, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 5801, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 5795, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 5804, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 5802, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 5798, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 490: 5806, 508: 3912, 582: 5810, 600: 5809, 660: 3910, 676: 5807, 2824, 2825, 2823, 790: 5811, 845: 5808, 993: 5812, 1181: 5805}, // 60 - {17: 5606, 212: 5611, 218: 5609, 220: 5604, 5610, 282: 5608, 321: 5607, 5612, 325: 5605, 342: 5613, 383: 5614, 593: 5603, 870: 5602}, - {22: 582, 126: 582, 582, 141: 4776, 148: 582, 192: 582, 200: 582, 211: 582, 225: 582, 238: 582, 260: 582, 263: 582, 533: 582, 572: 582, 816: 4775, 833: 5575}, + {17: 5667, 220: 5672, 225: 5670, 227: 5665, 5671, 244: 5673, 291: 5669, 331: 5668, 334: 5666, 351: 5674, 392: 5675, 604: 5664, 881: 5663}, + {22: 595, 132: 595, 134: 595, 148: 4835, 155: 595, 200: 595, 208: 595, 219: 595, 233: 595, 247: 595, 269: 595, 272: 595, 543: 595, 581: 595, 827: 4834, 843: 5636}, + {586, 586}, + {585, 585}, + {584, 584}, + // 65 + {583, 583}, + {582, 582}, + {581, 581}, + {580, 580}, + {579, 579}, + // 70 + {578, 578}, + {577, 577}, + {576, 576}, + {575, 575}, + {574, 574}, + // 75 {573, 573}, {572, 572}, {571, 571}, - // 65 {570, 570}, {569, 569}, + // 80 {568, 568}, {567, 567}, {566, 566}, - // 70 {565, 565}, {564, 564}, + // 85 {563, 563}, {562, 562}, {561, 561}, - // 75 {560, 560}, {559, 559}, + // 90 {558, 558}, {557, 557}, {556, 556}, - // 80 {555, 555}, {554, 554}, + // 95 {553, 553}, {552, 552}, {551, 551}, - // 85 {550, 550}, {549, 549}, + // 100 {548, 548}, {547, 547}, {546, 546}, - // 90 {545, 545}, {544, 544}, + // 105 {543, 543}, {542, 542}, {541, 541}, - // 95 {540, 540}, {539, 539}, + // 110 {538, 538}, {537, 537}, {536, 536}, - // 100 {535, 535}, {534, 534}, + // 115 {533, 533}, {532, 532}, {531, 531}, - // 105 {530, 530}, {529, 529}, + // 120 {528, 528}, {527, 527}, {526, 526}, - // 110 {525, 525}, {524, 524}, + // 125 {523, 523}, {522, 522}, {521, 521}, - // 115 {520, 520}, {519, 519}, + // 130 {518, 518}, {517, 517}, {516, 516}, - // 120 {515, 515}, {514, 514}, + // 135 {513, 513}, - {512, 512}, {511, 511}, - // 125 - {510, 510}, {509, 509}, {508, 508}, {507, 507}, + // 140 {506, 506}, - // 130 {505, 505}, {504, 504}, {503, 503}, {502, 502}, + // 145 + {501, 501}, {500, 500}, - // 135 + {499, 499}, {498, 498}, {497, 497}, + // 150 {496, 496}, {495, 495}, {494, 494}, - // 140 {493, 493}, {492, 492}, - {491, 491}, - {490, 490}, - {489, 489}, - // 145 - {488, 488}, - {487, 487}, - {486, 486}, - {485, 485}, - {484, 484}, - // 150 - {483, 483}, - {482, 482}, - {481, 481}, - {455, 455}, - {2: 401, 401, 401, 401, 401, 401, 401, 10: 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 51: 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 572: 5572, 1277: 5573}, // 155 - {263, 263, 484: 263}, - {2: 867, 867, 867, 867, 867, 867, 867, 10: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 51: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 476: 867, 492: 867, 582: 867, 757: 867, 867, 867, 766: 5436, 871: 5437, 923: 5438}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 5435}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5277, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 5279, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 5285, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 5281, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 5278, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 5286, 3232, 2956, 3184, 5280, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 5283, 5387, 2868, 3107, 5284, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 5282, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5288, 500: 5311, 570: 5305, 647: 5309, 649: 5294, 652: 5304, 654: 5298, 657: 5307, 664: 3517, 2785, 2786, 2784, 5299, 672: 5303, 677: 5300, 742: 5287, 5302, 805: 5289, 814: 5293, 858: 5308, 870: 5306, 941: 5290, 962: 5291, 5297, 968: 5292, 5295, 977: 5301, 979: 5310, 1129: 5388}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5277, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 5279, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 5285, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 5281, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 5278, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 5286, 3232, 2956, 3184, 5280, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 5283, 2867, 2868, 3107, 5284, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 5282, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5288, 500: 5311, 570: 5305, 647: 5309, 649: 5294, 652: 5304, 654: 5298, 657: 5307, 664: 3517, 2785, 2786, 2784, 5299, 672: 5303, 677: 5300, 742: 5287, 5302, 805: 5289, 814: 5293, 858: 5308, 870: 5306, 941: 5290, 962: 5291, 5297, 968: 5292, 5295, 977: 5301, 979: 5310, 1129: 5296}, + {466, 466}, + {2: 410, 410, 410, 410, 410, 410, 410, 10: 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 74: 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 410, 581: 5633, 1290: 5634}, + {272, 272, 495: 272}, + {2: 880, 880, 880, 880, 880, 880, 880, 10: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 74: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 486: 880, 502: 880, 593: 880, 767: 880, 880, 880, 776: 5497, 882: 5498, 934: 5499}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 5496}, // 160 - {23: 5236, 201: 5237}, - {126: 5219, 201: 5234, 572: 5220, 1157: 5233}, - {126: 5219, 201: 5221, 572: 5220, 1157: 5218}, - {475: 5202, 496: 66, 1275: 5201}, - {28: 5196, 130: 4735, 142: 5197, 476: 5194, 511: 2759, 737: 5195, 904: 5198}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5338, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 5340, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 5346, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 5342, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 5339, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 5347, 3276, 2996, 3228, 5341, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 5344, 5448, 2907, 3147, 5345, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 5343, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5349, 511: 5372, 580: 5366, 657: 5370, 5355, 661: 5365, 664: 5359, 667: 5368, 674: 5360, 676: 3566, 2824, 2825, 2823, 682: 5364, 687: 5361, 752: 5348, 5363, 815: 5350, 825: 5354, 868: 5369, 881: 5367, 952: 5351, 972: 5352, 5358, 978: 5353, 5356, 987: 5362, 989: 5371, 1143: 5449}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5338, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 5340, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 5346, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 5342, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 5339, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 5347, 3276, 2996, 3228, 5341, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 5344, 2906, 2907, 3147, 5345, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 5343, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5349, 511: 5372, 580: 5366, 657: 5370, 5355, 661: 5365, 664: 5359, 667: 5368, 674: 5360, 676: 3566, 2824, 2825, 2823, 682: 5364, 687: 5361, 752: 5348, 5363, 815: 5350, 825: 5354, 868: 5369, 881: 5367, 952: 5351, 972: 5352, 5358, 978: 5353, 5356, 987: 5362, 989: 5371, 1143: 5357}, + {23: 5297, 209: 5298}, + {132: 5280, 209: 5295, 581: 5281, 1171: 5294}, + {132: 5280, 209: 5282, 581: 5281, 1171: 5279}, // 165 - {28: 60, 130: 60, 142: 60, 225: 5193, 476: 60, 511: 60}, - {311: 5176}, - {382: 2725}, - {337: 2726, 814: 2727}, - {940: 2729}, + {485: 5262, 506: 70, 1288: 5261}, + {28: 5256, 137: 4794, 149: 5257, 486: 5254, 521: 2798, 747: 5255, 915: 5258}, + {28: 64, 137: 64, 149: 64, 233: 5253, 486: 64, 521: 64}, + {321: 5236}, + {391: 2761}, // 170 - {478: 2728}, - {1, 1}, - {200: 2742, 476: 2608, 2607, 2743, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 656: 2741, 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 2740}, - {492: 4217, 572: 1873, 859: 4216}, - {457, 457, 483: 828, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, + {244: 2764, 346: 2762, 825: 2763}, + {951: 2768}, + {487: 2767}, + {487: 2765}, + {487: 2766}, // 175 - {459, 459, 483: 829, 493: 829, 829}, - {464, 464}, - {463, 463}, - {462, 462}, - {461, 461}, + {1, 1}, + {2, 2}, + {208: 2781, 486: 2642, 2782, 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 666: 2780, 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 2779}, + {502: 4266, 581: 1896, 869: 4265}, + {468, 468, 494: 841, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, // 180 - {460, 460}, - {458, 458}, - {456, 456}, - {7, 7}, - {200: 4210, 476: 2608, 2607, 4211, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 4209}, + {470, 470, 494: 842, 503: 842, 842}, + {475, 475}, + {474, 474}, + {473, 473}, + {472, 472}, // 185 - {142: 2744}, - {3, 3}, - {257, 257, 496: 257, 501: 2745, 504: 257, 257, 795: 2746, 2747}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4208}, - {256, 256, 50: 256, 475: 256, 477: 256, 483: 256, 256, 493: 256, 256, 496: 256, 256, 499: 256, 256, 504: 256, 256, 516: 256, 256, 519: 256}, + {471, 471}, + {469, 469}, + {467, 467}, + {8, 8}, + {208: 4259, 486: 2642, 4260, 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 4258}, // 190 - {1311, 1311, 496: 1311, 504: 1311, 2748, 772: 2749, 817: 2750}, - {663: 2773}, - {1310, 1310, 50: 1310, 128: 1310, 475: 1310, 477: 1310, 483: 1310, 1310, 493: 1310, 1310, 496: 1310, 1310, 499: 1310, 1310, 504: 1310}, - {883, 883, 496: 2751, 504: 2752, 773: 2753, 834: 2754}, - {511: 2759, 580: 2761, 737: 2758, 745: 2760, 886: 2768}, + {149: 2783}, + {4, 4}, + {266, 266, 506: 266, 513: 2784, 515: 266, 266, 806: 2785, 2786}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4257}, + {265, 265, 73: 265, 485: 265, 488: 265, 494: 265, 265, 503: 265, 265, 506: 265, 265, 510: 265, 265, 515: 265, 265, 526: 265, 265, 529: 265}, // 195 - {10: 2755, 273: 2756, 1225: 2757}, - {882, 882, 50: 882, 475: 882, 477: 882, 483: 882, 882, 493: 882, 882, 497: 882, 499: 882, 882}, - {5, 5}, - {511: 891, 527: 891, 578: 891, 580: 891}, - {511: 890, 527: 890, 578: 890, 580: 890}, + {1324, 1324, 506: 1324, 515: 1324, 2787, 782: 2788, 828: 2789}, + {673: 2812}, + {1323, 1323, 73: 1323, 135: 1323, 485: 1323, 488: 1323, 494: 1323, 1323, 503: 1323, 1323, 506: 1323, 1323, 510: 1323, 1323, 515: 1323}, + {896, 896, 506: 2790, 515: 2791, 783: 2792, 844: 2793}, + {521: 2798, 590: 2800, 747: 2797, 755: 2799, 898: 2807}, // 200 - {511: 2759, 527: 889, 578: 889, 580: 2761, 737: 2758, 745: 2760, 886: 2762, 1219: 2763}, - {1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 15: 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 50: 1992, 1992, 53: 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 84: 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 105: 1992, 1992, 109: 1992, 1992, 113: 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 166: 1992, 186: 1992, 214: 1992, 475: 1992, 1992, 1992, 481: 1992, 1992, 1992, 1992, 487: 1992, 491: 1992, 1992, 1992, 1992, 497: 1992, 1992, 1992, 1992, 506: 1992, 1992, 1992, 1992, 527: 1992, 572: 1992, 578: 1992, 649: 1992, 1992, 652: 1992, 656: 1992}, - {1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 15: 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 53: 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 105: 1990, 1990, 109: 1990, 1990, 113: 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 132: 1990, 1990, 1990, 1990, 166: 1990, 186: 1990, 1990, 191: 1990, 214: 1990, 254: 1990, 475: 1990, 1990, 1990, 481: 1990, 1990, 1990, 1990, 487: 1990, 491: 1990, 1990, 1990, 1990, 496: 1990, 1990, 1990, 1990, 1990, 1990, 504: 1990, 506: 1990, 1990, 1990, 1990, 527: 1990, 570: 1990, 572: 1990, 578: 1990, 649: 1990, 1990, 652: 1990, 656: 1990, 1990, 1990, 661: 1990, 743: 1990}, - {895, 895, 9: 895, 50: 895, 166: 895, 475: 895, 477: 895, 483: 895, 895, 493: 895, 895, 497: 895, 499: 895, 895, 527: 895, 578: 895}, - {894, 894, 9: 894, 50: 894, 166: 894, 475: 894, 477: 894, 483: 894, 894, 493: 894, 894, 497: 894, 499: 894, 894, 527: 894, 578: 894}, + {10: 2794, 282: 2795, 1238: 2796}, + {895, 895, 73: 895, 485: 895, 488: 895, 494: 895, 895, 503: 895, 895, 507: 895, 510: 895, 895}, + {6, 6}, + {521: 904, 537: 904, 588: 904, 590: 904}, + {521: 903, 537: 903, 588: 903, 590: 903}, // 205 - {527: 888, 578: 888}, - {527: 2765, 578: 2764, 1297: 2766}, - {156: 893}, - {156: 892}, - {156: 2767}, + {521: 2798, 537: 902, 588: 902, 590: 2800, 747: 2797, 755: 2799, 898: 2801, 1232: 2802}, + {2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 15: 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 52: 2015, 54: 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 86: 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 107: 2015, 2015, 2015, 2015, 114: 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 2015, 127: 2015, 173: 2015, 193: 2015, 223: 2015, 485: 2015, 2015, 488: 2015, 490: 2015, 492: 2015, 2015, 2015, 2015, 501: 2015, 2015, 2015, 2015, 507: 2015, 2015, 2015, 2015, 2015, 517: 2015, 2015, 2015, 537: 2015, 581: 2015, 588: 2015, 658: 2015, 660: 2015, 2015, 666: 2015}, + {2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 15: 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 54: 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 107: 2013, 2013, 2013, 2013, 114: 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 2013, 127: 2013, 139: 2013, 2013, 2013, 2013, 173: 2013, 193: 2013, 2013, 198: 2013, 223: 2013, 263: 2013, 485: 2013, 2013, 488: 2013, 490: 2013, 492: 2013, 2013, 2013, 2013, 501: 2013, 2013, 2013, 2013, 506: 2013, 2013, 2013, 2013, 2013, 2013, 513: 2013, 515: 2013, 517: 2013, 2013, 2013, 537: 2013, 580: 2013, 2013, 588: 2013, 658: 2013, 660: 2013, 2013, 666: 2013, 2013, 2013, 671: 2013, 753: 2013}, + {908, 908, 9: 908, 73: 908, 173: 908, 485: 908, 488: 908, 494: 908, 908, 503: 908, 908, 507: 908, 510: 908, 908, 537: 908, 588: 908}, + {907, 907, 9: 907, 73: 907, 173: 907, 485: 907, 488: 907, 494: 907, 907, 503: 907, 907, 507: 907, 510: 907, 907, 537: 907, 588: 907}, // 210 - {884, 884, 50: 884, 475: 884, 477: 884, 483: 884, 884, 493: 884, 884, 497: 884, 499: 884, 884}, - {887, 887, 9: 2769, 50: 887, 166: 2770, 475: 887, 477: 887, 483: 887, 887, 493: 887, 887, 497: 887, 499: 887, 887}, - {511: 2759, 580: 2761, 737: 2758, 745: 2760, 886: 2772}, - {511: 2759, 580: 2761, 737: 2758, 745: 2760, 886: 2771}, - {885, 885, 50: 885, 475: 885, 477: 885, 483: 885, 885, 493: 885, 885, 497: 885, 499: 885, 885}, + {537: 901, 588: 901}, + {537: 2804, 588: 2803, 1310: 2805}, + {163: 906}, + {163: 905}, + {163: 2806}, // 215 - {886, 886, 50: 886, 475: 886, 477: 886, 483: 886, 886, 493: 886, 886, 497: 886, 499: 886, 886}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 2777, 875: 3267, 905: 3266}, - {1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 4205, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 477: 1551, 1551, 1551, 1551, 1551, 483: 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 492: 1551, 1551, 1551, 496: 1551, 1551, 499: 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 509: 1551, 1551, 512: 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 534: 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 568: 1551, 1551, 597: 1551, 655: 1551, 659: 1551, 1551}, - {1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 4202, 1550, 1550, 1550, 1550, 1550, 483: 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 492: 1550, 1550, 1550, 496: 1550, 1550, 499: 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 509: 1550, 1550, 512: 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 534: 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 568: 1550, 1550, 597: 1550, 655: 1550, 659: 1550, 1550}, - {762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 477: 762, 762, 762, 762, 762, 483: 762, 762, 762, 762, 762, 762, 762, 762, 492: 762, 762, 762, 496: 762, 762, 499: 762, 762, 762, 762, 762, 762, 762, 762, 509: 762, 762, 512: 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 534: 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 568: 762, 762, 597: 762, 662: 4200}, + {897, 897, 73: 897, 485: 897, 488: 897, 494: 897, 897, 503: 897, 897, 507: 897, 510: 897, 897}, + {900, 900, 9: 2808, 73: 900, 173: 2809, 485: 900, 488: 900, 494: 900, 900, 503: 900, 900, 507: 900, 510: 900, 900}, + {521: 2798, 590: 2800, 747: 2797, 755: 2799, 898: 2811}, + {521: 2798, 590: 2800, 747: 2797, 755: 2799, 898: 2810}, + {898, 898, 73: 898, 485: 898, 488: 898, 494: 898, 898, 503: 898, 898, 507: 898, 510: 898, 898}, // 220 - {1318, 1318, 9: 1318, 50: 1318, 128: 1318, 475: 1318, 477: 1318, 483: 1318, 1318, 493: 1318, 1318, 496: 1318, 1318, 499: 1318, 1318, 504: 1318, 1318, 510: 3371, 512: 3369, 3370, 3368, 3366, 517: 1318, 519: 1318, 527: 1318, 530: 1318, 1318, 4199, 534: 4198, 738: 3367, 3365, 1280: 4197}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4196}, - {476: 4168}, - {1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 477: 1952, 1952, 481: 1952, 483: 1952, 1952, 1952, 1952, 492: 1952, 1952, 1952, 496: 1952, 1952, 499: 1952, 1952, 1952, 4151, 1952, 1952, 1952, 1952, 509: 1952, 1952, 512: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 522: 1952, 524: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 534: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 548: 1952, 1952, 558: 4148, 4146, 4145, 4153, 4147, 4149, 4150, 4152, 1204: 4144, 1248: 4143}, - {1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 477: 1927, 1927, 481: 1927, 483: 1927, 1927, 1927, 1927, 492: 1927, 1927, 1927, 496: 1927, 1927, 499: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 509: 1927, 1927, 512: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 522: 1927, 524: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 534: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 548: 1927, 1927, 558: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927}, + {899, 899, 73: 899, 485: 899, 488: 899, 494: 899, 899, 503: 899, 899, 507: 899, 510: 899, 899}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 2816, 886: 3316, 916: 3315}, + {1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 4254, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 487: 1573, 1573, 1573, 491: 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 502: 1573, 1573, 1573, 506: 1573, 1573, 510: 1573, 1573, 1573, 1573, 1573, 1573, 1573, 518: 1573, 1573, 1573, 522: 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 544: 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 578: 1573, 1573, 607: 1573, 665: 1573, 669: 1573, 1573}, + {1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 4251, 1572, 1572, 1572, 491: 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 502: 1572, 1572, 1572, 506: 1572, 1572, 510: 1572, 1572, 1572, 1572, 1572, 1572, 1572, 518: 1572, 1572, 1572, 522: 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 544: 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 578: 1572, 1572, 607: 1572, 665: 1572, 669: 1572, 1572}, + {775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 487: 775, 775, 775, 491: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 502: 775, 775, 775, 506: 775, 775, 510: 775, 775, 775, 775, 775, 775, 775, 518: 775, 775, 775, 522: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 544: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 578: 775, 775, 607: 775, 672: 4249}, // 225 - {1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 477: 1900, 1900, 4115, 4114, 1900, 483: 1900, 1900, 1900, 1900, 488: 3712, 3713, 3718, 492: 1900, 1900, 1900, 496: 1900, 1900, 499: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 509: 1900, 1900, 512: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 4119, 1900, 3714, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 534: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 4118, 1900, 1900, 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 4116, 568: 4125, 4126, 815: 4117, 1120: 4120, 1189: 4122, 1243: 4121, 1251: 4123, 1293: 4124}, - {1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 4111, 1849, 1849, 1849, 1849, 1849, 483: 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 492: 1849, 1849, 1849, 496: 1849, 1849, 499: 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 509: 1849, 1849, 512: 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 534: 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 568: 1849, 1849, 597: 1849, 655: 1849, 659: 1849, 1849}, - {1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 668: 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848}, - {1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 668: 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847}, - {1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 668: 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846}, + {1331, 1331, 9: 1331, 73: 1331, 135: 1331, 485: 1331, 488: 1331, 494: 1331, 1331, 503: 1331, 1331, 506: 1331, 1331, 510: 1331, 1331, 515: 1331, 1331, 520: 3420, 522: 3418, 3419, 3417, 3415, 527: 1331, 529: 1331, 537: 1331, 540: 1331, 1331, 4248, 555: 4247, 748: 3416, 3414, 1293: 4246}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4245}, + {486: 4217}, + {1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 487: 1975, 1975, 492: 1975, 494: 1975, 1975, 1975, 1975, 502: 1975, 1975, 1975, 506: 1975, 1975, 510: 1975, 1975, 4200, 1975, 1975, 1975, 1975, 518: 1975, 1975, 1975, 522: 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 532: 1975, 534: 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 544: 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 558: 1975, 1975, 568: 4197, 4195, 4194, 4202, 4196, 4198, 4199, 4201, 1217: 4193, 1261: 4192}, + {1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 487: 1950, 1950, 492: 1950, 494: 1950, 1950, 1950, 1950, 502: 1950, 1950, 1950, 506: 1950, 1950, 510: 1950, 1950, 1950, 1950, 1950, 1950, 1950, 518: 1950, 1950, 1950, 522: 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 532: 1950, 534: 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 544: 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 558: 1950, 1950, 568: 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950}, // 230 - {1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 668: 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845}, - {1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 668: 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844}, - {1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1249, 1843, 1843, 1843, 1843, 1843, 483: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 492: 1843, 1843, 1843, 496: 1843, 1843, 499: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 509: 1843, 1843, 512: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 534: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 568: 1843, 1843, 597: 1843, 655: 1843, 659: 1843, 1843}, - {1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 668: 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842}, - {1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 668: 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841}, + {1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 487: 1923, 1923, 4164, 491: 4163, 1923, 494: 1923, 1923, 1923, 1923, 3761, 3762, 3767, 502: 1923, 1923, 1923, 506: 1923, 1923, 510: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 518: 1923, 1923, 1923, 522: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 4168, 1923, 3763, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 544: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 4167, 1923, 1923, 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 4165, 578: 4174, 4175, 826: 4166, 1132: 4169, 1203: 4171, 1256: 4170, 1264: 4172, 1306: 4173}, + {1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 4160, 1872, 1872, 1872, 491: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 502: 1872, 1872, 1872, 506: 1872, 1872, 510: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 518: 1872, 1872, 1872, 522: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 544: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 578: 1872, 1872, 607: 1872, 665: 1872, 669: 1872, 1872}, + {1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 680: 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871, 1871}, + {1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 680: 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870, 1870}, + {1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 680: 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869, 1869}, // 235 - {1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 668: 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840}, - {1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 668: 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839}, - {1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 668: 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838}, - {1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 668: 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837}, - {1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 668: 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836}, + {1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 680: 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868, 1868}, + {1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 680: 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867, 1867}, + {1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1262, 1866, 1866, 1866, 491: 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 502: 1866, 1866, 1866, 506: 1866, 1866, 510: 1866, 1866, 1866, 1866, 1866, 1866, 1866, 518: 1866, 1866, 1866, 522: 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 544: 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 578: 1866, 1866, 607: 1866, 665: 1866, 669: 1866, 1866}, + {1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 680: 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865}, + {1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 680: 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864, 1864}, // 240 - {1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 668: 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835}, - {1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 668: 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834}, - {1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 668: 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833}, - {1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 668: 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832}, - {1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 4106, 1831, 1831, 1831, 1831, 1831, 483: 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 492: 1831, 1831, 1831, 496: 1831, 1831, 499: 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 509: 1831, 1831, 512: 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 534: 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 568: 1831, 1831, 597: 1831, 655: 1831, 659: 1831, 1831}, + {1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 680: 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863, 1863}, + {1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 680: 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862, 1862}, + {1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 680: 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861, 1861}, + {1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 680: 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860, 1860}, + {1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 680: 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859, 1859}, // 245 - {1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 668: 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830}, - {1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 668: 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829}, - {1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 668: 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828}, - {1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 668: 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827}, - {1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 668: 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826}, + {1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 680: 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858, 1858}, + {1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 680: 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857, 1857}, + {1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 680: 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856, 1856}, + {1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 680: 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855, 1855}, + {1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 4155, 1854, 1854, 1854, 491: 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 502: 1854, 1854, 1854, 506: 1854, 1854, 510: 1854, 1854, 1854, 1854, 1854, 1854, 1854, 518: 1854, 1854, 1854, 522: 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 544: 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 578: 1854, 1854, 607: 1854, 665: 1854, 669: 1854, 1854}, // 250 - {1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 668: 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825}, - {1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 668: 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824}, - {1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 668: 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823}, - {1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 668: 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822}, - {1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 668: 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821}, + {1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 680: 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853, 1853}, + {1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 680: 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852, 1852}, + {1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 680: 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851, 1851}, + {1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 680: 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850, 1850}, + {1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 680: 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849}, // 255 - {1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1248, 1820, 1820, 1820, 1820, 1820, 483: 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 492: 1820, 1820, 1820, 496: 1820, 1820, 499: 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 509: 1820, 1820, 512: 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 534: 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 568: 1820, 1820, 597: 1820, 655: 1820, 659: 1820, 1820}, - {1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 668: 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819}, - {1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 668: 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818}, - {1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 668: 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817}, - {1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 668: 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816}, + {1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 680: 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848}, + {1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 680: 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847}, + {1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 680: 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846, 1846}, + {1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 680: 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845}, + {1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 680: 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844, 1844}, // 260 - {1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 668: 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815}, - {1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 668: 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814}, - {1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 668: 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813}, - {1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 668: 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812}, - {1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 668: 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811}, + {1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1261, 1843, 1843, 1843, 491: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 502: 1843, 1843, 1843, 506: 1843, 1843, 510: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 518: 1843, 1843, 1843, 522: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 544: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 578: 1843, 1843, 607: 1843, 665: 1843, 669: 1843, 1843}, + {1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 680: 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842, 1842}, + {1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 680: 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841, 1841}, + {1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 680: 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840, 1840}, + {1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 680: 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839, 1839}, // 265 - {1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 668: 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810}, - {1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1245, 1809, 4105, 1809, 1809, 1809, 483: 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 492: 1809, 1809, 1809, 496: 1809, 1809, 499: 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 509: 1809, 1809, 512: 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 534: 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 568: 1809, 1809, 597: 1809, 655: 1809, 659: 1809, 1809}, - {1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 668: 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808}, - {1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1243, 1807, 1807, 1807, 1807, 1807, 483: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 492: 1807, 1807, 1807, 496: 1807, 1807, 499: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 509: 1807, 1807, 512: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 534: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 568: 1807, 1807, 597: 1807, 655: 1807, 659: 1807, 1807}, - {1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 668: 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806}, + {1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 680: 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838}, + {1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 680: 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837, 1837}, + {1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 680: 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836, 1836}, + {1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 680: 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835}, + {1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 680: 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834}, // 270 - {1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 668: 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805}, - {1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 668: 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804}, - {1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 668: 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803}, - {1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 668: 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802}, - {1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 668: 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801}, + {1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 680: 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1833}, + {1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1258, 4154, 1832, 1832, 491: 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 502: 1832, 1832, 1832, 506: 1832, 1832, 510: 1832, 1832, 1832, 1832, 1832, 1832, 1832, 518: 1832, 1832, 1832, 522: 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 544: 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 578: 1832, 1832, 607: 1832, 665: 1832, 669: 1832, 1832}, + {1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 680: 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831}, + {1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1256, 1830, 1830, 1830, 491: 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 502: 1830, 1830, 1830, 506: 1830, 1830, 510: 1830, 1830, 1830, 1830, 1830, 1830, 1830, 518: 1830, 1830, 1830, 522: 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 544: 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 578: 1830, 1830, 607: 1830, 665: 1830, 669: 1830, 1830}, + {1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 680: 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829, 1829}, // 275 - {1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 668: 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800}, - {1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 668: 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799}, - {1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 668: 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798}, - {1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 668: 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797}, - {1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 668: 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796}, + {1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 680: 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828, 1828}, + {1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 680: 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827, 1827}, + {1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 680: 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826, 1826}, + {1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 680: 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825, 1825}, + {1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 680: 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824, 1824}, // 280 - {1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 668: 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795}, - {1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 668: 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794}, - {1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 668: 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793}, - {1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 668: 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792}, - {1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 668: 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791}, + {1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 680: 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823, 1823}, + {1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 680: 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822, 1822}, + {1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 680: 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821, 1821}, + {1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 680: 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820}, + {1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 680: 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819, 1819}, // 285 - {1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 668: 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790}, - {1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 668: 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789}, - {1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 668: 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788}, - {1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 668: 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787}, - {1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 668: 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786}, + {1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 680: 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818, 1818}, + {1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 680: 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817, 1817}, + {1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 680: 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816, 1816}, + {1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 680: 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815, 1815}, + {1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 680: 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814, 1814}, // 290 - {1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 668: 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785}, - {1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1239, 1784, 1784, 1784, 1784, 1784, 483: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 492: 1784, 1784, 1784, 496: 1784, 1784, 499: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 509: 1784, 1784, 512: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 534: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 568: 1784, 1784, 597: 1784, 655: 1784, 659: 1784, 1784}, - {1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 668: 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783}, - {1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 668: 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782}, - {1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 668: 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781}, + {1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 680: 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813, 1813}, + {1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 680: 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812, 1812}, + {1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 680: 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811, 1811}, + {1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 680: 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810, 1810}, + {1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 680: 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809}, // 295 - {1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 668: 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780}, - {1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 668: 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779}, - {1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1242, 1778, 1778, 1778, 1778, 1778, 483: 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 492: 1778, 1778, 1778, 496: 1778, 1778, 499: 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 509: 1778, 1778, 512: 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 534: 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 568: 1778, 1778, 597: 1778, 655: 1778, 659: 1778, 1778}, - {1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 668: 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777}, - {1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 668: 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776}, + {1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 680: 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808, 1808}, + {1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1252, 1807, 1807, 1807, 491: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 502: 1807, 1807, 1807, 506: 1807, 1807, 510: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 518: 1807, 1807, 1807, 522: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 544: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 578: 1807, 1807, 607: 1807, 665: 1807, 669: 1807, 1807}, + {1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 680: 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806, 1806}, + {1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 680: 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805, 1805}, + {1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 680: 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804, 1804}, // 300 - {1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 668: 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775}, - {1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 668: 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774}, - {1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 668: 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773}, - {1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 668: 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772}, - {1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 668: 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771}, + {1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 680: 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803, 1803}, + {1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 680: 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802, 1802}, + {1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1255, 1801, 1801, 1801, 491: 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 502: 1801, 1801, 1801, 506: 1801, 1801, 510: 1801, 1801, 1801, 1801, 1801, 1801, 1801, 518: 1801, 1801, 1801, 522: 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 544: 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 578: 1801, 1801, 607: 1801, 665: 1801, 669: 1801, 1801}, + {1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 680: 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800, 1800}, + {1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 680: 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799}, // 305 - {1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 668: 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770}, - {1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 668: 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769}, - {1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 4102, 1768, 1768, 1768, 1768, 1768, 483: 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 492: 1768, 1768, 1768, 496: 1768, 1768, 499: 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 509: 1768, 1768, 512: 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 534: 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 568: 1768, 1768, 597: 1768, 655: 1768, 659: 1768, 1768}, - {1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 668: 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767}, - {1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 668: 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766}, + {1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 680: 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798, 1798}, + {1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 680: 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797, 1797}, + {1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 680: 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796, 1796}, + {1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 680: 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795, 1795}, + {1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 680: 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794, 1794}, // 310 - {1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 668: 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765}, - {1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 668: 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764}, - {1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 668: 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763}, - {1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 668: 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762}, - {1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 668: 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761}, + {1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 680: 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793, 1793}, + {1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 680: 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792, 1792}, + {1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 4151, 1791, 1791, 1791, 491: 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 502: 1791, 1791, 1791, 506: 1791, 1791, 510: 1791, 1791, 1791, 1791, 1791, 1791, 1791, 518: 1791, 1791, 1791, 522: 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 544: 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 578: 1791, 1791, 607: 1791, 665: 1791, 669: 1791, 1791}, + {1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 680: 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790, 1790}, + {1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 680: 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789, 1789}, // 315 - {1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 668: 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760}, - {1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 668: 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759}, - {1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 668: 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758}, - {1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 668: 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757}, - {1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 668: 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756}, + {1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 680: 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788, 1788}, + {1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 680: 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787, 1787}, + {1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 680: 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786, 1786}, + {1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 680: 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785, 1785}, + {1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 680: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784}, // 320 - {1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 668: 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755}, - {1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 668: 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754}, - {1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 668: 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753}, - {1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 668: 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752}, - {1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 668: 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751}, + {1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 680: 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783, 1783}, + {1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 680: 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782, 1782}, + {1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 680: 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781, 1781}, + {1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 680: 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780, 1780}, + {1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 680: 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779, 1779}, // 325 - {1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 668: 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750}, - {1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 668: 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749}, - {1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 668: 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748}, - {1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 668: 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747}, - {1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 668: 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746}, + {1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 680: 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778}, + {1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 680: 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777, 1777}, + {1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 680: 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776, 1776}, + {1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 680: 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775, 1775}, + {1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 680: 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774, 1774}, // 330 - {1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 668: 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745}, - {1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 668: 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744}, - {1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1226, 1743, 4101, 1743, 1743, 1743, 483: 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 492: 1743, 1743, 1743, 496: 1743, 1743, 499: 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 509: 1743, 1743, 512: 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 534: 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 568: 1743, 1743, 597: 1743, 655: 1743, 659: 1743, 1743}, - {1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1225, 1742, 4100, 1742, 1742, 1742, 483: 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 492: 1742, 1742, 1742, 496: 1742, 1742, 499: 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 509: 1742, 1742, 512: 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 534: 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 568: 1742, 1742, 597: 1742, 655: 1742, 659: 1742, 1742}, - {1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 668: 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741}, + {1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 680: 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773, 1773}, + {1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 680: 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772, 1772}, + {1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 680: 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771, 1771}, + {1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 680: 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770, 1770}, + {1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 680: 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769, 1769}, // 335 - {1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 668: 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740}, - {1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1224, 1739, 1739, 1739, 1739, 1739, 483: 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 492: 1739, 1739, 1739, 496: 1739, 1739, 499: 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 509: 1739, 1739, 512: 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 534: 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 568: 1739, 1739, 597: 1739, 655: 1739, 659: 1739, 1739}, - {1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 668: 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738}, - {1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 668: 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737}, - {1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 668: 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736}, + {1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 680: 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768}, + {1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 680: 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767, 1767}, + {1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 680: 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766, 1766}, + {1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1239, 4150, 1765, 1765, 491: 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 502: 1765, 1765, 1765, 506: 1765, 1765, 510: 1765, 1765, 1765, 1765, 1765, 1765, 1765, 518: 1765, 1765, 1765, 522: 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 544: 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 578: 1765, 1765, 607: 1765, 665: 1765, 669: 1765, 1765}, + {1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1238, 4149, 1764, 1764, 491: 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 502: 1764, 1764, 1764, 506: 1764, 1764, 510: 1764, 1764, 1764, 1764, 1764, 1764, 1764, 518: 1764, 1764, 1764, 522: 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 544: 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 578: 1764, 1764, 607: 1764, 665: 1764, 669: 1764, 1764}, // 340 - {1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 668: 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735}, - {1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1221, 1734, 1734, 1734, 1734, 1734, 483: 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 492: 1734, 1734, 1734, 496: 1734, 1734, 499: 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 509: 1734, 1734, 512: 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 534: 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 568: 1734, 1734, 597: 1734, 655: 1734, 659: 1734, 1734}, - {1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 668: 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733}, - {1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1222, 1732, 1732, 1732, 1732, 1732, 483: 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 492: 1732, 1732, 1732, 496: 1732, 1732, 499: 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 509: 1732, 1732, 512: 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 534: 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 568: 1732, 1732, 597: 1732, 655: 1732, 659: 1732, 1732}, - {1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 4090, 1731, 1731, 1731, 1731, 1731, 483: 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 492: 1731, 1731, 1731, 496: 1731, 1731, 499: 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 509: 1731, 1731, 512: 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 534: 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 568: 1731, 1731, 597: 1731, 655: 1731, 659: 1731, 1731}, + {1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 680: 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763, 1763}, + {1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 680: 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762, 1762}, + {1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1237, 1761, 1761, 1761, 491: 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 502: 1761, 1761, 1761, 506: 1761, 1761, 510: 1761, 1761, 1761, 1761, 1761, 1761, 1761, 518: 1761, 1761, 1761, 522: 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 544: 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 578: 1761, 1761, 607: 1761, 665: 1761, 669: 1761, 1761}, + {1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 680: 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760, 1760}, + {1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 680: 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759, 1759}, // 345 - {1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 668: 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730}, - {1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 668: 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729}, - {1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1223, 1728, 1728, 1728, 1728, 1728, 483: 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 492: 1728, 1728, 1728, 496: 1728, 1728, 499: 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 509: 1728, 1728, 512: 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 534: 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 568: 1728, 1728, 597: 1728, 655: 1728, 659: 1728, 1728}, - {1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 668: 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727}, - {1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1246, 1726, 1726, 1726, 1726, 1726, 483: 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 492: 1726, 1726, 1726, 496: 1726, 1726, 499: 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 509: 1726, 1726, 512: 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 534: 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 568: 1726, 1726, 597: 1726, 655: 1726, 659: 1726, 1726}, + {1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 680: 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758, 1758}, + {1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 680: 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757, 1757}, + {1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1234, 1756, 1756, 1756, 491: 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 502: 1756, 1756, 1756, 506: 1756, 1756, 510: 1756, 1756, 1756, 1756, 1756, 1756, 1756, 518: 1756, 1756, 1756, 522: 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 544: 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 578: 1756, 1756, 607: 1756, 665: 1756, 669: 1756, 1756}, + {1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 680: 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755, 1755}, + {1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1235, 1754, 1754, 1754, 491: 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 502: 1754, 1754, 1754, 506: 1754, 1754, 510: 1754, 1754, 1754, 1754, 1754, 1754, 1754, 518: 1754, 1754, 1754, 522: 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 544: 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 578: 1754, 1754, 607: 1754, 665: 1754, 669: 1754, 1754}, // 350 - {1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 668: 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725}, - {1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 668: 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724}, - {1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 668: 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723}, - {1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 668: 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722}, - {1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 668: 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721}, + {1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 4139, 1753, 1753, 1753, 491: 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 502: 1753, 1753, 1753, 506: 1753, 1753, 510: 1753, 1753, 1753, 1753, 1753, 1753, 1753, 518: 1753, 1753, 1753, 522: 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 544: 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 578: 1753, 1753, 607: 1753, 665: 1753, 669: 1753, 1753}, + {1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 680: 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752}, + {1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 680: 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751}, + {1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1236, 1750, 1750, 1750, 491: 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 502: 1750, 1750, 1750, 506: 1750, 1750, 510: 1750, 1750, 1750, 1750, 1750, 1750, 1750, 518: 1750, 1750, 1750, 522: 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 544: 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 578: 1750, 1750, 607: 1750, 665: 1750, 669: 1750, 1750}, + {1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 680: 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749, 1749}, // 355 - {1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 668: 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720}, - {1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 668: 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719}, - {1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 668: 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718}, - {1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 668: 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717}, - {1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 668: 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716}, + {1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1259, 1748, 1748, 1748, 491: 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 502: 1748, 1748, 1748, 506: 1748, 1748, 510: 1748, 1748, 1748, 1748, 1748, 1748, 1748, 518: 1748, 1748, 1748, 522: 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 544: 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 578: 1748, 1748, 607: 1748, 665: 1748, 669: 1748, 1748}, + {1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 680: 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747, 1747}, + {1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 680: 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746, 1746}, + {1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 680: 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745, 1745}, + {1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 680: 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744, 1744}, // 360 - {1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 668: 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715}, - {1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 668: 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714}, - {1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1233, 1713, 1713, 1713, 1713, 1713, 483: 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 492: 1713, 1713, 1713, 496: 1713, 1713, 499: 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 509: 1713, 1713, 512: 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 534: 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 568: 1713, 1713, 597: 1713, 655: 1713, 659: 1713, 1713}, - {1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 668: 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712}, - {1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 668: 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711}, + {1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 680: 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743}, + {1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 680: 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742}, + {1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 680: 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741, 1741}, + {1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 680: 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740, 1740}, + {1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 680: 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739}, // 365 - {1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 668: 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710}, - {1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 668: 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709}, - {1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 668: 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708}, - {1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 668: 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707}, - {1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 668: 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706}, + {1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 680: 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738, 1738}, + {1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 680: 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737, 1737}, + {1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 680: 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736, 1736}, + {1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1246, 1735, 1735, 1735, 491: 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 502: 1735, 1735, 1735, 506: 1735, 1735, 510: 1735, 1735, 1735, 1735, 1735, 1735, 1735, 518: 1735, 1735, 1735, 522: 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 544: 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 578: 1735, 1735, 607: 1735, 665: 1735, 669: 1735, 1735}, + {1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 680: 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734}, // 370 - {1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 668: 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705}, - {1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 668: 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704}, - {1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 668: 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703}, - {1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 668: 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702}, - {1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 668: 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701}, + {1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 680: 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733}, + {1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 680: 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732}, + {1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 680: 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731}, + {1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 680: 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730}, + {1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 680: 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729}, // 375 - {1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 668: 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700}, - {1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 668: 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699}, - {1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 668: 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698}, - {1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 668: 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697}, - {1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 668: 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696}, + {1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 680: 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728}, + {1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 680: 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727, 1727}, + {1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 680: 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726}, + {1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 680: 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725, 1725}, + {1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 680: 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724, 1724}, // 380 - {1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 668: 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695}, - {1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 668: 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694}, - {1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 668: 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693}, - {1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 668: 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692}, - {1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 668: 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691}, + {1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 680: 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723, 1723}, + {1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 680: 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722, 1722}, + {1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 680: 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721, 1721}, + {1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 680: 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720, 1720}, + {1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 680: 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719}, // 385 - {1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1230, 1690, 1690, 1690, 1690, 1690, 483: 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 492: 1690, 1690, 1690, 496: 1690, 1690, 499: 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 509: 1690, 1690, 512: 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 534: 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 568: 1690, 1690, 597: 1690, 655: 1690, 659: 1690, 1690}, - {1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 668: 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689}, - {1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 668: 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688}, - {1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 668: 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687}, - {1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 668: 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686}, + {1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 680: 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718, 1718}, + {1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 680: 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717, 1717}, + {1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 680: 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716, 1716}, + {1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 680: 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715, 1715}, + {1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 680: 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714, 1714}, // 390 - {1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 668: 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685}, - {1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 668: 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684}, - {1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 668: 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683}, - {1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 668: 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682}, - {1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 668: 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681}, + {1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 680: 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713}, + {1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1243, 1712, 1712, 1712, 491: 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 502: 1712, 1712, 1712, 506: 1712, 1712, 510: 1712, 1712, 1712, 1712, 1712, 1712, 1712, 518: 1712, 1712, 1712, 522: 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 544: 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 578: 1712, 1712, 607: 1712, 665: 1712, 669: 1712, 1712}, + {1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 680: 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711, 1711}, + {1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 680: 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710, 1710}, + {1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 680: 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709, 1709}, // 395 - {1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 668: 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680}, - {1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 668: 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679}, - {1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 668: 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678}, - {1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 668: 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677}, - {1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 668: 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676}, + {1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 680: 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708, 1708}, + {1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 680: 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707, 1707}, + {1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 680: 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706, 1706}, + {1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 680: 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705, 1705}, + {1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 680: 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704, 1704}, // 400 - {1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 668: 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675}, - {1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 668: 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674}, - {1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1228, 1673, 1673, 1673, 1673, 1673, 483: 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 492: 1673, 1673, 1673, 496: 1673, 1673, 499: 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 509: 1673, 1673, 512: 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 534: 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 568: 1673, 1673, 597: 1673, 655: 1673, 659: 1673, 1673}, - {1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1247, 1672, 1672, 1672, 1672, 1672, 483: 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 492: 1672, 1672, 1672, 496: 1672, 1672, 499: 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 509: 1672, 1672, 512: 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 534: 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 568: 1672, 1672, 597: 1672, 655: 1672, 659: 1672, 1672}, - {1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1235, 1671, 1671, 1671, 1671, 1671, 483: 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 492: 1671, 1671, 1671, 496: 1671, 1671, 499: 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 509: 1671, 1671, 512: 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 534: 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 568: 1671, 1671, 597: 1671, 655: 1671, 659: 1671, 1671}, + {1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 680: 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703}, + {1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 680: 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702, 1702}, + {1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 680: 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701, 1701}, + {1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 680: 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700, 1700}, + {1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 680: 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699, 1699}, // 405 - {1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 668: 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670}, - {1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 668: 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669}, - {1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 668: 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668}, - {1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1237, 1667, 1667, 1667, 1667, 1667, 483: 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 492: 1667, 1667, 1667, 496: 1667, 1667, 499: 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 509: 1667, 1667, 512: 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 534: 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 568: 1667, 1667, 597: 1667, 655: 1667, 659: 1667, 1667}, - {1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1236, 1666, 1666, 1666, 1666, 1666, 483: 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 492: 1666, 1666, 1666, 496: 1666, 1666, 499: 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 509: 1666, 1666, 512: 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 534: 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 568: 1666, 1666, 597: 1666, 655: 1666, 659: 1666, 1666}, + {1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 680: 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698}, + {1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 680: 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697, 1697}, + {1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 680: 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696, 1696}, + {1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1241, 1695, 1695, 1695, 491: 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 502: 1695, 1695, 1695, 506: 1695, 1695, 510: 1695, 1695, 1695, 1695, 1695, 1695, 1695, 518: 1695, 1695, 1695, 522: 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 544: 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 578: 1695, 1695, 607: 1695, 665: 1695, 669: 1695, 1695}, + {1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1260, 1694, 1694, 1694, 491: 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 502: 1694, 1694, 1694, 506: 1694, 1694, 510: 1694, 1694, 1694, 1694, 1694, 1694, 1694, 518: 1694, 1694, 1694, 522: 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 544: 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 578: 1694, 1694, 607: 1694, 665: 1694, 669: 1694, 1694}, // 410 - {1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 668: 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665}, - {1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 668: 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664}, - {1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 668: 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663}, - {1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 668: 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662}, - {1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 668: 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661}, + {1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1248, 1693, 1693, 1693, 491: 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 502: 1693, 1693, 1693, 506: 1693, 1693, 510: 1693, 1693, 1693, 1693, 1693, 1693, 1693, 518: 1693, 1693, 1693, 522: 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 544: 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 578: 1693, 1693, 607: 1693, 665: 1693, 669: 1693, 1693}, + {1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 680: 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692, 1692}, + {1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 680: 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691, 1691}, + {1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 680: 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690}, + {1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1250, 1689, 1689, 1689, 491: 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 502: 1689, 1689, 1689, 506: 1689, 1689, 510: 1689, 1689, 1689, 1689, 1689, 1689, 1689, 518: 1689, 1689, 1689, 522: 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 544: 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 578: 1689, 1689, 607: 1689, 665: 1689, 669: 1689, 1689}, // 415 - {1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1227, 1660, 1660, 1660, 1660, 1660, 483: 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 492: 1660, 1660, 1660, 496: 1660, 1660, 499: 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 509: 1660, 1660, 512: 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 534: 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 568: 1660, 1660, 597: 1660, 655: 1660, 659: 1660, 1660}, - {1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 668: 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659}, - {1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 668: 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658}, - {1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 668: 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657}, - {1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 668: 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656}, + {1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1249, 1688, 1688, 1688, 491: 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 502: 1688, 1688, 1688, 506: 1688, 1688, 510: 1688, 1688, 1688, 1688, 1688, 1688, 1688, 518: 1688, 1688, 1688, 522: 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 544: 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 578: 1688, 1688, 607: 1688, 665: 1688, 669: 1688, 1688}, + {1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 680: 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687, 1687}, + {1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 680: 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686}, + {1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 680: 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685, 1685}, + {1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 680: 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684, 1684}, // 420 - {1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 668: 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655}, - {1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 668: 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654}, - {1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 668: 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653}, - {1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 668: 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652}, - {1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 668: 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651}, + {1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 680: 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683, 1683}, + {1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1240, 1682, 1682, 1682, 491: 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 502: 1682, 1682, 1682, 506: 1682, 1682, 510: 1682, 1682, 1682, 1682, 1682, 1682, 1682, 518: 1682, 1682, 1682, 522: 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 544: 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 578: 1682, 1682, 607: 1682, 665: 1682, 669: 1682, 1682}, + {1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 680: 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681, 1681}, + {1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 680: 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680, 1680}, + {1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 680: 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679, 1679}, // 425 - {1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 668: 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650}, - {1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 668: 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649}, - {1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 668: 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648}, - {1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 668: 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647}, - {1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 668: 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646}, + {1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 680: 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678, 1678}, + {1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 680: 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677, 1677}, + {1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 680: 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676}, + {1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 680: 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675}, + {1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 680: 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674, 1674}, // 430 - {1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 668: 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645}, - {1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 668: 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644}, - {1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 668: 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643}, - {1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 668: 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642}, - {1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 668: 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641}, + {1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 680: 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673}, + {1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 680: 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672}, + {1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 680: 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671}, + {1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 680: 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670, 1670}, + {1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 680: 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669, 1669}, // 435 - {1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 668: 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640}, - {1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 668: 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639}, - {1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 668: 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638}, - {1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 668: 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637}, - {1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 668: 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636}, + {1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 680: 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668, 1668}, + {1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 680: 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667}, + {1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 680: 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666}, + {1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 680: 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665, 1665}, + {1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 680: 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664, 1664}, // 440 - {1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 668: 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635}, - {1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 668: 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634}, - {1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 668: 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633}, - {1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 668: 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632}, - {1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 668: 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631}, + {1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 680: 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663, 1663}, + {1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 680: 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662, 1662}, + {1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 680: 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661, 1661}, + {1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 680: 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660}, + {1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 680: 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659, 1659}, // 445 - {1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 668: 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630}, - {1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 668: 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629}, - {1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 668: 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628}, - {1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 668: 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627}, - {1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 668: 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626}, + {1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 680: 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658, 1658}, + {1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 680: 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657, 1657}, + {1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 680: 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656, 1656}, + {1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 680: 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655, 1655}, + {1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 680: 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654, 1654}, // 450 - {1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 668: 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625}, - {1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 668: 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624}, - {1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 668: 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623}, - {1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 668: 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622}, - {1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 668: 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621}, + {1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 680: 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653, 1653}, + {1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 680: 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652, 1652}, + {1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 680: 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651, 1651}, + {1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 680: 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650, 1650}, + {1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 680: 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649}, // 455 - {1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 668: 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620}, - {1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 668: 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619}, - {1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 668: 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618}, - {1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 668: 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617}, - {1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 668: 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616}, + {1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 680: 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648}, + {1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 680: 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647}, + {1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 680: 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646, 1646}, + {1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 680: 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645}, + {1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 680: 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644, 1644}, // 460 - {1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 668: 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615}, - {1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 668: 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614}, - {1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 668: 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613}, - {1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 668: 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612}, - {1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 668: 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611}, + {1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 680: 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643}, + {1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 680: 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642, 1642}, + {1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 680: 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641}, + {1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 680: 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640, 1640}, + {1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 680: 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639, 1639}, // 465 - {1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 668: 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610}, - {1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 668: 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609}, - {1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 668: 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608}, - {1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 668: 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607}, - {1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 668: 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606}, + {1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 680: 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638, 1638}, + {1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 680: 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637, 1637}, + {1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 680: 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636, 1636}, + {1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 680: 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635}, + {1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 680: 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634, 1634}, // 470 - {1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 668: 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605}, - {1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 668: 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604}, - {1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 668: 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603}, - {1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 668: 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602}, - {1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 668: 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601}, + {1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 680: 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633, 1633}, + {1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 680: 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632}, + {1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 680: 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631, 1631}, + {1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 680: 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630, 1630}, + {1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 680: 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629}, // 475 - {1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 668: 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600}, - {1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 668: 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599}, - {1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 668: 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598}, - {1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 668: 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597}, - {1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 668: 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596}, + {1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 680: 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628, 1628}, + {1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 680: 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627, 1627}, + {1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 680: 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626}, + {1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 680: 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625, 1625}, + {1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 680: 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624, 1624}, // 480 - {1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 668: 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595}, - {1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 668: 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594}, - {1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 668: 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593}, - {1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 668: 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592}, - {1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 668: 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591}, + {1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 680: 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623, 1623}, + {1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 680: 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622, 1622}, + {1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 680: 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621, 1621}, + {1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 680: 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620, 1620}, + {1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 680: 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619, 1619}, // 485 - {1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 668: 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590}, - {1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 668: 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589}, - {1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 668: 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588}, - {1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 668: 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587}, - {1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 668: 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586}, + {1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 680: 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618, 1618}, + {1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 680: 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617, 1617}, + {1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 680: 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616, 1616}, + {1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 680: 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615, 1615}, + {1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 680: 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614, 1614}, // 490 - {1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 668: 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585}, - {1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 668: 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584}, - {1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 668: 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583}, - {1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 668: 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582}, - {1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 668: 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581}, + {1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 680: 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613, 1613}, + {1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 680: 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612, 1612}, + {1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 680: 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611, 1611}, + {1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 680: 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610, 1610}, + {1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 680: 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609, 1609}, // 495 - {1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 668: 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580}, - {1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 668: 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579}, - {1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 668: 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578}, - {1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 668: 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577}, - {1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 668: 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576}, + {1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 680: 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608, 1608}, + {1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 680: 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607}, + {1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 680: 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1606}, + {1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 680: 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605, 1605}, + {1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 680: 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604, 1604}, // 500 - {1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 668: 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575}, - {1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 668: 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574}, - {1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 668: 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573}, - {1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 668: 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572}, - {1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 668: 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571}, + {1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 680: 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603, 1603}, + {1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 680: 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602}, + {1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 680: 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601, 1601}, + {1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 680: 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600}, + {1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 680: 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599, 1599}, // 505 - {1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 668: 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570}, - {1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 668: 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569}, - {1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 668: 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568}, - {1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 668: 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567}, - {1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 668: 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566}, + {1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 680: 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598}, + {1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 680: 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597}, + {1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 680: 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596}, + {1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 680: 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1595}, + {1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 680: 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594, 1594}, // 510 - {1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 668: 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565}, - {1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 668: 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564}, - {1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 668: 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563}, - {1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 668: 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562}, - {1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 668: 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561}, + {1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 680: 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593, 1593}, + {1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 680: 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592, 1592}, + {1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 680: 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591, 1591}, + {1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 680: 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590, 1590}, + {1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 680: 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589, 1589}, // 515 - {1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 668: 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560}, - {1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 668: 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559}, - {1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 668: 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558}, - {1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 668: 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557}, - {1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 668: 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556}, + {1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 680: 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588, 1588}, + {1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 680: 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587}, + {1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 680: 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586, 1586}, + {1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 680: 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585, 1585}, + {1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 680: 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584, 1584}, // 520 - {1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 668: 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555}, - {1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 668: 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554}, - {1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 668: 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553}, - {1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 668: 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552}, - {1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 4087, 1549, 1549, 1549, 1549, 1549, 483: 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 492: 1549, 1549, 1549, 496: 1549, 1549, 499: 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 509: 1549, 1549, 512: 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 534: 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 568: 1549, 1549, 597: 1549, 655: 1549, 659: 1549, 1549}, + {1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 680: 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583, 1583}, + {1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 680: 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582, 1582}, + {1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 680: 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581}, + {1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 680: 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580}, + {1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 680: 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579}, // 525 - {1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 4076, 1548, 1548, 1548, 1548, 1548, 483: 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 492: 1548, 1548, 1548, 496: 1548, 1548, 499: 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 509: 1548, 1548, 512: 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 534: 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 568: 1548, 1548, 597: 1548, 655: 1548, 659: 1548, 1548}, - {1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 668: 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547}, - {1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 668: 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546}, - {1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 668: 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545}, - {1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 668: 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544}, + {1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 680: 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578}, + {1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 680: 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577, 1577}, + {1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 680: 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576}, + {1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 680: 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575}, + {1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 680: 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574}, // 530 - {1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 668: 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543}, - {1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 668: 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542}, - {1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 668: 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541}, - {1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 668: 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540}, - {1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 668: 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539}, + {1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 4136, 1571, 1571, 1571, 491: 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 502: 1571, 1571, 1571, 506: 1571, 1571, 510: 1571, 1571, 1571, 1571, 1571, 1571, 1571, 518: 1571, 1571, 1571, 522: 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 544: 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 578: 1571, 1571, 607: 1571, 665: 1571, 669: 1571, 1571}, + {1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 4125, 1570, 1570, 1570, 491: 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 502: 1570, 1570, 1570, 506: 1570, 1570, 510: 1570, 1570, 1570, 1570, 1570, 1570, 1570, 518: 1570, 1570, 1570, 522: 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 544: 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 578: 1570, 1570, 607: 1570, 665: 1570, 669: 1570, 1570}, + {1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 680: 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569}, + {1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 680: 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568}, + {1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 680: 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567, 1567}, // 535 - {1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 668: 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538}, - {1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 668: 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537}, - {1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 668: 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536}, - {1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 668: 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535}, - {1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 668: 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534}, + {1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 680: 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566, 1566}, + {1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 680: 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565}, + {1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 680: 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564}, + {1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 680: 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563}, + {1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 680: 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562, 1562}, // 540 - {1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 668: 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533}, - {1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 668: 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532}, - {1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 668: 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531}, - {1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 668: 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530}, - {1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 668: 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529}, + {1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 680: 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561}, + {1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 680: 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560}, + {1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 680: 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559}, + {1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 680: 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558}, + {1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 680: 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557}, // 545 - {1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 668: 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528}, - {1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 668: 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527}, - {1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 668: 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526}, - {1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 668: 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525}, - {1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 668: 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524}, + {1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 680: 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556}, + {1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 680: 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1555}, + {1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 680: 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554}, + {1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 680: 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553, 1553}, + {1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 680: 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552, 1552}, // 550 - {1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 668: 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523}, - {1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 668: 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522}, - {1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 668: 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521}, - {1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 668: 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520}, - {1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 668: 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519}, + {1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 680: 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551}, + {1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 680: 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550}, + {1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 680: 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549}, + {1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 680: 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548}, + {1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 680: 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547}, // 555 - {1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 668: 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518}, - {1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 668: 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517}, - {1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 668: 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516}, - {1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 668: 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515}, - {1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 668: 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514}, + {1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 680: 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546}, + {1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 680: 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1545}, + {1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 680: 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544, 1544}, + {1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 680: 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543, 1543}, + {1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 680: 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542, 1542}, // 560 - {1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 668: 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513}, - {1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 668: 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512}, - {1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 668: 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511}, - {1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 668: 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510}, - {1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 668: 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509}, + {1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 680: 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541}, + {1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 680: 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540}, + {1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 680: 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539}, + {1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 680: 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538}, + {1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 680: 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537}, // 565 - {1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 668: 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508}, - {1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 668: 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507}, - {1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 668: 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506}, - {1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 668: 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505}, - {1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 668: 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504}, + {1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 680: 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536}, + {1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 680: 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1535}, + {1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 680: 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1534}, + {1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 680: 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533}, + {1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 680: 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532}, // 570 - {1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 668: 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503}, - {1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 668: 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502}, - {1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 668: 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501}, - {1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 668: 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500}, - {1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 668: 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499}, + {1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 680: 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531}, + {1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 680: 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530}, + {1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 680: 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529}, + {1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 680: 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528}, + {1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 680: 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527}, // 575 - {1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 668: 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498}, - {1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 668: 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497}, - {1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 668: 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496}, - {1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 668: 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495}, - {1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 668: 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494}, + {1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 680: 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526}, + {1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 680: 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1525}, + {1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 680: 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524, 1524}, + {1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 680: 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523, 1523}, + {1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 680: 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522, 1522}, // 580 - {1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 668: 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493}, - {1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 668: 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492}, - {1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 668: 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491}, - {1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 668: 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490}, - {1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 668: 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489}, + {1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 680: 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521}, + {1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 680: 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520}, + {1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 680: 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519}, + {1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 680: 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518}, + {1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 680: 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517}, // 585 - {1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 668: 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488}, - {1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 668: 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487}, - {1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 668: 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486}, - {1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 668: 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485}, - {1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 668: 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484}, + {1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 680: 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516}, + {1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 680: 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1515}, + {1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 680: 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514}, + {1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 680: 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513, 1513}, + {1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 680: 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512, 1512}, // 590 - {1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 668: 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483}, - {1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 668: 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482}, - {1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 668: 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481}, - {1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 668: 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480}, - {1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 668: 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479}, + {1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 680: 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511}, + {1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 680: 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510}, + {1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 680: 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509}, + {1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 680: 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508}, + {1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 680: 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507}, // 595 - {1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 668: 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478}, - {1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 668: 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477}, - {1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 668: 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476}, - {1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 668: 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475}, - {1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 668: 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474}, + {1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 680: 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506}, + {1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 680: 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505}, + {1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 680: 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504, 1504}, + {1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 680: 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503}, + {1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 680: 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502, 1502}, // 600 - {1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 668: 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473}, - {1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 668: 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472}, - {1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 668: 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471}, - {1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 668: 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470}, - {1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 668: 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469}, + {1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 680: 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501}, + {1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 680: 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500}, + {1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 680: 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499}, + {1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 680: 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498}, + {1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 680: 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497}, // 605 - {1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 668: 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468}, - {1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 668: 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467}, - {1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 668: 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466}, - {1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 668: 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465}, - {1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 668: 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464}, + {1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 680: 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496}, + {1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 680: 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1495}, + {1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 680: 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494, 1494}, + {1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 680: 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493, 1493}, + {1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 680: 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492, 1492}, // 610 - {1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 668: 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463}, - {1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 668: 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462}, - {1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 668: 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461}, - {1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1165, 1460, 1460, 1460, 1460, 1460, 483: 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 492: 1460, 1460, 1460, 496: 1460, 1460, 499: 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 509: 1460, 1460, 512: 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 534: 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 568: 1460, 1460, 597: 1460, 655: 1460, 659: 1460, 1460}, - {1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 668: 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459}, + {1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 680: 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491}, + {1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 680: 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490}, + {1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 680: 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489}, + {1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 680: 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488}, + {1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 680: 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487, 1487}, // 615 - {1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 668: 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458}, - {1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 668: 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457}, - {1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 668: 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456}, - {1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 668: 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455}, - {1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 668: 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454}, + {1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 680: 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486, 1486}, + {1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 680: 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1485}, + {1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 680: 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484, 1484}, + {1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 680: 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483}, + {1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 680: 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482, 1482}, // 620 - {1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 668: 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453}, - {1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 668: 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452}, - {1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 668: 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451}, - {1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 668: 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450}, - {1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 668: 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449}, + {1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 680: 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481, 1481}, + {1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 680: 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480}, + {1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 680: 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479}, + {1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1178, 1478, 1478, 1478, 491: 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 502: 1478, 1478, 1478, 506: 1478, 1478, 510: 1478, 1478, 1478, 1478, 1478, 1478, 1478, 518: 1478, 1478, 1478, 522: 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 544: 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 578: 1478, 1478, 607: 1478, 665: 1478, 669: 1478, 1478}, + {1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 680: 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477}, // 625 - {1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 668: 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448}, - {1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 668: 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447}, - {1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 668: 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446}, - {1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 4067, 1445, 1445, 1445, 1445, 1445, 483: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 492: 1445, 1445, 1445, 496: 1445, 1445, 499: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 509: 1445, 1445, 512: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 534: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 568: 1445, 1445, 597: 1445, 655: 1445, 659: 1445, 1445}, - {1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 668: 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444}, + {1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 680: 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476}, + {1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 680: 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1475}, + {1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 680: 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474, 1474}, + {1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 680: 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473, 1473}, + {1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 680: 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472, 1472}, // 630 - {1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 668: 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443}, - {1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 668: 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442}, - {1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 668: 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441}, - {1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 668: 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440}, - {1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 668: 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439}, + {1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 680: 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471, 1471}, + {1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 680: 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470}, + {1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 680: 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469}, + {1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 680: 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468}, + {1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 680: 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467}, // 635 - {1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 668: 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438}, - {1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 668: 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437}, - {1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 668: 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436}, - {1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 668: 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435}, - {1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 668: 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434}, + {1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 680: 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466}, + {1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 680: 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465}, + {1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 680: 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464}, + {1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 4116, 1463, 1463, 1463, 491: 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 502: 1463, 1463, 1463, 506: 1463, 1463, 510: 1463, 1463, 1463, 1463, 1463, 1463, 1463, 518: 1463, 1463, 1463, 522: 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 544: 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 578: 1463, 1463, 607: 1463, 665: 1463, 669: 1463, 1463}, + {1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 680: 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462}, // 640 - {1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 668: 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433}, - {1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 668: 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432}, - {1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 668: 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431}, - {1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 668: 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430}, - {1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 668: 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429}, + {1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 680: 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1461}, + {1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 680: 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460}, + {1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 680: 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459}, + {1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 680: 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458}, + {1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 680: 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457}, // 645 - {1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 668: 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428}, - {1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1164, 1427, 1427, 1427, 1427, 1427, 483: 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 492: 1427, 1427, 1427, 496: 1427, 1427, 499: 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 509: 1427, 1427, 512: 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 534: 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 568: 1427, 1427, 597: 1427, 655: 1427, 659: 1427, 1427}, - {1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 668: 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426}, - {1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 668: 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425}, - {1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 668: 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424}, + {1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 680: 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456}, + {1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 680: 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455}, + {1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 680: 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454}, + {1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 680: 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453}, + {1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 680: 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452}, // 650 - {1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 668: 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423}, - {1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 668: 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422}, - {1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 668: 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421}, - {1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 668: 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420}, - {1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 668: 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419}, + {1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 680: 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451}, + {1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 680: 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450}, + {1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 680: 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1449}, + {1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 680: 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448}, + {1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 680: 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447}, // 655 - {1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 668: 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418}, - {1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 668: 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417}, - {1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 668: 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416}, - {1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 4060, 1415, 1415, 1415, 1415, 1415, 483: 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 492: 1415, 1415, 1415, 496: 1415, 1415, 499: 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 509: 1415, 1415, 512: 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 534: 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 568: 1415, 1415, 597: 1415, 655: 1415, 659: 1415, 1415}, - {1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 4053, 1414, 1414, 1414, 1414, 1414, 483: 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 492: 1414, 1414, 1414, 496: 1414, 1414, 499: 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 509: 1414, 1414, 512: 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 534: 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 568: 1414, 1414, 597: 1414, 655: 1414, 659: 1414, 1414}, + {1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 680: 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446}, + {1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1177, 1445, 1445, 1445, 491: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 502: 1445, 1445, 1445, 506: 1445, 1445, 510: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 518: 1445, 1445, 1445, 522: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 544: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 578: 1445, 1445, 607: 1445, 665: 1445, 669: 1445, 1445}, + {1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 680: 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444}, + {1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 680: 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443}, + {1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 680: 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442}, // 660 - {1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 668: 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413}, - {1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 668: 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412}, - {1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 668: 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411}, - {1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 668: 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410}, - {1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 668: 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409}, + {1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 680: 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441}, + {1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 680: 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440}, + {1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 680: 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439}, + {1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 680: 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438}, + {1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 680: 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437}, // 665 - {1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 668: 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408}, - {1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 668: 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407}, - {1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 668: 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406}, - {1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 668: 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405}, - {1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 668: 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404}, + {1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 680: 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436}, + {1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 680: 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435}, + {1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 680: 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434}, + {1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 4109, 1433, 1433, 1433, 491: 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 502: 1433, 1433, 1433, 506: 1433, 1433, 510: 1433, 1433, 1433, 1433, 1433, 1433, 1433, 518: 1433, 1433, 1433, 522: 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 544: 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 578: 1433, 1433, 607: 1433, 665: 1433, 669: 1433, 1433}, + {1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 4102, 1432, 1432, 1432, 491: 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 502: 1432, 1432, 1432, 506: 1432, 1432, 510: 1432, 1432, 1432, 1432, 1432, 1432, 1432, 518: 1432, 1432, 1432, 522: 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 544: 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 578: 1432, 1432, 607: 1432, 665: 1432, 669: 1432, 1432}, // 670 - {1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 668: 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403}, - {1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 668: 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402}, - {1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 668: 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401}, - {1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 668: 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400}, - {1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 668: 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399}, + {1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 680: 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431, 1431}, + {1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 680: 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430}, + {1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 680: 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429}, + {1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 680: 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428}, + {1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 680: 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427}, // 675 - {1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 668: 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398}, - {1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 668: 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397}, - {1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 668: 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396}, - {1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 668: 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395}, - {1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 4033, 1394, 1394, 1394, 1394, 1394, 483: 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 492: 1394, 1394, 1394, 496: 1394, 1394, 499: 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 509: 1394, 1394, 512: 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 534: 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 568: 1394, 1394, 597: 1394, 655: 1394, 659: 1394, 1394}, + {1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 680: 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1426}, + {1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 680: 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425}, + {1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 680: 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424}, + {1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 680: 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423, 1423}, + {1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 680: 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422}, // 680 - {1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 4025, 1393, 1393, 1393, 1393, 1393, 483: 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 492: 1393, 1393, 1393, 496: 1393, 1393, 499: 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 509: 1393, 1393, 512: 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 534: 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 568: 1393, 1393, 597: 1393, 655: 1393, 659: 1393, 1393}, - {1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 668: 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392}, - {1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 668: 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391}, - {1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 668: 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390}, - {1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 668: 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389}, + {1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 680: 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421}, + {1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 680: 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420}, + {1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 680: 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419}, + {1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 680: 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1418}, + {1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 680: 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417, 1417}, // 685 - {1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 668: 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388}, - {1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 668: 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387}, - {1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 668: 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386}, - {1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 668: 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1385}, - {1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 668: 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384, 1384}, + {1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 680: 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416, 1416}, + {1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 680: 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415}, + {1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 680: 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414}, + {1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 680: 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413}, + {1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 4082, 1412, 1412, 1412, 491: 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 502: 1412, 1412, 1412, 506: 1412, 1412, 510: 1412, 1412, 1412, 1412, 1412, 1412, 1412, 518: 1412, 1412, 1412, 522: 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 544: 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 578: 1412, 1412, 607: 1412, 665: 1412, 669: 1412, 1412}, // 690 - {1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 668: 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383}, - {1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 668: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382}, - {1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 668: 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381}, - {1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 668: 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380}, - {1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 668: 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379}, + {1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 4074, 1411, 1411, 1411, 491: 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 502: 1411, 1411, 1411, 506: 1411, 1411, 510: 1411, 1411, 1411, 1411, 1411, 1411, 1411, 518: 1411, 1411, 1411, 522: 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 544: 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 578: 1411, 1411, 607: 1411, 665: 1411, 669: 1411, 1411}, + {1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 680: 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410}, + {1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 680: 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409}, + {1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 680: 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408}, + {1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 680: 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407}, // 695 - {1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 668: 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378}, - {1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 668: 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377}, - {1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 668: 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376}, - {1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 477: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 499: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 509: 1338, 1338, 512: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 534: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 568: 1338, 1338, 584: 1338, 593: 1338, 1338, 597: 1338, 645: 1338, 1338, 1338, 1338}, - {1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 477: 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 499: 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 509: 1337, 1337, 512: 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 534: 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 568: 1337, 1337, 584: 1337, 593: 1337, 1337, 597: 1337, 645: 1337, 1337, 1337, 1337}, + {1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 680: 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406}, + {1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 680: 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1405}, + {1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 680: 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1404}, + {1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 680: 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403}, + {1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 680: 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402}, // 700 - {1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 477: 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 499: 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 509: 1336, 1336, 512: 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 534: 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 568: 1336, 1336, 584: 1336, 593: 1336, 1336, 597: 1336, 645: 1336, 1336, 1336, 1336}, - {1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 477: 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 499: 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 509: 1335, 1335, 512: 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 534: 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 568: 1335, 1335, 584: 1335, 593: 1335, 1335, 597: 1335, 645: 1335, 1335, 1335, 1335}, - {1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 477: 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 499: 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 509: 1334, 1334, 512: 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 534: 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 1334, 568: 1334, 1334, 584: 1334, 593: 1334, 1334, 597: 1334, 645: 1334, 1334, 1334, 1334}, - {1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 477: 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 499: 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 509: 1333, 1333, 512: 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 534: 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 568: 1333, 1333, 584: 1333, 593: 1333, 1333, 597: 1333, 645: 1333, 1333, 1333, 1333}, - {1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 477: 1332, 4024, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 499: 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 509: 1332, 1332, 512: 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 534: 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 568: 1332, 1332, 584: 1332, 593: 1332, 1332, 597: 1332, 645: 1332, 1332, 1332, 1332}, + {1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 680: 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401}, + {1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 680: 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1400}, + {1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 680: 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399}, + {1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 680: 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398}, + {1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 680: 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397}, // 705 - {478: 4021, 579: 4022, 583: 4023}, - {1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 477: 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 499: 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 509: 1330, 1330, 512: 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 534: 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1330, 568: 1330, 1330, 584: 1330, 593: 1330, 1330, 597: 1330, 645: 1330, 1330, 1330, 1330}, - {1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 477: 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 499: 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 509: 1329, 1329, 512: 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 534: 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 568: 1329, 1329, 584: 1329, 593: 1329, 1329, 597: 1329, 645: 1329, 1329, 1329, 1329}, - {1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 477: 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 499: 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 509: 1326, 1326, 512: 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 534: 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 568: 1326, 1326, 584: 1326, 593: 1326, 1326, 597: 1326, 645: 1326, 1326, 1326, 1326}, - {1321, 1321, 9: 3438, 50: 1321, 128: 1321, 475: 1321, 477: 1321, 483: 1321, 1321, 493: 1321, 1321, 496: 1321, 1321, 499: 1321, 1321, 504: 1321}, + {1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 680: 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396}, + {1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 680: 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395}, + {1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 680: 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394}, + {1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 680: 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393}, + {1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 680: 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392}, // 710 - {1320, 1320, 9: 1320, 50: 1320, 128: 1320, 475: 1320, 477: 1320, 483: 1320, 1320, 493: 1320, 1320, 496: 1320, 1320, 499: 1320, 1320, 504: 1320, 1320, 517: 1320, 519: 1320, 527: 1320, 530: 1320, 1320}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 1240, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4019}, - {1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 477: 1294, 1294, 1294, 1294, 1294, 483: 1294, 1294, 1294, 1294, 3376, 1294, 1294, 1294, 492: 1294, 1294, 1294, 496: 1294, 1294, 499: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 509: 1294, 1294, 512: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 534: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 568: 1294, 1294, 597: 3377}, - {1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 477: 1293, 1293, 1293, 1293, 1293, 483: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 492: 1293, 1293, 1293, 496: 1293, 1293, 499: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 509: 1293, 1293, 512: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 534: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 568: 1293, 1293, 597: 1293, 655: 4014, 659: 1293, 1293}, - {1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 477: 1290, 1290, 1290, 1290, 1290, 483: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 492: 1290, 1290, 1290, 496: 1290, 1290, 499: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 509: 1290, 1290, 512: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 534: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 568: 1290, 1290, 597: 1290, 659: 4010, 4011}, + {1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 680: 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391}, + {1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 680: 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390}, + {1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 680: 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389}, + {1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 487: 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 510: 1351, 1351, 1351, 1351, 1351, 1351, 1351, 518: 1351, 1351, 1351, 522: 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 544: 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 1351, 578: 1351, 1351, 594: 1351, 604: 1351, 1351, 607: 1351, 655: 1351, 1351, 1351, 659: 1351}, + {1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 487: 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 510: 1350, 1350, 1350, 1350, 1350, 1350, 1350, 518: 1350, 1350, 1350, 522: 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 544: 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 578: 1350, 1350, 594: 1350, 604: 1350, 1350, 607: 1350, 655: 1350, 1350, 1350, 659: 1350}, // 715 - {1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 477: 1289, 1289, 1289, 1289, 1289, 483: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 492: 1289, 1289, 1289, 496: 1289, 1289, 499: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 509: 1289, 1289, 512: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 534: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 568: 1289, 1289, 597: 1289}, - {1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 477: 1288, 1288, 1288, 1288, 1288, 483: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 492: 1288, 1288, 1288, 496: 1288, 1288, 499: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 509: 1288, 1288, 512: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 534: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 568: 1288, 1288, 597: 1288}, - {1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 477: 1287, 1287, 1287, 1287, 1287, 483: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 492: 1287, 1287, 1287, 496: 1287, 1287, 499: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 509: 1287, 1287, 512: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 534: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 568: 1287, 1287, 597: 1287}, - {1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 477: 1285, 1285, 1285, 1285, 1285, 483: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 492: 1285, 1285, 1285, 496: 1285, 1285, 499: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 509: 1285, 1285, 512: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 534: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 568: 1285, 1285, 597: 1285}, - {1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 477: 1284, 1284, 1284, 1284, 1284, 483: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 492: 1284, 1284, 1284, 496: 1284, 1284, 499: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 509: 1284, 1284, 512: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 534: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 568: 1284, 1284, 597: 1284}, + {1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 487: 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 510: 1349, 1349, 1349, 1349, 1349, 1349, 1349, 518: 1349, 1349, 1349, 522: 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 544: 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1349, 578: 1349, 1349, 594: 1349, 604: 1349, 1349, 607: 1349, 655: 1349, 1349, 1349, 659: 1349}, + {1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 487: 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 510: 1348, 1348, 1348, 1348, 1348, 1348, 1348, 518: 1348, 1348, 1348, 522: 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 544: 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 578: 1348, 1348, 594: 1348, 604: 1348, 1348, 607: 1348, 655: 1348, 1348, 1348, 659: 1348}, + {1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 487: 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 510: 1347, 1347, 1347, 1347, 1347, 1347, 1347, 518: 1347, 1347, 1347, 522: 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 544: 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 578: 1347, 1347, 594: 1347, 604: 1347, 1347, 607: 1347, 655: 1347, 1347, 1347, 659: 1347}, + {1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 487: 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 510: 1346, 1346, 1346, 1346, 1346, 1346, 1346, 518: 1346, 1346, 1346, 522: 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 544: 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 578: 1346, 1346, 594: 1346, 604: 1346, 1346, 607: 1346, 655: 1346, 1346, 1346, 659: 1346}, + {1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 487: 4073, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 510: 1345, 1345, 1345, 1345, 1345, 1345, 1345, 518: 1345, 1345, 1345, 522: 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 544: 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 578: 1345, 1345, 594: 1345, 604: 1345, 1345, 607: 1345, 655: 1345, 1345, 1345, 659: 1345}, // 720 - {1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 477: 1283, 1283, 1283, 1283, 1283, 483: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 492: 1283, 1283, 1283, 496: 1283, 1283, 499: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 509: 1283, 1283, 512: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 534: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 568: 1283, 1283, 597: 1283}, - {1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 477: 1282, 1282, 1282, 1282, 1282, 483: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 492: 1282, 1282, 1282, 496: 1282, 1282, 499: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 509: 1282, 1282, 512: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 534: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 568: 1282, 1282, 597: 1282}, - {1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 477: 1281, 1281, 1281, 1281, 1281, 483: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 492: 1281, 1281, 1281, 496: 1281, 1281, 499: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 509: 1281, 1281, 512: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 534: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 568: 1281, 1281, 597: 1281}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4009, 3279, 3360, 3278, 3275}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4008, 3279, 3360, 3278, 3275}, + {487: 4070, 589: 4071, 591: 4072}, + {1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 487: 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 510: 1343, 1343, 1343, 1343, 1343, 1343, 1343, 518: 1343, 1343, 1343, 522: 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 544: 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 578: 1343, 1343, 594: 1343, 604: 1343, 1343, 607: 1343, 655: 1343, 1343, 1343, 659: 1343}, + {1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 487: 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 510: 1342, 1342, 1342, 1342, 1342, 1342, 1342, 518: 1342, 1342, 1342, 522: 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 544: 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 578: 1342, 1342, 594: 1342, 604: 1342, 1342, 607: 1342, 655: 1342, 1342, 1342, 659: 1342}, + {1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 487: 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 510: 1339, 1339, 1339, 1339, 1339, 1339, 1339, 518: 1339, 1339, 1339, 522: 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 544: 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 578: 1339, 1339, 594: 1339, 604: 1339, 1339, 607: 1339, 655: 1339, 1339, 1339, 659: 1339}, + {1334, 1334, 9: 3487, 73: 1334, 135: 1334, 485: 1334, 488: 1334, 494: 1334, 1334, 503: 1334, 1334, 506: 1334, 1334, 510: 1334, 1334, 515: 1334}, // 725 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4007, 3279, 3360, 3278, 3275}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4006, 3279, 3360, 3278, 3275}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4005, 3279, 3360, 3278, 3275}, - {1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 477: 1274, 1274, 1274, 1274, 1274, 483: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 492: 1274, 1274, 1274, 496: 1274, 1274, 499: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 509: 1274, 1274, 512: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 534: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 568: 1274, 1274, 597: 1274}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 2607, 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3905, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 2605, 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 649: 2601, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3904, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3902, 752: 3907, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 3909, 3908, 782: 3903}, + {1333, 1333, 9: 1333, 73: 1333, 135: 1333, 485: 1333, 488: 1333, 494: 1333, 1333, 503: 1333, 1333, 506: 1333, 1333, 510: 1333, 1333, 515: 1333, 1333, 527: 1333, 529: 1333, 537: 1333, 540: 1333, 1333}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 1253, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4068}, + {1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 487: 1307, 1307, 1307, 491: 1307, 1307, 3425, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 502: 1307, 1307, 1307, 506: 1307, 1307, 510: 1307, 1307, 1307, 1307, 1307, 1307, 1307, 518: 1307, 1307, 1307, 522: 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 544: 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 578: 1307, 1307, 607: 3426}, + {1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 487: 1306, 1306, 1306, 491: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 502: 1306, 1306, 1306, 506: 1306, 1306, 510: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 518: 1306, 1306, 1306, 522: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 544: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 578: 1306, 1306, 607: 1306, 665: 4063, 669: 1306, 1306}, + {1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 487: 1303, 1303, 1303, 491: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 502: 1303, 1303, 1303, 506: 1303, 1303, 510: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 518: 1303, 1303, 1303, 522: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 544: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 578: 1303, 1303, 607: 1303, 669: 4059, 4060}, // 730 - {476: 3897}, - {476: 2608, 713: 3896}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3893, 2785, 2786, 2784}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3892, 3279, 3360, 3278, 3275}, - {476: 3887}, + {1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 487: 1302, 1302, 1302, 491: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 502: 1302, 1302, 1302, 506: 1302, 1302, 510: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 518: 1302, 1302, 1302, 522: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 544: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 578: 1302, 1302, 607: 1302}, + {1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 487: 1301, 1301, 1301, 491: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 502: 1301, 1301, 1301, 506: 1301, 1301, 510: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 518: 1301, 1301, 1301, 522: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 544: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 578: 1301, 1301, 607: 1301}, + {1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 487: 1300, 1300, 1300, 491: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 502: 1300, 1300, 1300, 506: 1300, 1300, 510: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 518: 1300, 1300, 1300, 522: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 544: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 578: 1300, 1300, 607: 1300}, + {1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 487: 1298, 1298, 1298, 491: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 502: 1298, 1298, 1298, 506: 1298, 1298, 510: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 518: 1298, 1298, 1298, 522: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 544: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 578: 1298, 1298, 607: 1298}, + {1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 487: 1297, 1297, 1297, 491: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 502: 1297, 1297, 1297, 506: 1297, 1297, 510: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 518: 1297, 1297, 1297, 522: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 544: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 578: 1297, 1297, 607: 1297}, // 735 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 546: 1094, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3874, 1218: 3875}, - {476: 3816}, - {476: 3813}, - {476: 3805}, - {476: 1244}, + {1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 487: 1296, 1296, 1296, 491: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 502: 1296, 1296, 1296, 506: 1296, 1296, 510: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 518: 1296, 1296, 1296, 522: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 544: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 578: 1296, 1296, 607: 1296}, + {1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 487: 1295, 1295, 1295, 491: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 502: 1295, 1295, 1295, 506: 1295, 1295, 510: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 518: 1295, 1295, 1295, 522: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 544: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 578: 1295, 1295, 607: 1295}, + {1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 487: 1294, 1294, 1294, 491: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 502: 1294, 1294, 1294, 506: 1294, 1294, 510: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 518: 1294, 1294, 1294, 522: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 544: 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 1294, 578: 1294, 1294, 607: 1294}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4058, 3328, 3409, 3327, 3324}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4057, 3328, 3409, 3327, 3324}, // 740 - {476: 1241}, - {476: 1238}, - {476: 1234}, - {476: 1232}, - {476: 1231}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4056, 3328, 3409, 3327, 3324}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4055, 3328, 3409, 3327, 3324}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4054, 3328, 3409, 3327, 3324}, + {1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 487: 1287, 1287, 1287, 491: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 502: 1287, 1287, 1287, 506: 1287, 1287, 510: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 518: 1287, 1287, 1287, 522: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 544: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 578: 1287, 1287, 607: 1287}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 2641, 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3954, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 2639, 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 658: 2635, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3953, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3951, 762: 3956, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 3958, 3957, 793: 3952}, // 745 - {476: 1229}, - {1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 483: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 492: 1218, 1218, 1218, 496: 1218, 1218, 499: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 509: 1218, 1218, 512: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 534: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 568: 1218, 1218, 597: 1218}, - {1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 483: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 492: 1217, 1217, 1217, 496: 1217, 1217, 499: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 509: 1217, 1217, 512: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 534: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 568: 1217, 1217, 597: 1217}, - {1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 483: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 492: 1216, 1216, 1216, 496: 1216, 1216, 499: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 509: 1216, 1216, 512: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 534: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 568: 1216, 1216, 597: 1216}, - {1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 483: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 492: 1215, 1215, 1215, 496: 1215, 1215, 499: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 509: 1215, 1215, 512: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 534: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 568: 1215, 1215, 597: 1215}, + {486: 3946}, + {486: 2642, 723: 3945}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3942, 2824, 2825, 2823}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3941, 3328, 3409, 3327, 3324}, + {486: 3936}, // 750 - {1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 483: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 492: 1214, 1214, 1214, 496: 1214, 1214, 499: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 509: 1214, 1214, 512: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 534: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 568: 1214, 1214, 597: 1214}, - {1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 483: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 492: 1213, 1213, 1213, 496: 1213, 1213, 499: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 509: 1213, 1213, 512: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 534: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 568: 1213, 1213, 597: 1213}, - {1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 483: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 492: 1212, 1212, 1212, 496: 1212, 1212, 499: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 509: 1212, 1212, 512: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 534: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 568: 1212, 1212, 597: 1212}, - {1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 483: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 492: 1211, 1211, 1211, 496: 1211, 1211, 499: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 509: 1211, 1211, 512: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 534: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 568: 1211, 1211, 597: 1211}, - {1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 483: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 492: 1210, 1210, 1210, 496: 1210, 1210, 499: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 509: 1210, 1210, 512: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 534: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 568: 1210, 1210, 597: 1210}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 556: 1107, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3923, 1231: 3924}, + {486: 3865}, + {486: 3862}, + {486: 3854}, + {486: 1257}, // 755 - {1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 483: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 492: 1209, 1209, 1209, 496: 1209, 1209, 499: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 509: 1209, 1209, 512: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 534: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 568: 1209, 1209, 597: 1209}, - {1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 483: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 492: 1208, 1208, 1208, 496: 1208, 1208, 499: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 509: 1208, 1208, 512: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 534: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 568: 1208, 1208, 597: 1208}, - {476: 3802}, - {476: 3799}, - {1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 3796, 1220, 1220, 1220, 1220, 1220, 483: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 492: 1220, 1220, 1220, 496: 1220, 1220, 499: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 509: 1220, 1220, 512: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 534: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 568: 1220, 1220, 597: 1220, 1100: 3797}, + {486: 1254}, + {486: 1251}, + {486: 1247}, + {486: 1245}, + {486: 1244}, // 760 - {476: 3794}, - {1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 3790, 1126, 1126, 1126, 1126, 1126, 483: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 492: 1126, 1126, 1126, 496: 1126, 1126, 499: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 509: 1126, 1126, 512: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 534: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 568: 1126, 1126, 597: 1126, 1231: 3789}, - {476: 3781}, - {476: 3777}, - {476: 3772}, + {486: 1242}, + {1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 491: 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 502: 1231, 1231, 1231, 506: 1231, 1231, 510: 1231, 1231, 1231, 1231, 1231, 1231, 1231, 518: 1231, 1231, 1231, 522: 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 544: 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 1231, 578: 1231, 1231, 607: 1231}, + {1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 491: 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 502: 1230, 1230, 1230, 506: 1230, 1230, 510: 1230, 1230, 1230, 1230, 1230, 1230, 1230, 518: 1230, 1230, 1230, 522: 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 544: 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 578: 1230, 1230, 607: 1230}, + {1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 491: 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 502: 1229, 1229, 1229, 506: 1229, 1229, 510: 1229, 1229, 1229, 1229, 1229, 1229, 1229, 518: 1229, 1229, 1229, 522: 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 544: 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 578: 1229, 1229, 607: 1229}, + {1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 491: 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 502: 1228, 1228, 1228, 506: 1228, 1228, 510: 1228, 1228, 1228, 1228, 1228, 1228, 1228, 518: 1228, 1228, 1228, 522: 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 544: 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 578: 1228, 1228, 607: 1228}, // 765 - {476: 3769}, - {476: 3764}, - {476: 3755}, - {476: 3748}, - {476: 3743}, + {1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 491: 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 502: 1227, 1227, 1227, 506: 1227, 1227, 510: 1227, 1227, 1227, 1227, 1227, 1227, 1227, 518: 1227, 1227, 1227, 522: 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 544: 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 578: 1227, 1227, 607: 1227}, + {1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 491: 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 502: 1226, 1226, 1226, 506: 1226, 1226, 510: 1226, 1226, 1226, 1226, 1226, 1226, 1226, 518: 1226, 1226, 1226, 522: 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 544: 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 578: 1226, 1226, 607: 1226}, + {1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 491: 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 502: 1225, 1225, 1225, 506: 1225, 1225, 510: 1225, 1225, 1225, 1225, 1225, 1225, 1225, 518: 1225, 1225, 1225, 522: 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 544: 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 578: 1225, 1225, 607: 1225}, + {1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 491: 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 502: 1224, 1224, 1224, 506: 1224, 1224, 510: 1224, 1224, 1224, 1224, 1224, 1224, 1224, 518: 1224, 1224, 1224, 522: 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 544: 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 578: 1224, 1224, 607: 1224}, + {1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 491: 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 502: 1223, 1223, 1223, 506: 1223, 1223, 510: 1223, 1223, 1223, 1223, 1223, 1223, 1223, 518: 1223, 1223, 1223, 522: 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 544: 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 1223, 578: 1223, 1223, 607: 1223}, // 770 - {476: 3706}, - {476: 3692}, - {476: 3675}, - {1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 477: 1173, 1173, 1173, 1173, 1173, 483: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 492: 1173, 1173, 1173, 496: 1173, 1173, 499: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 509: 1173, 1173, 512: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 534: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 568: 1173, 1173, 597: 1173}, - {476: 3668}, + {1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 491: 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 502: 1222, 1222, 1222, 506: 1222, 1222, 510: 1222, 1222, 1222, 1222, 1222, 1222, 1222, 518: 1222, 1222, 1222, 522: 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 544: 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 578: 1222, 1222, 607: 1222}, + {1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 491: 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 502: 1221, 1221, 1221, 506: 1221, 1221, 510: 1221, 1221, 1221, 1221, 1221, 1221, 1221, 518: 1221, 1221, 1221, 522: 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 544: 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 578: 1221, 1221, 607: 1221}, + {486: 3851}, + {486: 3848}, + {1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 3845, 1233, 1233, 1233, 491: 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 502: 1233, 1233, 1233, 506: 1233, 1233, 510: 1233, 1233, 1233, 1233, 1233, 1233, 1233, 518: 1233, 1233, 1233, 522: 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 544: 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 1233, 578: 1233, 1233, 607: 1233, 1112: 3846}, // 775 - {476: 1167}, - {476: 1166}, - {1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 477: 1158, 1158, 1158, 1158, 1158, 483: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 492: 1158, 1158, 1158, 496: 1158, 1158, 499: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 509: 1158, 1158, 512: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 534: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 568: 1158, 1158, 597: 1158}, - {476: 3665}, - {476: 3662}, + {486: 3843}, + {1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 3839, 1139, 1139, 1139, 491: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 502: 1139, 1139, 1139, 506: 1139, 1139, 510: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 518: 1139, 1139, 1139, 522: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 544: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 578: 1139, 1139, 607: 1139, 1244: 3838}, + {486: 3830}, + {486: 3826}, + {486: 3821}, // 780 - {476: 3654}, - {476: 3646}, - {476: 3638}, - {476: 3624}, - {476: 3612}, + {486: 3818}, + {486: 3813}, + {486: 3804}, + {486: 3797}, + {486: 3792}, // 785 - {476: 3607}, - {476: 3602}, - {476: 3597}, - {476: 3592}, - {476: 3587}, + {486: 3755}, + {486: 3741}, + {486: 3724}, + {1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 487: 1186, 1186, 1186, 491: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 502: 1186, 1186, 1186, 506: 1186, 1186, 510: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 518: 1186, 1186, 1186, 522: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 544: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 578: 1186, 1186, 607: 1186}, + {486: 3717}, // 790 - {476: 3582}, - {476: 3569}, - {476: 3566}, - {476: 3563}, - {476: 3560}, + {486: 1180}, + {486: 1179}, + {1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 487: 1171, 1171, 1171, 491: 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 502: 1171, 1171, 1171, 506: 1171, 1171, 510: 1171, 1171, 1171, 1171, 1171, 1171, 1171, 518: 1171, 1171, 1171, 522: 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 544: 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 578: 1171, 1171, 607: 1171}, + {486: 3714}, + {486: 3711}, // 795 - {476: 3557}, - {476: 3554}, - {476: 3550}, - {476: 3544}, - {476: 3531}, + {486: 3703}, + {486: 3695}, + {486: 3687}, + {486: 3673}, + {486: 3661}, // 800 - {476: 3526}, - {476: 3521}, - {476: 3363}, - {765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 477: 765, 765, 765, 765, 765, 483: 765, 765, 765, 765, 765, 765, 765, 765, 492: 765, 765, 765, 496: 765, 765, 499: 765, 765, 765, 765, 765, 765, 765, 765, 509: 765, 765, 512: 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 534: 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, 568: 765, 765, 597: 765}, - {764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 477: 764, 764, 764, 764, 764, 483: 764, 764, 764, 764, 764, 764, 764, 764, 492: 764, 764, 764, 496: 764, 764, 499: 764, 764, 764, 764, 764, 764, 764, 764, 509: 764, 764, 512: 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 534: 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 764, 568: 764, 764, 597: 764}, + {486: 3656}, + {486: 3651}, + {486: 3646}, + {486: 3641}, + {486: 3636}, // 805 - {763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 477: 763, 763, 763, 763, 763, 483: 763, 763, 763, 763, 763, 763, 763, 763, 492: 763, 763, 763, 496: 763, 763, 499: 763, 763, 763, 763, 763, 763, 763, 763, 509: 763, 763, 512: 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 534: 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 763, 568: 763, 763, 597: 763}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3364}, - {9: 3372, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3520}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3519}, + {486: 3631}, + {486: 3618}, + {486: 3615}, + {486: 3612}, + {486: 3609}, // 810 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3518}, - {2: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 10: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 51: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 476: 1944, 478: 1944, 1944, 1944, 482: 1944, 485: 1944, 1944, 488: 1944, 1944, 1944, 495: 1944, 498: 1944, 507: 1944, 1944, 511: 1944, 533: 1944, 567: 1944, 570: 1944, 1944, 573: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 585: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 595: 1944, 1944, 598: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 651: 1944}, - {2: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 10: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 51: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 476: 1943, 478: 1943, 1943, 1943, 482: 1943, 485: 1943, 1943, 488: 1943, 1943, 1943, 495: 1943, 498: 1943, 507: 1943, 1943, 511: 1943, 533: 1943, 567: 1943, 570: 1943, 1943, 573: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 585: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 595: 1943, 1943, 598: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 651: 1943}, - {2: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 10: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 51: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 476: 1942, 478: 1942, 1942, 1942, 482: 1942, 485: 1942, 1942, 488: 1942, 1942, 1942, 495: 1942, 498: 1942, 507: 1942, 1942, 511: 1942, 533: 1942, 567: 1942, 570: 1942, 1942, 573: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 585: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 595: 1942, 1942, 598: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 651: 1942}, - {2: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 10: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 51: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 476: 1941, 478: 1941, 1941, 1941, 482: 1941, 485: 1941, 1941, 488: 1941, 1941, 1941, 495: 1941, 498: 1941, 507: 1941, 1941, 511: 1941, 533: 1941, 567: 1941, 570: 1941, 1941, 573: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 585: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 595: 1941, 1941, 598: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 651: 1941}, + {486: 3606}, + {486: 3603}, + {486: 3599}, + {486: 3593}, + {486: 3580}, // 815 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3373, 3279, 3360, 3278, 3275}, - {50: 3378, 487: 3376, 597: 3377}, - {476: 1240}, - {762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 477: 762, 762, 762, 762, 762, 483: 762, 762, 762, 762, 762, 762, 762, 762, 492: 762, 762, 762, 496: 762, 762, 499: 762, 762, 762, 762, 762, 762, 762, 762, 509: 762, 762, 512: 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 534: 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 568: 762, 762, 597: 762}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3515, 664: 3517, 2785, 2786, 2784, 742: 3514, 876: 3513}, + {486: 3575}, + {486: 3570}, + {486: 3412}, + {778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 487: 778, 778, 778, 491: 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 502: 778, 778, 778, 506: 778, 778, 510: 778, 778, 778, 778, 778, 778, 778, 518: 778, 778, 778, 522: 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 544: 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 778, 578: 778, 778, 607: 778}, + {777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 487: 777, 777, 777, 491: 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 502: 777, 777, 777, 506: 777, 777, 510: 777, 777, 777, 777, 777, 777, 777, 518: 777, 777, 777, 522: 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 544: 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 777, 578: 777, 777, 607: 777}, // 820 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3512, 3279, 3360, 3278, 3275}, - {149: 949, 492: 949, 503: 3380, 746: 949, 1273: 3379}, - {149: 3384, 492: 3385, 746: 952, 889: 3383}, - {10: 3381, 185: 3382}, - {149: 948, 492: 948, 746: 948}, + {776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 487: 776, 776, 776, 491: 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 502: 776, 776, 776, 506: 776, 776, 510: 776, 776, 776, 776, 776, 776, 776, 518: 776, 776, 776, 522: 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 544: 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 776, 578: 776, 776, 607: 776}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3413}, + {9: 3421, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3569}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3568}, // 825 - {149: 947, 492: 947, 746: 947}, - {746: 3388, 751: 3389}, - {276: 3387}, - {276: 3386}, - {746: 950}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3567}, + {2: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 10: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 74: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 486: 1967, 1967, 489: 1967, 1967, 1967, 496: 1967, 1967, 1967, 1967, 1967, 505: 1967, 508: 1967, 1967, 517: 1967, 521: 1967, 543: 1967, 577: 1967, 580: 1967, 582: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 595: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 606: 1967, 608: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 662: 1967}, + {2: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 10: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 74: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 486: 1966, 1966, 489: 1966, 1966, 1966, 496: 1966, 1966, 1966, 1966, 1966, 505: 1966, 508: 1966, 1966, 517: 1966, 521: 1966, 543: 1966, 577: 1966, 580: 1966, 582: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 595: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 606: 1966, 608: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 662: 1966}, + {2: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 10: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 74: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 486: 1965, 1965, 489: 1965, 1965, 1965, 496: 1965, 1965, 1965, 1965, 1965, 505: 1965, 508: 1965, 1965, 517: 1965, 521: 1965, 543: 1965, 577: 1965, 580: 1965, 582: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 595: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 606: 1965, 608: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 662: 1965}, + {2: 1964, 1964, 1964, 1964, 1964, 1964, 1964, 10: 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 74: 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 486: 1964, 1964, 489: 1964, 1964, 1964, 496: 1964, 1964, 1964, 1964, 1964, 505: 1964, 508: 1964, 1964, 517: 1964, 521: 1964, 543: 1964, 577: 1964, 580: 1964, 582: 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 595: 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 606: 1964, 608: 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 662: 1964}, // 830 - {746: 951}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 3427, 664: 3426, 2785, 2786, 2784, 928: 3429, 1171: 3430, 1359: 3428}, - {958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 477: 958, 958, 958, 958, 958, 483: 958, 958, 958, 958, 958, 958, 958, 958, 492: 958, 958, 958, 496: 958, 958, 499: 958, 958, 958, 958, 958, 958, 958, 958, 509: 958, 958, 512: 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 534: 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 958, 568: 958, 958, 597: 958}, - {1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 668: 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849, 1849}, - {1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 668: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3422, 3328, 3409, 3327, 3324}, + {73: 3427, 493: 3425, 607: 3426}, + {486: 1253}, + {775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 487: 775, 775, 775, 491: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 502: 775, 775, 775, 506: 775, 775, 510: 775, 775, 775, 775, 775, 775, 775, 518: 775, 775, 775, 522: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 544: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 578: 775, 775, 607: 775}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3564, 676: 3566, 2824, 2825, 2823, 752: 3563, 887: 3562}, // 835 - {1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 668: 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831, 1831}, - {1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 668: 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820}, - {1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 668: 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809, 1809}, - {1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 668: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807}, - {1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 668: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3561, 3328, 3409, 3327, 3324}, + {156: 962, 502: 962, 514: 3429, 756: 962, 1286: 3428}, + {156: 3433, 502: 3434, 756: 965, 901: 3432}, + {10: 3430, 192: 3431}, + {156: 961, 502: 961, 756: 961}, // 840 - {1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 668: 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778, 1778}, - {1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 668: 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768, 1768}, - {1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 668: 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743, 1743}, - {1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 668: 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742, 1742}, - {1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 668: 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739, 1739}, + {156: 960, 502: 960, 756: 960}, + {756: 3437, 761: 3438}, + {285: 3436}, + {285: 3435}, + {756: 963}, // 845 - {1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 668: 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734, 1734}, - {1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 668: 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732, 1732}, - {1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 668: 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731, 1731}, - {1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 668: 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728, 1728}, - {1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 668: 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726, 1726}, + {756: 964}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 3476, 676: 3475, 2824, 2825, 2823, 939: 3478, 1185: 3479, 1372: 3477}, + {971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 487: 971, 971, 971, 491: 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 502: 971, 971, 971, 506: 971, 971, 510: 971, 971, 971, 971, 971, 971, 971, 518: 971, 971, 971, 522: 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 544: 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 578: 971, 971, 607: 971}, + {1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 680: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872}, + {1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 680: 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866, 1866}, // 850 - {1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 668: 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1713}, - {1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 668: 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690}, - {1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 668: 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673, 1673}, - {1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 668: 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672, 1672}, - {1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 668: 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671, 1671}, + {1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 680: 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854, 1854}, + {1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 680: 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843}, + {1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 680: 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832, 1832}, + {1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 680: 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830, 1830}, + {1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 680: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807}, // 855 - {1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 668: 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667, 1667}, - {1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 668: 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666, 1666}, - {1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 668: 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660, 1660}, - {1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 668: 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551}, - {1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 668: 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550}, + {1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 680: 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801, 1801}, + {1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 680: 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791}, + {1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 680: 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765, 1765}, + {1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 680: 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764, 1764}, + {1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 680: 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761, 1761}, // 860 - {1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 668: 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549}, - {1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 668: 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548}, - {1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 668: 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460}, - {1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 668: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445}, - {1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 668: 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427}, + {1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 680: 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756, 1756}, + {1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 680: 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754, 1754}, + {1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 680: 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753, 1753}, + {1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 680: 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750, 1750}, + {1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 680: 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748, 1748}, // 865 - {1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 668: 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415, 1415}, - {1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 668: 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414}, - {1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 668: 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394}, - {1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 668: 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393}, - {1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 477: 1000, 1000, 1000, 1000, 1000, 483: 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 496: 1000, 1000, 499: 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 509: 1000, 1000, 512: 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 534: 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 568: 1000, 1000, 597: 1000}, + {1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 680: 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735, 1735}, + {1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 680: 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712}, + {1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 680: 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695}, + {1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 680: 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694}, + {1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 680: 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693, 1693}, // 870 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 997, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 491: 997, 505: 997, 527: 997, 530: 997, 997, 664: 3426, 2785, 2786, 2784, 928: 3433, 1272: 3432, 1360: 3431}, - {971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 477: 971, 971, 971, 971, 971, 483: 971, 971, 971, 971, 971, 971, 971, 971, 492: 971, 971, 971, 496: 971, 971, 499: 971, 971, 971, 971, 971, 971, 971, 971, 509: 971, 971, 512: 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 534: 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 971, 568: 971, 971, 597: 971}, - {970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 477: 970, 970, 970, 970, 970, 483: 970, 970, 970, 970, 970, 970, 970, 970, 492: 970, 970, 970, 496: 970, 970, 499: 970, 970, 970, 970, 970, 970, 970, 970, 509: 970, 970, 512: 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 534: 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, 568: 970, 970, 597: 970}, - {969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 477: 969, 969, 969, 969, 969, 483: 969, 969, 969, 969, 969, 969, 969, 969, 492: 969, 969, 969, 496: 969, 969, 499: 969, 969, 969, 969, 969, 969, 969, 969, 509: 969, 969, 512: 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 534: 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, 568: 969, 969, 597: 969}, - {50: 3511}, + {1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 680: 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689, 1689}, + {1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 680: 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688, 1688}, + {1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 680: 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682, 1682}, + {1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 680: 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573}, + {1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 680: 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1572}, // 875 - {50: 995, 491: 3435, 505: 995, 527: 995, 530: 995, 995, 1276: 3434}, - {50: 996, 491: 996, 505: 996, 527: 996, 530: 996, 996}, - {50: 993, 505: 3441, 527: 993, 530: 993, 993, 1279: 3440}, - {663: 3436}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 2777, 875: 3267, 905: 3437}, + {1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 680: 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571}, + {1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 680: 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570}, + {1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 680: 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478}, + {1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 680: 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463}, + {1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 680: 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445}, // 880 - {9: 3438, 50: 994, 505: 994, 527: 994, 530: 994, 994}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 2777, 875: 3439}, - {1319, 1319, 9: 1319, 50: 1319, 128: 1319, 475: 1319, 477: 1319, 483: 1319, 1319, 493: 1319, 1319, 496: 1319, 1319, 499: 1319, 1319, 504: 1319, 1319, 517: 1319, 519: 1319, 527: 1319, 530: 1319, 1319}, - {50: 991, 527: 3446, 530: 3447, 3448, 1278: 3444, 1358: 3445}, - {663: 3442}, + {1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 680: 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433}, + {1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 680: 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432}, + {1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 680: 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412}, + {1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 680: 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411}, + {1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 487: 1013, 1013, 1013, 491: 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 506: 1013, 1013, 510: 1013, 1013, 1013, 1013, 1013, 1013, 1013, 518: 1013, 1013, 1013, 522: 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 544: 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 578: 1013, 1013, 607: 1013}, // 885 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 2777, 875: 3267, 905: 3443}, - {9: 3438, 50: 992, 527: 992, 530: 992, 992}, - {50: 998}, - {151: 3459, 171: 3455, 511: 3449, 566: 3460, 576: 3451, 3450, 580: 3457, 3458, 824: 3456, 984: 3453, 1356: 3454, 3452}, - {151: 989, 171: 989, 511: 989, 566: 989, 576: 989, 989, 580: 989, 989}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1010, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 501: 1010, 516: 1010, 537: 1010, 540: 1010, 1010, 676: 3475, 2824, 2825, 2823, 939: 3482, 1285: 3481, 1373: 3480}, + {984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 487: 984, 984, 984, 491: 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 502: 984, 984, 984, 506: 984, 984, 510: 984, 984, 984, 984, 984, 984, 984, 518: 984, 984, 984, 522: 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 544: 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 984, 578: 984, 984, 607: 984}, + {983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 487: 983, 983, 983, 491: 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 502: 983, 983, 983, 506: 983, 983, 510: 983, 983, 983, 983, 983, 983, 983, 518: 983, 983, 983, 522: 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 544: 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 983, 578: 983, 983, 607: 983}, + {982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 487: 982, 982, 982, 491: 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 502: 982, 982, 982, 506: 982, 982, 510: 982, 982, 982, 982, 982, 982, 982, 518: 982, 982, 982, 522: 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 544: 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 982, 578: 982, 982, 607: 982}, + {73: 3560}, // 890 - {151: 988, 171: 988, 511: 988, 566: 988, 576: 988, 988, 580: 988, 988}, - {151: 987, 171: 987, 511: 987, 566: 987, 576: 987, 987, 580: 987, 987}, - {2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 50: 2239, 136: 2239, 153: 2239, 475: 2239, 2239, 2239, 479: 2239, 2239, 2239, 2239, 2239, 487: 2239, 491: 2239, 2239, 495: 2239, 498: 2239, 506: 2239, 2239, 2239, 572: 2239, 584: 2239, 593: 2239, 2239, 645: 2239, 2239, 2239, 2239, 2239, 2239, 652: 2239}, - {2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 2238, 50: 2238, 136: 2238, 153: 2238, 197: 2238, 475: 2238, 2238, 2238, 479: 2238, 2238, 2238, 2238, 2238, 487: 2238, 491: 2238, 2238, 495: 2238, 498: 2238, 506: 2238, 2238, 2238, 572: 2238, 584: 2238, 593: 2238, 2238, 645: 2238, 2238, 2238, 2238, 2238, 2238, 652: 2238}, - {2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 2237, 50: 2237, 136: 2237, 153: 2237, 197: 2237, 475: 2237, 2237, 2237, 479: 2237, 2237, 2237, 2237, 2237, 487: 2237, 491: 2237, 2237, 495: 2237, 498: 2237, 506: 2237, 2237, 2237, 572: 2237, 584: 2237, 593: 2237, 2237, 645: 2237, 2237, 2237, 2237, 2237, 2237, 652: 2237}, + {73: 1008, 501: 3484, 516: 1008, 537: 1008, 540: 1008, 1008, 1289: 3483}, + {73: 1009, 501: 1009, 516: 1009, 537: 1009, 540: 1009, 1009}, + {73: 1006, 516: 3490, 537: 1006, 540: 1006, 1006, 1292: 3489}, + {673: 3485}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 2816, 886: 3316, 916: 3486}, // 895 - {50: 990}, - {50: 986}, - {50: 985}, - {136: 3506}, - {136: 3504}, + {9: 3487, 73: 1007, 516: 1007, 537: 1007, 540: 1007, 1007}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 2816, 886: 3488}, + {1332, 1332, 9: 1332, 73: 1332, 135: 1332, 485: 1332, 488: 1332, 494: 1332, 1332, 503: 1332, 1332, 506: 1332, 1332, 510: 1332, 1332, 515: 1332, 1332, 527: 1332, 529: 1332, 537: 1332, 540: 1332, 1332}, + {73: 1004, 537: 3495, 540: 3496, 3497, 1291: 3493, 1371: 3494}, + {673: 3491}, // 900 - {136: 3502}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3509}, - {578: 3508}, - {151: 3459, 171: 3461, 511: 3449, 576: 3451, 3450, 580: 3463, 3464, 824: 3462, 984: 3466, 1170: 3465}, - {136: 3506, 153: 3507}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 2816, 886: 3316, 916: 3492}, + {9: 3487, 73: 1005, 537: 1005, 540: 1005, 1005}, + {73: 1011}, + {158: 3508, 178: 3504, 521: 3498, 576: 3509, 586: 3500, 3499, 590: 3506, 592: 3507, 834: 3505, 994: 3502, 1369: 3503, 3501}, + {158: 1002, 178: 1002, 521: 1002, 576: 1002, 586: 1002, 1002, 590: 1002, 592: 1002}, // 905 - {136: 3504, 153: 3505}, - {136: 3502, 153: 3503}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3469}, - {510: 3467}, - {50: 978, 510: 978}, + {158: 1001, 178: 1001, 521: 1001, 576: 1001, 586: 1001, 1001, 590: 1001, 592: 1001}, + {158: 1000, 178: 1000, 521: 1000, 576: 1000, 586: 1000, 1000, 590: 1000, 592: 1000}, + {2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 73: 2264, 143: 2264, 160: 2264, 485: 2264, 2264, 488: 2264, 2264, 2264, 2264, 2264, 2264, 2264, 501: 2264, 2264, 505: 2264, 508: 2264, 2264, 517: 2264, 2264, 581: 2264, 594: 2264, 604: 2264, 2264, 655: 2264, 2264, 2264, 2264, 2264, 2264, 2264}, + {2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 73: 2263, 143: 2263, 160: 2263, 205: 2263, 485: 2263, 2263, 488: 2263, 2263, 2263, 2263, 2263, 2263, 2263, 501: 2263, 2263, 505: 2263, 508: 2263, 2263, 517: 2263, 2263, 581: 2263, 594: 2263, 604: 2263, 2263, 655: 2263, 2263, 2263, 2263, 2263, 2263, 2263}, + {2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 73: 2262, 143: 2262, 160: 2262, 205: 2262, 485: 2262, 2262, 488: 2262, 2262, 2262, 2262, 2262, 2262, 2262, 501: 2262, 2262, 505: 2262, 508: 2262, 2262, 517: 2262, 2262, 581: 2262, 594: 2262, 604: 2262, 2262, 655: 2262, 2262, 2262, 2262, 2262, 2262, 2262}, // 910 - {151: 3459, 171: 3461, 511: 3449, 576: 3451, 3450, 580: 3463, 3464, 824: 3462, 984: 3466, 1170: 3468}, - {50: 979}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 3499}, - {1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 483: 1123, 1123, 1123, 1123, 488: 1123, 1123, 1123, 492: 1123, 1123, 1123, 496: 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 509: 1123, 1123, 512: 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 534: 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 568: 1123, 1123, 572: 1123, 649: 1123}, - {1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 483: 1122, 1122, 1122, 1122, 488: 1122, 1122, 1122, 492: 1122, 1122, 1122, 496: 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 509: 1122, 1122, 512: 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 534: 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 568: 1122, 1122, 572: 1122, 649: 1122}, + {73: 1003}, + {73: 999}, + {73: 998}, + {143: 3555}, + {143: 3553}, // 915 - {1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 483: 1121, 1121, 1121, 1121, 488: 1121, 1121, 1121, 492: 1121, 1121, 1121, 496: 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 509: 1121, 1121, 512: 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 534: 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 568: 1121, 1121, 572: 1121, 649: 1121}, - {1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 483: 1120, 1120, 1120, 1120, 488: 1120, 1120, 1120, 492: 1120, 1120, 1120, 496: 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 509: 1120, 1120, 512: 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 534: 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 568: 1120, 1120, 572: 1120, 649: 1120}, - {1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 483: 1119, 1119, 1119, 1119, 488: 1119, 1119, 1119, 492: 1119, 1119, 1119, 496: 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 509: 1119, 1119, 512: 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 534: 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 568: 1119, 1119, 572: 1119, 649: 1119}, - {1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 483: 1118, 1118, 1118, 1118, 488: 1118, 1118, 1118, 492: 1118, 1118, 1118, 496: 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 509: 1118, 1118, 512: 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 534: 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 568: 1118, 1118, 572: 1118, 649: 1118}, - {1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 483: 1117, 1117, 1117, 1117, 488: 1117, 1117, 1117, 492: 1117, 1117, 1117, 496: 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 509: 1117, 1117, 512: 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 534: 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 568: 1117, 1117, 572: 1117, 649: 1117}, + {143: 3551}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3558}, + {588: 3557}, + {158: 3508, 178: 3510, 521: 3498, 586: 3500, 3499, 590: 3512, 592: 3513, 834: 3511, 994: 3515, 1184: 3514}, + {143: 3555, 160: 3556}, // 920 - {1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 483: 1116, 1116, 1116, 1116, 488: 1116, 1116, 1116, 492: 1116, 1116, 1116, 496: 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 509: 1116, 1116, 512: 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 534: 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 568: 1116, 1116, 572: 1116, 649: 1116}, - {1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 483: 1115, 1115, 1115, 1115, 488: 1115, 1115, 1115, 492: 1115, 1115, 1115, 496: 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 509: 1115, 1115, 512: 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 534: 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 568: 1115, 1115, 572: 1115, 649: 1115}, - {1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 483: 1114, 1114, 1114, 1114, 488: 1114, 1114, 1114, 492: 1114, 1114, 1114, 496: 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 509: 1114, 1114, 512: 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 534: 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 568: 1114, 1114, 572: 1114, 649: 1114}, - {1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 483: 1113, 1113, 1113, 1113, 488: 1113, 1113, 1113, 492: 1113, 1113, 1113, 496: 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 509: 1113, 1113, 512: 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 534: 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 568: 1113, 1113, 572: 1113, 649: 1113}, - {1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 483: 1112, 1112, 1112, 1112, 488: 1112, 1112, 1112, 492: 1112, 1112, 1112, 496: 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 509: 1112, 1112, 512: 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 534: 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 568: 1112, 1112, 572: 1112, 649: 1112}, + {143: 3553, 160: 3554}, + {143: 3551, 160: 3552}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3518}, + {520: 3516}, + {73: 991, 520: 991}, // 925 - {1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 483: 1111, 1111, 1111, 1111, 488: 1111, 1111, 1111, 492: 1111, 1111, 1111, 496: 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 509: 1111, 1111, 512: 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 534: 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 568: 1111, 1111, 572: 1111, 649: 1111}, - {1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 483: 1110, 1110, 1110, 1110, 488: 1110, 1110, 1110, 492: 1110, 1110, 1110, 496: 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 509: 1110, 1110, 512: 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 534: 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 568: 1110, 1110, 572: 1110, 649: 1110}, - {1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 483: 1109, 1109, 1109, 1109, 488: 1109, 1109, 1109, 492: 1109, 1109, 1109, 496: 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 509: 1109, 1109, 512: 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 534: 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 568: 1109, 1109, 572: 1109, 649: 1109}, - {1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 483: 1108, 1108, 1108, 1108, 488: 1108, 1108, 1108, 492: 1108, 1108, 1108, 496: 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 509: 1108, 1108, 512: 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 534: 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 568: 1108, 1108, 572: 1108, 649: 1108}, - {1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 483: 1107, 1107, 1107, 1107, 488: 1107, 1107, 1107, 492: 1107, 1107, 1107, 496: 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 509: 1107, 1107, 512: 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 534: 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 568: 1107, 1107, 572: 1107, 649: 1107}, + {158: 3508, 178: 3510, 521: 3498, 586: 3500, 3499, 590: 3512, 592: 3513, 834: 3511, 994: 3515, 1184: 3517}, + {73: 992}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 3548}, + {1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 506: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 522: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 544: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 578: 1136, 1136, 581: 1136, 658: 1136, 660: 1136, 1136}, + {1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 506: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 522: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 544: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 578: 1135, 1135, 581: 1135, 658: 1135, 660: 1135, 1135}, // 930 - {1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 483: 1106, 1106, 1106, 1106, 488: 1106, 1106, 1106, 492: 1106, 1106, 1106, 496: 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 509: 1106, 1106, 512: 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 534: 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 568: 1106, 1106, 572: 1106, 649: 1106}, - {1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 483: 1105, 1105, 1105, 1105, 488: 1105, 1105, 1105, 492: 1105, 1105, 1105, 496: 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 509: 1105, 1105, 512: 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 534: 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 568: 1105, 1105, 572: 1105, 649: 1105}, - {1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 483: 1104, 1104, 1104, 1104, 488: 1104, 1104, 1104, 492: 1104, 1104, 1104, 496: 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 509: 1104, 1104, 512: 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 534: 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 1104, 568: 1104, 1104, 572: 1104, 649: 1104}, - {1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 483: 1103, 1103, 1103, 1103, 488: 1103, 1103, 1103, 492: 1103, 1103, 1103, 496: 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 509: 1103, 1103, 512: 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 534: 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 1103, 568: 1103, 1103, 572: 1103, 649: 1103}, - {1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 483: 1102, 1102, 1102, 1102, 488: 1102, 1102, 1102, 492: 1102, 1102, 1102, 496: 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 509: 1102, 1102, 512: 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 534: 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 1102, 568: 1102, 1102, 572: 1102, 649: 1102}, + {1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 506: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 522: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 544: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 578: 1134, 1134, 581: 1134, 658: 1134, 660: 1134, 1134}, + {1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 506: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 522: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 544: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 578: 1133, 1133, 581: 1133, 658: 1133, 660: 1133, 1133}, + {1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 506: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 522: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 544: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 578: 1132, 1132, 581: 1132, 658: 1132, 660: 1132, 1132}, + {1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 506: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 522: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 544: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 578: 1131, 1131, 581: 1131, 658: 1131, 660: 1131, 1131}, + {1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 506: 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 522: 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 544: 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 578: 1130, 1130, 581: 1130, 658: 1130, 660: 1130, 1130}, // 935 - {1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 483: 1101, 1101, 1101, 1101, 488: 1101, 1101, 1101, 492: 1101, 1101, 1101, 496: 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 509: 1101, 1101, 512: 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 534: 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1101, 568: 1101, 1101, 572: 1101, 649: 1101}, - {1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 483: 1100, 1100, 1100, 1100, 488: 1100, 1100, 1100, 492: 1100, 1100, 1100, 496: 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 509: 1100, 1100, 512: 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 534: 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 568: 1100, 1100, 572: 1100, 649: 1100}, - {1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 483: 1099, 1099, 1099, 1099, 488: 1099, 1099, 1099, 492: 1099, 1099, 1099, 496: 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 509: 1099, 1099, 512: 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 534: 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 568: 1099, 1099, 572: 1099, 649: 1099}, - {1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 483: 1098, 1098, 1098, 1098, 488: 1098, 1098, 1098, 492: 1098, 1098, 1098, 496: 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 509: 1098, 1098, 512: 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 534: 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 568: 1098, 1098, 572: 1098, 649: 1098}, - {1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 483: 1097, 1097, 1097, 1097, 488: 1097, 1097, 1097, 492: 1097, 1097, 1097, 496: 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 509: 1097, 1097, 512: 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 534: 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 568: 1097, 1097, 572: 1097, 649: 1097}, + {1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 506: 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 522: 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 544: 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 578: 1129, 1129, 581: 1129, 658: 1129, 660: 1129, 1129}, + {1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 506: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 522: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 544: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 578: 1128, 1128, 581: 1128, 658: 1128, 660: 1128, 1128}, + {1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 506: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 522: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 544: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 578: 1127, 1127, 581: 1127, 658: 1127, 660: 1127, 1127}, + {1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 506: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 522: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 544: 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 578: 1126, 1126, 581: 1126, 658: 1126, 660: 1126, 1126}, + {1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 506: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 522: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 544: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 578: 1125, 1125, 581: 1125, 658: 1125, 660: 1125, 1125}, // 940 - {1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 483: 1096, 1096, 1096, 1096, 488: 1096, 1096, 1096, 492: 1096, 1096, 1096, 496: 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 509: 1096, 1096, 512: 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 534: 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 568: 1096, 1096, 572: 1096, 649: 1096}, - {1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 483: 1095, 1095, 1095, 1095, 488: 1095, 1095, 1095, 492: 1095, 1095, 1095, 496: 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 509: 1095, 1095, 512: 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 534: 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 1095, 568: 1095, 1095, 572: 1095, 649: 1095}, - {136: 3500, 153: 3501}, - {50: 981, 510: 981}, - {50: 974, 510: 974}, + {1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 506: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 522: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 544: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 578: 1124, 1124, 581: 1124, 658: 1124, 660: 1124, 1124}, + {1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 506: 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 522: 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 544: 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 578: 1123, 1123, 581: 1123, 658: 1123, 660: 1123, 1123}, + {1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 506: 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 522: 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 544: 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 578: 1122, 1122, 581: 1122, 658: 1122, 660: 1122, 1122}, + {1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 506: 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 522: 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 544: 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 578: 1121, 1121, 581: 1121, 658: 1121, 660: 1121, 1121}, + {1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 506: 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 522: 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 544: 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 578: 1120, 1120, 581: 1120, 658: 1120, 660: 1120, 1120}, // 945 - {50: 982, 510: 982}, - {50: 975, 510: 975}, - {50: 983, 510: 983}, - {50: 976, 510: 976}, - {50: 984, 510: 984}, + {1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 506: 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 522: 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 544: 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 578: 1119, 1119, 581: 1119, 658: 1119, 660: 1119, 1119}, + {1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 506: 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 522: 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 544: 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 578: 1118, 1118, 581: 1118, 658: 1118, 660: 1118, 1118}, + {1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 506: 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 522: 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 544: 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 578: 1117, 1117, 581: 1117, 658: 1117, 660: 1117, 1117}, + {1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 506: 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 522: 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 544: 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 578: 1116, 1116, 581: 1116, 658: 1116, 660: 1116, 1116}, + {1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 506: 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 522: 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 544: 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 578: 1115, 1115, 581: 1115, 658: 1115, 660: 1115, 1115}, // 950 - {50: 977, 510: 977}, - {50: 980, 510: 980}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 3510}, - {136: 3500}, - {999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 477: 999, 999, 999, 999, 999, 483: 999, 999, 999, 999, 999, 999, 999, 999, 492: 999, 999, 999, 496: 999, 999, 499: 999, 999, 999, 999, 999, 999, 999, 999, 509: 999, 999, 512: 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 534: 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 999, 568: 999, 999, 597: 999}, + {1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 506: 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 522: 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 544: 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 578: 1114, 1114, 581: 1114, 658: 1114, 660: 1114, 1114}, + {1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 506: 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 522: 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 544: 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 578: 1113, 1113, 581: 1113, 658: 1113, 660: 1113, 1113}, + {1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 506: 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 522: 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 544: 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 578: 1112, 1112, 581: 1112, 658: 1112, 660: 1112, 1112}, + {1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 506: 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 522: 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 544: 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 578: 1111, 1111, 581: 1111, 658: 1111, 660: 1111, 1111}, + {1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 506: 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 522: 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 544: 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 578: 1110, 1110, 581: 1110, 658: 1110, 660: 1110, 1110}, // 955 - {1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 477: 1276, 1276, 1276, 1276, 1276, 483: 1276, 1276, 1276, 1276, 3376, 1276, 1276, 1276, 492: 1276, 1276, 1276, 496: 1276, 1276, 499: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 509: 1276, 1276, 512: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 534: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 568: 1276, 1276, 597: 1276}, - {1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 477: 1286, 1286, 1286, 1286, 1286, 483: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 492: 1286, 1286, 1286, 496: 1286, 1286, 499: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 509: 1286, 1286, 512: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 534: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 568: 1286, 1286, 597: 1286}, - {769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 512: 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 534: 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 769, 568: 769, 769, 572: 769, 584: 769, 593: 769, 769, 597: 769, 645: 769, 769, 769, 769, 769, 769, 652: 769}, - {768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 512: 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 534: 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, 568: 768, 768, 572: 768, 584: 768, 593: 768, 768, 597: 768, 645: 768, 768, 768, 768, 768, 768, 652: 768}, - {268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 512: 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 268, 568: 268, 268, 571: 268, 268, 584: 268, 593: 268, 268, 597: 268, 645: 268, 268, 268, 268, 268, 268, 652: 268, 268, 656: 268, 661: 268, 663: 268, 669: 268, 268, 268}, + {1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 506: 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 522: 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 544: 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 578: 1109, 1109, 581: 1109, 658: 1109, 660: 1109, 1109}, + {1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 506: 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 522: 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 544: 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 578: 1108, 1108, 581: 1108, 658: 1108, 660: 1108, 1108}, + {143: 3549, 160: 3550}, + {73: 994, 520: 994}, + {73: 987, 520: 987}, // 960 - {267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 512: 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, 568: 267, 267, 571: 267, 267, 584: 267, 593: 267, 267, 597: 267, 645: 267, 267, 267, 267, 267, 267, 652: 267, 267, 656: 267, 661: 267, 663: 267, 669: 267, 267, 267}, - {1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 477: 1958, 1958, 481: 1958, 483: 1958, 1958, 1958, 1958, 492: 1958, 1958, 1958, 496: 1958, 1958, 499: 1958, 1958, 1958, 503: 1958, 1958, 1958, 1958, 509: 1958, 1958, 512: 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 522: 1958, 524: 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 534: 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 1958, 548: 1958, 1958, 738: 3367, 3365}, - {1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 477: 1959, 1959, 481: 1959, 483: 1959, 1959, 1959, 1959, 492: 1959, 1959, 1959, 496: 1959, 1959, 499: 1959, 1959, 1959, 503: 1959, 1959, 1959, 1959, 509: 1959, 3371, 512: 1959, 3370, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 522: 1959, 524: 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 534: 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 1959, 548: 1959, 1959, 738: 3367, 3365}, - {1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 477: 1960, 1960, 481: 1960, 483: 1960, 1960, 1960, 1960, 492: 1960, 1960, 1960, 496: 1960, 1960, 499: 1960, 1960, 1960, 503: 1960, 1960, 1960, 1960, 509: 1960, 3371, 512: 1960, 3370, 1960, 3366, 1960, 1960, 1960, 1960, 1960, 522: 1960, 524: 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 534: 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 548: 1960, 1960, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3522}, + {73: 995, 520: 995}, + {73: 988, 520: 988}, + {73: 996, 520: 996}, + {73: 989, 520: 989}, + {73: 997, 520: 997}, // 965 - {50: 3523, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {149: 3384, 492: 3385, 746: 952, 889: 3524}, - {746: 3388, 751: 3525}, - {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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 477: 959, 959, 959, 959, 959, 483: 959, 959, 959, 959, 959, 959, 959, 959, 492: 959, 959, 959, 496: 959, 959, 499: 959, 959, 959, 959, 959, 959, 959, 959, 509: 959, 959, 512: 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 534: 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, 959, 959, 959, 568: 959, 959, 597: 959}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3527}, + {73: 990, 520: 990}, + {73: 993, 520: 993}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 3559}, + {143: 3549}, + {1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 487: 1012, 1012, 1012, 491: 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 502: 1012, 1012, 1012, 506: 1012, 1012, 510: 1012, 1012, 1012, 1012, 1012, 1012, 1012, 518: 1012, 1012, 1012, 522: 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 544: 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 578: 1012, 1012, 607: 1012}, // 970 - {50: 3528, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {149: 3384, 492: 3385, 746: 952, 889: 3529}, - {746: 3388, 751: 3530}, - {960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 477: 960, 960, 960, 960, 960, 483: 960, 960, 960, 960, 960, 960, 960, 960, 492: 960, 960, 960, 496: 960, 960, 499: 960, 960, 960, 960, 960, 960, 960, 960, 509: 960, 960, 512: 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 534: 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 960, 568: 960, 960, 597: 960}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3532}, + {1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 487: 1289, 1289, 1289, 491: 1289, 1289, 3425, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 502: 1289, 1289, 1289, 506: 1289, 1289, 510: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 518: 1289, 1289, 1289, 522: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 544: 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 1289, 578: 1289, 1289, 607: 1289}, + {1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 487: 1299, 1299, 1299, 491: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 502: 1299, 1299, 1299, 506: 1299, 1299, 510: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 518: 1299, 1299, 1299, 522: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 544: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 578: 1299, 1299, 607: 1299}, + {782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 522: 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 544: 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 782, 578: 782, 782, 581: 782, 594: 782, 604: 782, 782, 607: 782, 655: 782, 782, 782, 782, 782, 782, 782}, + {781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 522: 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 544: 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 781, 578: 781, 781, 581: 781, 594: 781, 604: 781, 781, 607: 781, 655: 781, 781, 781, 781, 781, 781, 781}, + {277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 522: 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 578: 277, 277, 581: 277, 277, 594: 277, 604: 277, 277, 607: 277, 655: 277, 277, 277, 277, 277, 277, 277, 663: 277, 666: 277, 671: 277, 673: 277, 675: 277, 680: 277, 277}, // 975 - {9: 3534, 50: 957, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365, 1102: 3533}, - {50: 3541}, - {511: 3449, 576: 3451, 3450, 580: 3536, 824: 3535}, - {9: 3538, 50: 954, 1103: 3540}, - {9: 3538, 50: 954, 1103: 3537}, + {276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 522: 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 578: 276, 276, 581: 276, 276, 594: 276, 604: 276, 276, 607: 276, 655: 276, 276, 276, 276, 276, 276, 276, 663: 276, 666: 276, 671: 276, 673: 276, 675: 276, 680: 276, 276}, + {1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 487: 1981, 1981, 492: 1981, 494: 1981, 1981, 1981, 1981, 502: 1981, 1981, 1981, 506: 1981, 1981, 510: 1981, 1981, 513: 1981, 1981, 1981, 1981, 518: 1981, 1981, 1981, 522: 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 532: 1981, 534: 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 544: 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 1981, 558: 1981, 1981, 748: 3416, 3414}, + {1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 487: 1982, 1982, 492: 1982, 494: 1982, 1982, 1982, 1982, 502: 1982, 1982, 1982, 506: 1982, 1982, 510: 1982, 1982, 513: 1982, 1982, 1982, 1982, 518: 1982, 1982, 3420, 522: 1982, 3419, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 532: 1982, 534: 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 544: 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 1982, 558: 1982, 1982, 748: 3416, 3414}, + {1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 487: 1983, 1983, 492: 1983, 494: 1983, 1983, 1983, 1983, 502: 1983, 1983, 1983, 506: 1983, 1983, 510: 1983, 1983, 513: 1983, 1983, 1983, 1983, 518: 1983, 1983, 3420, 522: 1983, 3419, 1983, 3415, 1983, 1983, 1983, 1983, 1983, 532: 1983, 534: 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 544: 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 1983, 558: 1983, 1983, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3571}, // 980 - {50: 955}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3539}, - {50: 953, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {50: 956}, - {149: 3384, 492: 3385, 746: 952, 889: 3542}, + {73: 3572, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {156: 3433, 502: 3434, 756: 965, 901: 3573}, + {756: 3437, 761: 3574}, + {972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 487: 972, 972, 972, 491: 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 502: 972, 972, 972, 506: 972, 972, 510: 972, 972, 972, 972, 972, 972, 972, 518: 972, 972, 972, 522: 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 544: 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 578: 972, 972, 607: 972}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3576}, // 985 - {746: 3388, 751: 3543}, - {961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 477: 961, 961, 961, 961, 961, 483: 961, 961, 961, 961, 961, 961, 961, 961, 492: 961, 961, 961, 496: 961, 961, 499: 961, 961, 961, 961, 961, 961, 961, 961, 509: 961, 961, 512: 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 534: 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 961, 568: 961, 961, 597: 961}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3545}, - {9: 3534, 50: 957, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365, 1102: 3546}, - {50: 3547}, + {73: 3577, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {156: 3433, 502: 3434, 756: 965, 901: 3578}, + {756: 3437, 761: 3579}, + {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 487: 973, 973, 973, 491: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 502: 973, 973, 973, 506: 973, 973, 510: 973, 973, 973, 973, 973, 973, 973, 518: 973, 973, 973, 522: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 544: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 578: 973, 973, 607: 973}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3581}, // 990 - {149: 3384, 492: 3385, 746: 952, 889: 3548}, - {746: 3388, 751: 3549}, - {962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 477: 962, 962, 962, 962, 962, 483: 962, 962, 962, 962, 962, 962, 962, 962, 492: 962, 962, 962, 496: 962, 962, 499: 962, 962, 962, 962, 962, 962, 962, 962, 509: 962, 962, 512: 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 534: 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 962, 568: 962, 962, 597: 962}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3551, 3279, 3360, 3278, 3275}, - {50: 3552, 487: 3376, 597: 3377}, + {9: 3583, 73: 970, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414, 1114: 3582}, + {73: 3590}, + {521: 3498, 586: 3500, 3499, 590: 3585, 834: 3584}, + {9: 3587, 73: 967, 1115: 3589}, + {9: 3587, 73: 967, 1115: 3586}, // 995 - {746: 3388, 751: 3553}, - {963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 477: 963, 963, 963, 963, 963, 483: 963, 963, 963, 963, 963, 963, 963, 963, 492: 963, 963, 963, 496: 963, 963, 499: 963, 963, 963, 963, 963, 963, 963, 963, 509: 963, 963, 512: 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 534: 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 963, 568: 963, 963, 597: 963}, - {50: 3555}, - {746: 3388, 751: 3556}, - {964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 477: 964, 964, 964, 964, 964, 483: 964, 964, 964, 964, 964, 964, 964, 964, 492: 964, 964, 964, 496: 964, 964, 499: 964, 964, 964, 964, 964, 964, 964, 964, 509: 964, 964, 512: 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 534: 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, 568: 964, 964, 597: 964}, + {73: 968}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3588}, + {73: 966, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {73: 969}, + {156: 3433, 502: 3434, 756: 965, 901: 3591}, // 1000 - {50: 3558}, - {746: 3388, 751: 3559}, - {965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 477: 965, 965, 965, 965, 965, 483: 965, 965, 965, 965, 965, 965, 965, 965, 492: 965, 965, 965, 496: 965, 965, 499: 965, 965, 965, 965, 965, 965, 965, 965, 509: 965, 965, 512: 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 534: 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, 568: 965, 965, 597: 965}, - {50: 3561}, - {746: 3388, 751: 3562}, + {756: 3437, 761: 3592}, + {974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 487: 974, 974, 974, 491: 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 502: 974, 974, 974, 506: 974, 974, 510: 974, 974, 974, 974, 974, 974, 974, 518: 974, 974, 974, 522: 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 544: 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 974, 578: 974, 974, 607: 974}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3594}, + {9: 3583, 73: 970, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414, 1114: 3595}, + {73: 3596}, // 1005 - {966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 477: 966, 966, 966, 966, 966, 483: 966, 966, 966, 966, 966, 966, 966, 966, 492: 966, 966, 966, 496: 966, 966, 499: 966, 966, 966, 966, 966, 966, 966, 966, 509: 966, 966, 512: 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 534: 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 966, 568: 966, 966, 597: 966}, - {50: 3564}, - {746: 3388, 751: 3565}, - {967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 477: 967, 967, 967, 967, 967, 483: 967, 967, 967, 967, 967, 967, 967, 967, 492: 967, 967, 967, 496: 967, 967, 499: 967, 967, 967, 967, 967, 967, 967, 967, 509: 967, 967, 512: 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 534: 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 967, 568: 967, 967, 597: 967}, - {50: 3567}, + {156: 3433, 502: 3434, 756: 965, 901: 3597}, + {756: 3437, 761: 3598}, + {975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 487: 975, 975, 975, 491: 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 502: 975, 975, 975, 506: 975, 975, 510: 975, 975, 975, 975, 975, 975, 975, 518: 975, 975, 975, 522: 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 544: 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 975, 578: 975, 975, 607: 975}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3600, 3328, 3409, 3327, 3324}, + {73: 3601, 493: 3425, 607: 3426}, // 1010 - {746: 3388, 751: 3568}, - {968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 477: 968, 968, 968, 968, 968, 483: 968, 968, 968, 968, 968, 968, 968, 968, 492: 968, 968, 968, 496: 968, 968, 499: 968, 968, 968, 968, 968, 968, 968, 968, 509: 968, 968, 512: 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 534: 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 968, 568: 968, 968, 597: 968}, - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3576, 3575}, - {2: 1259, 1259, 1259, 1259, 1259, 1259, 1259, 10: 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 51: 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 476: 1259, 478: 1259, 1259, 1259, 482: 1259, 485: 1259, 1259, 488: 1259, 1259, 1259, 495: 1259, 498: 1259, 507: 1259, 1259, 511: 1259, 518: 1259, 523: 1259, 533: 1259, 567: 1259, 570: 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 585: 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 595: 1259, 1259, 598: 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 649: 1259, 651: 1259, 654: 1259, 749: 1259, 1259, 757: 1259, 1259, 1259, 766: 1259, 774: 1259, 1259, 1259}, - {2: 1258, 1258, 1258, 1258, 1258, 1258, 1258, 10: 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 51: 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 476: 1258, 478: 1258, 1258, 1258, 482: 1258, 485: 1258, 1258, 488: 1258, 1258, 1258, 495: 1258, 498: 1258, 507: 1258, 1258, 511: 1258, 518: 1258, 523: 1258, 533: 1258, 567: 1258, 570: 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 585: 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 595: 1258, 1258, 598: 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 649: 1258, 651: 1258, 654: 1258, 749: 1258, 1258, 757: 1258, 1258, 1258, 766: 1258, 774: 1258, 1258, 1258}, + {756: 3437, 761: 3602}, + {976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 487: 976, 976, 976, 491: 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 502: 976, 976, 976, 506: 976, 976, 510: 976, 976, 976, 976, 976, 976, 976, 518: 976, 976, 976, 522: 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 544: 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 578: 976, 976, 607: 976}, + {73: 3604}, + {756: 3437, 761: 3605}, + {977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 487: 977, 977, 977, 491: 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 502: 977, 977, 977, 506: 977, 977, 510: 977, 977, 977, 977, 977, 977, 977, 518: 977, 977, 977, 522: 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 544: 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 977, 578: 977, 977, 607: 977}, // 1015 - {2: 1257, 1257, 1257, 1257, 1257, 1257, 1257, 10: 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 51: 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 476: 1257, 478: 1257, 1257, 1257, 482: 1257, 485: 1257, 1257, 488: 1257, 1257, 1257, 495: 1257, 498: 1257, 507: 1257, 1257, 511: 1257, 518: 1257, 523: 1257, 533: 1257, 567: 1257, 570: 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 585: 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 595: 1257, 1257, 598: 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 649: 1257, 651: 1257, 654: 1257, 749: 1257, 1257, 757: 1257, 1257, 1257, 766: 1257, 774: 1257, 1257, 1257}, - {2: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 10: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 51: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 476: 1256, 478: 1256, 1256, 1256, 482: 1256, 485: 1256, 1256, 488: 1256, 1256, 1256, 495: 1256, 498: 1256, 507: 1256, 1256, 511: 1256, 533: 1256, 567: 1256, 570: 1256, 1256, 573: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 585: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 595: 1256, 1256, 598: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 651: 1256, 654: 3581}, - {2: 1254, 1254, 1254, 1254, 1254, 1254, 1254, 10: 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 51: 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 476: 1254, 478: 1254, 1254, 1254, 482: 1254, 485: 1254, 1254, 488: 1254, 1254, 1254, 495: 1254, 498: 1254, 507: 1254, 1254, 511: 1254, 533: 1254, 567: 1254, 570: 1254, 1254, 573: 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 585: 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 595: 1254, 1254, 598: 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 651: 1254}, - {2: 1251, 1251, 1251, 1251, 1251, 1251, 1251, 10: 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 51: 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 476: 1251, 478: 1251, 1251, 1251, 482: 1251, 485: 1251, 1251, 488: 1251, 1251, 1251, 495: 1251, 498: 1251, 507: 1251, 1251, 511: 1251, 533: 1251, 567: 1251, 570: 1251, 1251, 573: 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 585: 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 595: 1251, 1251, 598: 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 651: 1251}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3577}, + {73: 3607}, + {756: 3437, 761: 3608}, + {978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 487: 978, 978, 978, 491: 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 502: 978, 978, 978, 506: 978, 978, 510: 978, 978, 978, 978, 978, 978, 978, 518: 978, 978, 978, 522: 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 544: 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 978, 578: 978, 978, 607: 978}, + {73: 3610}, + {756: 3437, 761: 3611}, // 1020 - {50: 3578, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3579}, - {1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 477: 1137, 1137, 1137, 1137, 1137, 483: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 492: 1137, 1137, 1137, 496: 1137, 1137, 499: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 509: 1137, 1137, 512: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 534: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 568: 1137, 1137, 597: 1137}, - {972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 477: 972, 972, 972, 972, 972, 483: 972, 972, 972, 972, 972, 972, 972, 972, 492: 972, 972, 972, 496: 972, 972, 499: 972, 972, 972, 972, 972, 972, 972, 972, 509: 972, 972, 512: 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 534: 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 972, 568: 972, 972, 597: 972}, - {2: 1250, 1250, 1250, 1250, 1250, 1250, 1250, 10: 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 51: 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 476: 1250, 478: 1250, 1250, 1250, 482: 1250, 485: 1250, 1250, 488: 1250, 1250, 1250, 495: 1250, 498: 1250, 507: 1250, 1250, 511: 1250, 533: 1250, 567: 1250, 570: 1250, 1250, 573: 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 585: 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 595: 1250, 1250, 598: 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 651: 1250}, + {979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 487: 979, 979, 979, 491: 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 502: 979, 979, 979, 506: 979, 979, 510: 979, 979, 979, 979, 979, 979, 979, 518: 979, 979, 979, 522: 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 544: 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, 578: 979, 979, 607: 979}, + {73: 3613}, + {756: 3437, 761: 3614}, + {980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 487: 980, 980, 980, 491: 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 502: 980, 980, 980, 506: 980, 980, 510: 980, 980, 980, 980, 980, 980, 980, 518: 980, 980, 980, 522: 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 544: 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, 578: 980, 980, 607: 980}, + {73: 3616}, // 1025 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3583, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3584}, - {50: 3585, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3586}, - {1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 477: 1138, 1138, 1138, 1138, 1138, 483: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 492: 1138, 1138, 1138, 496: 1138, 1138, 499: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 509: 1138, 1138, 512: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 534: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 568: 1138, 1138, 597: 1138}, + {756: 3437, 761: 3617}, + {981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 487: 981, 981, 981, 491: 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 502: 981, 981, 981, 506: 981, 981, 510: 981, 981, 981, 981, 981, 981, 981, 518: 981, 981, 981, 522: 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 544: 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 981, 578: 981, 981, 607: 981}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3625, 3624}, + {2: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 10: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 74: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 486: 1272, 1272, 489: 1272, 1272, 1272, 496: 1272, 1272, 1272, 1272, 1272, 505: 1272, 508: 1272, 1272, 517: 1272, 521: 1272, 528: 1272, 533: 1272, 543: 1272, 577: 1272, 580: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 595: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 606: 1272, 608: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 658: 1272, 662: 1272, 664: 1272, 759: 1272, 1272, 767: 1272, 1272, 1272, 776: 1272, 784: 1272, 1272, 1272}, + {2: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 10: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 74: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 486: 1271, 1271, 489: 1271, 1271, 1271, 496: 1271, 1271, 1271, 1271, 1271, 505: 1271, 508: 1271, 1271, 517: 1271, 521: 1271, 528: 1271, 533: 1271, 543: 1271, 577: 1271, 580: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 595: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 606: 1271, 608: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 658: 1271, 662: 1271, 664: 1271, 759: 1271, 1271, 767: 1271, 1271, 1271, 776: 1271, 784: 1271, 1271, 1271}, // 1030 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3588, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3589}, - {50: 3590, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3591}, - {1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 477: 1139, 1139, 1139, 1139, 1139, 483: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 492: 1139, 1139, 1139, 496: 1139, 1139, 499: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 509: 1139, 1139, 512: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 534: 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 568: 1139, 1139, 597: 1139}, + {2: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 10: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 74: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 486: 1270, 1270, 489: 1270, 1270, 1270, 496: 1270, 1270, 1270, 1270, 1270, 505: 1270, 508: 1270, 1270, 517: 1270, 521: 1270, 528: 1270, 533: 1270, 543: 1270, 577: 1270, 580: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 595: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 606: 1270, 608: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 658: 1270, 662: 1270, 664: 1270, 759: 1270, 1270, 767: 1270, 1270, 1270, 776: 1270, 784: 1270, 1270, 1270}, + {2: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 10: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 74: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 486: 1269, 1269, 489: 1269, 1269, 1269, 496: 1269, 1269, 1269, 1269, 1269, 505: 1269, 508: 1269, 1269, 517: 1269, 521: 1269, 543: 1269, 577: 1269, 580: 1269, 582: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 595: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 606: 1269, 608: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 662: 1269, 664: 3630}, + {2: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 10: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 74: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 486: 1267, 1267, 489: 1267, 1267, 1267, 496: 1267, 1267, 1267, 1267, 1267, 505: 1267, 508: 1267, 1267, 517: 1267, 521: 1267, 543: 1267, 577: 1267, 580: 1267, 582: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 595: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 606: 1267, 608: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 662: 1267}, + {2: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 10: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 74: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 486: 1264, 1264, 489: 1264, 1264, 1264, 496: 1264, 1264, 1264, 1264, 1264, 505: 1264, 508: 1264, 1264, 517: 1264, 521: 1264, 543: 1264, 577: 1264, 580: 1264, 582: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 595: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 606: 1264, 608: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 662: 1264}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3626}, // 1035 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3593, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3594}, - {50: 3595, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3596}, - {1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 477: 1140, 1140, 1140, 1140, 1140, 483: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 492: 1140, 1140, 1140, 496: 1140, 1140, 499: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 509: 1140, 1140, 512: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 534: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 568: 1140, 1140, 597: 1140}, + {73: 3627, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3628}, + {1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 487: 1150, 1150, 1150, 491: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 502: 1150, 1150, 1150, 506: 1150, 1150, 510: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 518: 1150, 1150, 1150, 522: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 544: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 578: 1150, 1150, 607: 1150}, + {985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 487: 985, 985, 985, 491: 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 502: 985, 985, 985, 506: 985, 985, 510: 985, 985, 985, 985, 985, 985, 985, 518: 985, 985, 985, 522: 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 544: 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 578: 985, 985, 607: 985}, + {2: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 10: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 74: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 486: 1263, 1263, 489: 1263, 1263, 1263, 496: 1263, 1263, 1263, 1263, 1263, 505: 1263, 508: 1263, 1263, 517: 1263, 521: 1263, 543: 1263, 577: 1263, 580: 1263, 582: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 595: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 606: 1263, 608: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 662: 1263}, // 1040 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3598, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3599}, - {50: 3600, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3601}, - {1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 477: 1141, 1141, 1141, 1141, 1141, 483: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 492: 1141, 1141, 1141, 496: 1141, 1141, 499: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 509: 1141, 1141, 512: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 534: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 568: 1141, 1141, 597: 1141}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3632, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3633}, + {73: 3634, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3635}, + {1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 487: 1151, 1151, 1151, 491: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 502: 1151, 1151, 1151, 506: 1151, 1151, 510: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 518: 1151, 1151, 1151, 522: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 544: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 578: 1151, 1151, 607: 1151}, // 1045 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3603, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3604}, - {50: 3605, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3606}, - {1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 477: 1142, 1142, 1142, 1142, 1142, 483: 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 492: 1142, 1142, 1142, 496: 1142, 1142, 499: 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 509: 1142, 1142, 512: 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 534: 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 568: 1142, 1142, 597: 1142}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3637, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3638}, + {73: 3639, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3640}, + {1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 487: 1152, 1152, 1152, 491: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 502: 1152, 1152, 1152, 506: 1152, 1152, 510: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 518: 1152, 1152, 1152, 522: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 544: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 578: 1152, 1152, 607: 1152}, // 1050 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3608, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3609}, - {50: 3610, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3611}, - {1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 477: 1143, 1143, 1143, 1143, 1143, 483: 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 492: 1143, 1143, 1143, 496: 1143, 1143, 499: 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 509: 1143, 1143, 512: 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 534: 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 568: 1143, 1143, 597: 1143}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3642, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3643}, + {73: 3644, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3645}, + {1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 487: 1153, 1153, 1153, 491: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 502: 1153, 1153, 1153, 506: 1153, 1153, 510: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 518: 1153, 1153, 1153, 522: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 544: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 578: 1153, 1153, 607: 1153}, // 1055 - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 3613, 3575}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3615}, - {1940, 1940, 9: 1940, 50: 1940, 128: 1940, 484: 1940, 505: 1940, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {9: 3616, 50: 1311, 128: 1311, 505: 2748, 772: 2749, 817: 3617}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3623}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3647, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3648}, + {73: 3649, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3650}, + {1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 487: 1154, 1154, 1154, 491: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 502: 1154, 1154, 1154, 506: 1154, 1154, 510: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 518: 1154, 1154, 1154, 522: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 544: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 578: 1154, 1154, 607: 1154}, // 1060 - {50: 1130, 128: 3619, 1274: 3618}, - {50: 3621}, - {478: 3620}, - {50: 1129}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3622}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3652, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3653}, + {73: 3654, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3655}, + {1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 487: 1155, 1155, 1155, 491: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 502: 1155, 1155, 1155, 506: 1155, 1155, 510: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 518: 1155, 1155, 1155, 522: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 544: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 578: 1155, 1155, 607: 1155}, // 1065 - {1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 477: 1144, 1144, 1144, 1144, 1144, 483: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 492: 1144, 1144, 1144, 496: 1144, 1144, 499: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 509: 1144, 1144, 512: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 534: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 568: 1144, 1144, 597: 1144}, - {1939, 1939, 9: 1939, 50: 1939, 128: 1939, 484: 1939, 505: 1939, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 523: 3628, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 3627, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3625, 749: 3570, 3571, 789: 3626}, - {50: 3636, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3634}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3657, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3658}, + {73: 3659, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3660}, + {1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 487: 1156, 1156, 1156, 491: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 502: 1156, 1156, 1156, 506: 1156, 1156, 510: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 518: 1156, 1156, 1156, 522: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 544: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 578: 1156, 1156, 607: 1156}, // 1070 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3631}, - {50: 3629}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3630}, - {1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 477: 1145, 1145, 1145, 1145, 1145, 483: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 492: 1145, 1145, 1145, 496: 1145, 1145, 499: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 509: 1145, 1145, 512: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 534: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 568: 1145, 1145, 597: 1145}, - {50: 3632, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 3662, 3624}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3664}, + {1963, 1963, 9: 1963, 73: 1963, 135: 1963, 495: 1963, 516: 1963, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {9: 3665, 73: 1324, 135: 1324, 516: 2787, 782: 2788, 828: 3666}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3672}, // 1075 - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3633}, - {1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 477: 1147, 1147, 1147, 1147, 1147, 483: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 492: 1147, 1147, 1147, 496: 1147, 1147, 499: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 509: 1147, 1147, 512: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 534: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 568: 1147, 1147, 597: 1147}, - {9: 3616, 50: 3635}, - {1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 477: 1148, 1148, 1148, 1148, 1148, 483: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 492: 1148, 1148, 1148, 496: 1148, 1148, 499: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 509: 1148, 1148, 512: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 534: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 568: 1148, 1148, 597: 1148}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3637}, + {73: 1143, 135: 3668, 1287: 3667}, + {73: 3670}, + {487: 3669}, + {73: 1142}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3671}, // 1080 - {1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 477: 1146, 1146, 1146, 1146, 1146, 483: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 492: 1146, 1146, 1146, 496: 1146, 1146, 499: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 509: 1146, 1146, 512: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 534: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 568: 1146, 1146, 597: 1146}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 3640, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3639}, - {50: 3644, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3641}, - {50: 3642, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 487: 1157, 1157, 1157, 491: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 502: 1157, 1157, 1157, 506: 1157, 1157, 510: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 518: 1157, 1157, 1157, 522: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 544: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 578: 1157, 1157, 607: 1157}, + {1962, 1962, 9: 1962, 73: 1962, 135: 1962, 495: 1962, 516: 1962, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 533: 3677, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 3676, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3674, 759: 3619, 3620, 800: 3675}, + {73: 3685, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3683}, // 1085 - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3643}, - {1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 477: 1149, 1149, 1149, 1149, 1149, 483: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 492: 1149, 1149, 1149, 496: 1149, 1149, 499: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 509: 1149, 1149, 512: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 534: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 568: 1149, 1149, 597: 1149}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3645}, - {1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 477: 1150, 1150, 1150, 1150, 1150, 483: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 492: 1150, 1150, 1150, 496: 1150, 1150, 499: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 509: 1150, 1150, 512: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 534: 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 1150, 568: 1150, 1150, 597: 1150}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 3648, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3647}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3680}, + {73: 3678}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3679}, + {1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 487: 1158, 1158, 1158, 491: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 502: 1158, 1158, 1158, 506: 1158, 1158, 510: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 518: 1158, 1158, 1158, 522: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 544: 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 578: 1158, 1158, 607: 1158}, + {73: 3681, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1090 - {50: 3652, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3649}, - {50: 3650, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3651}, - {1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 477: 1151, 1151, 1151, 1151, 1151, 483: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 492: 1151, 1151, 1151, 496: 1151, 1151, 499: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 509: 1151, 1151, 512: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 534: 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 568: 1151, 1151, 597: 1151}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3682}, + {1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 487: 1160, 1160, 1160, 491: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 502: 1160, 1160, 1160, 506: 1160, 1160, 510: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 518: 1160, 1160, 1160, 522: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 544: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 578: 1160, 1160, 607: 1160}, + {9: 3665, 73: 3684}, + {1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 487: 1161, 1161, 1161, 491: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 502: 1161, 1161, 1161, 506: 1161, 1161, 510: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 518: 1161, 1161, 1161, 522: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 544: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 578: 1161, 1161, 607: 1161}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3686}, // 1095 - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3653}, - {1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 477: 1152, 1152, 1152, 1152, 1152, 483: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 492: 1152, 1152, 1152, 496: 1152, 1152, 499: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 509: 1152, 1152, 512: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 534: 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 568: 1152, 1152, 597: 1152}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 3656, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3655}, - {50: 3660, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3657}, + {1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 487: 1159, 1159, 1159, 491: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 502: 1159, 1159, 1159, 506: 1159, 1159, 510: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 518: 1159, 1159, 1159, 522: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 544: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 578: 1159, 1159, 607: 1159}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 3689, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3688}, + {73: 3693, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3690}, + {73: 3691, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1100 - {50: 3658, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3659}, - {1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 477: 1153, 1153, 1153, 1153, 1153, 483: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 492: 1153, 1153, 1153, 496: 1153, 1153, 499: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 509: 1153, 1153, 512: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 534: 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 568: 1153, 1153, 597: 1153}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 3661}, - {1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 477: 1154, 1154, 1154, 1154, 1154, 483: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 492: 1154, 1154, 1154, 496: 1154, 1154, 499: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 509: 1154, 1154, 512: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 534: 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 568: 1154, 1154, 597: 1154}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3692}, + {1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 487: 1162, 1162, 1162, 491: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 502: 1162, 1162, 1162, 506: 1162, 1162, 510: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 518: 1162, 1162, 1162, 522: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 544: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 578: 1162, 1162, 607: 1162}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3694}, + {1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 487: 1163, 1163, 1163, 491: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 502: 1163, 1163, 1163, 506: 1163, 1163, 510: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 518: 1163, 1163, 1163, 522: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 544: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 578: 1163, 1163, 607: 1163}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 3697, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3696}, // 1105 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3663}, - {9: 3616, 50: 3664}, - {1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 477: 1155, 1155, 1155, 1155, 1155, 483: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 492: 1155, 1155, 1155, 496: 1155, 1155, 499: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 509: 1155, 1155, 512: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 534: 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 568: 1155, 1155, 597: 1155}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3666}, - {9: 3616, 50: 3667}, + {73: 3701, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3698}, + {73: 3699, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3700}, + {1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 487: 1164, 1164, 1164, 491: 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 502: 1164, 1164, 1164, 506: 1164, 1164, 510: 1164, 1164, 1164, 1164, 1164, 1164, 1164, 518: 1164, 1164, 1164, 522: 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 544: 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 578: 1164, 1164, 607: 1164}, // 1110 - {1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 477: 1156, 1156, 1156, 1156, 1156, 483: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 492: 1156, 1156, 1156, 496: 1156, 1156, 499: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 509: 1156, 1156, 512: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 534: 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1156, 568: 1156, 1156, 597: 1156}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3669}, - {9: 3670, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3671}, - {9: 3672, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3702}, + {1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 487: 1165, 1165, 1165, 491: 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 502: 1165, 1165, 1165, 506: 1165, 1165, 510: 1165, 1165, 1165, 1165, 1165, 1165, 1165, 518: 1165, 1165, 1165, 522: 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 544: 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 578: 1165, 1165, 607: 1165}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 3705, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3704}, + {73: 3709, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3706}, // 1115 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3673}, - {50: 3674, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 477: 1172, 1172, 1172, 1172, 1172, 483: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 492: 1172, 1172, 1172, 496: 1172, 1172, 499: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 509: 1172, 1172, 512: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 534: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 568: 1172, 1172, 597: 1172}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3676, 1194: 3678, 1249: 3679, 1337: 3680, 3677}, - {50: 3688, 503: 3689, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {73: 3707, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3708}, + {1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 487: 1166, 1166, 1166, 491: 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 502: 1166, 1166, 1166, 506: 1166, 1166, 510: 1166, 1166, 1166, 1166, 1166, 1166, 1166, 518: 1166, 1166, 1166, 522: 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 544: 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 578: 1166, 1166, 607: 1166}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 3710}, + {1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 487: 1167, 1167, 1167, 491: 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 502: 1167, 1167, 1167, 506: 1167, 1167, 510: 1167, 1167, 1167, 1167, 1167, 1167, 1167, 518: 1167, 1167, 1167, 522: 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 544: 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 578: 1167, 1167, 607: 1167}, // 1120 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 503: 3682, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3681}, - {2: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 10: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 51: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 476: 1163, 478: 1163, 1163, 1163, 482: 1163, 485: 1163, 1163, 488: 1163, 1163, 1163, 495: 1163, 498: 1163, 503: 1163, 507: 1163, 1163, 511: 1163, 533: 1163, 567: 1163, 570: 1163, 1163, 573: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 585: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 595: 1163, 1163, 598: 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 651: 1163}, - {2: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 10: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 51: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 476: 1162, 478: 1162, 1162, 1162, 482: 1162, 485: 1162, 1162, 488: 1162, 1162, 1162, 495: 1162, 498: 1162, 503: 1162, 507: 1162, 1162, 511: 1162, 533: 1162, 567: 1162, 570: 1162, 1162, 573: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 585: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 595: 1162, 1162, 598: 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 651: 1162}, - {2: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 10: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 51: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 476: 1161, 478: 1161, 1161, 1161, 482: 1161, 485: 1161, 1161, 488: 1161, 1161, 1161, 495: 1161, 498: 1161, 503: 1161, 507: 1161, 1161, 511: 1161, 533: 1161, 567: 1161, 570: 1161, 1161, 573: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 585: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 595: 1161, 1161, 598: 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 651: 1161}, - {503: 3685, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3712}, + {9: 3665, 73: 3713}, + {1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 487: 1168, 1168, 1168, 491: 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 502: 1168, 1168, 1168, 506: 1168, 1168, 510: 1168, 1168, 1168, 1168, 1168, 1168, 1168, 518: 1168, 1168, 1168, 522: 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 544: 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 578: 1168, 1168, 607: 1168}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3715}, + {9: 3665, 73: 3716}, // 1125 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3683}, - {50: 3684, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 477: 1178, 1178, 1178, 1178, 1178, 483: 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 492: 1178, 1178, 1178, 496: 1178, 1178, 499: 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 509: 1178, 1178, 512: 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 534: 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 568: 1178, 1178, 597: 1178}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3686}, - {50: 3687, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 487: 1169, 1169, 1169, 491: 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 502: 1169, 1169, 1169, 506: 1169, 1169, 510: 1169, 1169, 1169, 1169, 1169, 1169, 1169, 518: 1169, 1169, 1169, 522: 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 544: 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 578: 1169, 1169, 607: 1169}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3718}, + {9: 3719, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3720}, + {9: 3721, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1130 - {1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 477: 1177, 1177, 1177, 1177, 1177, 483: 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 492: 1177, 1177, 1177, 496: 1177, 1177, 499: 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 509: 1177, 1177, 512: 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 534: 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 568: 1177, 1177, 597: 1177}, - {1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 477: 1180, 1180, 1180, 1180, 1180, 483: 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 492: 1180, 1180, 1180, 496: 1180, 1180, 499: 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 509: 1180, 1180, 512: 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 534: 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 568: 1180, 1180, 597: 1180}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3690}, - {50: 3691, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 477: 1179, 1179, 1179, 1179, 1179, 483: 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 492: 1179, 1179, 1179, 496: 1179, 1179, 499: 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 509: 1179, 1179, 512: 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 534: 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 568: 1179, 1179, 597: 1179}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3722}, + {73: 3723, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 487: 1185, 1185, 1185, 491: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 502: 1185, 1185, 1185, 506: 1185, 1185, 510: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 518: 1185, 1185, 1185, 522: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 544: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 578: 1185, 1185, 607: 1185}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3725, 1208: 3727, 1262: 3728, 1350: 3729, 3726}, + {73: 3737, 514: 3738, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1135 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3693}, - {9: 3694, 503: 3695, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3701}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3696}, - {50: 3697, 497: 3698, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 514: 3731, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3730}, + {2: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 10: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 74: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 486: 1176, 1176, 489: 1176, 1176, 1176, 496: 1176, 1176, 1176, 1176, 1176, 505: 1176, 508: 1176, 1176, 514: 1176, 517: 1176, 521: 1176, 543: 1176, 577: 1176, 580: 1176, 582: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 595: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 606: 1176, 608: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 662: 1176}, + {2: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 10: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 74: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 486: 1175, 1175, 489: 1175, 1175, 1175, 496: 1175, 1175, 1175, 1175, 1175, 505: 1175, 508: 1175, 1175, 514: 1175, 517: 1175, 521: 1175, 543: 1175, 577: 1175, 580: 1175, 582: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 595: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 606: 1175, 608: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 662: 1175}, + {2: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 10: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 74: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 486: 1174, 1174, 489: 1174, 1174, 1174, 496: 1174, 1174, 1174, 1174, 1174, 505: 1174, 508: 1174, 1174, 514: 1174, 517: 1174, 521: 1174, 543: 1174, 577: 1174, 580: 1174, 582: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 595: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 606: 1174, 608: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 662: 1174}, + {514: 3734, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1140 - {1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 477: 1185, 1185, 1185, 1185, 1185, 483: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 492: 1185, 1185, 1185, 496: 1185, 1185, 499: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 509: 1185, 1185, 512: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 534: 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 568: 1185, 1185, 597: 1185}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3699}, - {50: 3700, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 477: 1183, 1183, 1183, 1183, 1183, 483: 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 492: 1183, 1183, 1183, 496: 1183, 1183, 499: 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 509: 1183, 1183, 512: 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 534: 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 568: 1183, 1183, 597: 1183}, - {9: 3703, 50: 3702, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3732}, + {73: 3733, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 487: 1191, 1191, 1191, 491: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 502: 1191, 1191, 1191, 506: 1191, 1191, 510: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 518: 1191, 1191, 1191, 522: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 544: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 578: 1191, 1191, 607: 1191}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3735}, + {73: 3736, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1145 - {1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 477: 1186, 1186, 1186, 1186, 1186, 483: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 492: 1186, 1186, 1186, 496: 1186, 1186, 499: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 509: 1186, 1186, 512: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 534: 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 568: 1186, 1186, 597: 1186}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3704}, - {50: 3705, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 477: 1184, 1184, 1184, 1184, 1184, 483: 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 492: 1184, 1184, 1184, 496: 1184, 1184, 499: 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 509: 1184, 1184, 512: 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 534: 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 568: 1184, 1184, 597: 1184}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3707}, + {1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 487: 1190, 1190, 1190, 491: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 502: 1190, 1190, 1190, 506: 1190, 1190, 510: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 518: 1190, 1190, 1190, 522: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 544: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 578: 1190, 1190, 607: 1190}, + {1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 487: 1193, 1193, 1193, 491: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 502: 1193, 1193, 1193, 506: 1193, 1193, 510: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 518: 1193, 1193, 1193, 522: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 544: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 578: 1193, 1193, 607: 1193}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3739}, + {73: 3740, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 487: 1192, 1192, 1192, 491: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 502: 1192, 1192, 1192, 506: 1192, 1192, 510: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 518: 1192, 1192, 1192, 522: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 544: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 578: 1192, 1192, 607: 1192}, // 1150 - {488: 3712, 3713, 3718, 523: 3714, 547: 3720, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3742}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3741}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3740}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3739}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3742}, + {9: 3743, 514: 3744, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3750}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3745}, + {73: 3746, 507: 3747, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1155 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3736, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3735}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3730, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3729}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3728}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3727}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3726}, + {1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 487: 1198, 1198, 1198, 491: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 502: 1198, 1198, 1198, 506: 1198, 1198, 510: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 518: 1198, 1198, 1198, 522: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 544: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 578: 1198, 1198, 607: 1198}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3748}, + {73: 3749, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 487: 1196, 1196, 1196, 491: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 502: 1196, 1196, 1196, 506: 1196, 1196, 510: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 518: 1196, 1196, 1196, 522: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 544: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 578: 1196, 1196, 607: 1196}, + {9: 3752, 73: 3751, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1160 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3725}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3724}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3723}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3721}, - {50: 3722, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 487: 1199, 1199, 1199, 491: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 502: 1199, 1199, 1199, 506: 1199, 1199, 510: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 518: 1199, 1199, 1199, 522: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 544: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 578: 1199, 1199, 607: 1199}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3753}, + {73: 3754, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 487: 1197, 1197, 1197, 491: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 502: 1197, 1197, 1197, 506: 1197, 1197, 510: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 518: 1197, 1197, 1197, 522: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 544: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 578: 1197, 1197, 607: 1197}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3756}, // 1165 - {1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 477: 1187, 1187, 1187, 1187, 1187, 483: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 492: 1187, 1187, 1187, 496: 1187, 1187, 499: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 509: 1187, 1187, 512: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 534: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 568: 1187, 1187, 597: 1187}, - {1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 477: 1295, 1295, 1295, 1295, 1295, 483: 1295, 1295, 1295, 1295, 488: 1295, 1295, 1295, 492: 1295, 1295, 1295, 496: 1295, 1295, 499: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 509: 1295, 1295, 512: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 534: 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 1295, 568: 1295, 1295}, - {1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 477: 1296, 1296, 1296, 1296, 1296, 483: 1296, 1296, 1296, 1296, 488: 1296, 1296, 1296, 492: 1296, 1296, 1296, 496: 1296, 1296, 499: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 509: 1296, 1296, 512: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 534: 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 3719, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 1296, 568: 1296, 1296}, - {1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 477: 1297, 1297, 1297, 1297, 1297, 483: 1297, 1297, 1297, 1297, 488: 1297, 1297, 1297, 492: 1297, 1297, 1297, 496: 1297, 1297, 499: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 509: 1297, 1297, 512: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 534: 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 3719, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1297, 568: 1297, 1297}, - {1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 477: 1298, 1298, 1298, 1298, 1298, 483: 1298, 1298, 1298, 1298, 488: 1298, 1298, 1298, 492: 1298, 1298, 1298, 496: 1298, 1298, 499: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 509: 1298, 1298, 512: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 534: 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 3719, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 568: 1298, 1298}, + {498: 3761, 3762, 3767, 533: 3763, 557: 3769, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3791}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3790}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3789}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3788}, // 1170 - {1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 477: 1299, 1299, 1299, 1299, 1299, 483: 1299, 1299, 1299, 1299, 488: 1299, 1299, 1299, 492: 1299, 1299, 1299, 496: 1299, 1299, 499: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 509: 1299, 1299, 512: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 534: 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 3719, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 568: 1299, 1299}, - {1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 477: 1300, 1300, 1300, 1300, 1300, 483: 1300, 1300, 1300, 1300, 488: 1300, 1300, 1300, 492: 1300, 1300, 1300, 496: 1300, 1300, 499: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 509: 1300, 1300, 512: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 534: 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 3719, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 568: 1300, 1300}, - {1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 477: 1304, 1304, 1304, 1304, 1304, 483: 1304, 1304, 1304, 1304, 488: 1304, 1304, 3718, 492: 1304, 1304, 1304, 496: 1304, 1304, 499: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 509: 1304, 1304, 512: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 3714, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 534: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 3715, 3716, 1304, 3719, 1304, 3717, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 568: 1304, 1304}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 1240, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3731}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 3732}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3785, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3784}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3779, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3778}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3777}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3776}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3775}, // 1175 - {1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 477: 1302, 1302, 1302, 1302, 1302, 483: 1302, 1302, 1302, 1302, 488: 1302, 1302, 1302, 492: 1302, 1302, 1302, 496: 1302, 1302, 499: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 509: 1302, 1302, 512: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 534: 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 568: 1302, 1302}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3734}, - {1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 477: 1301, 1301, 1301, 1301, 1301, 483: 1301, 1301, 1301, 1301, 488: 1301, 1301, 3718, 492: 1301, 1301, 1301, 496: 1301, 1301, 499: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 509: 1301, 1301, 512: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 3714, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 534: 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 3715, 3716, 1301, 3719, 1301, 3717, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 568: 1301, 1301}, - {1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 477: 1305, 1305, 1305, 1305, 1305, 483: 1305, 1305, 1305, 1305, 488: 1305, 1305, 3718, 492: 1305, 1305, 1305, 496: 1305, 1305, 499: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 509: 1305, 1305, 512: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 3714, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 534: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 3715, 3716, 1305, 3719, 1305, 3717, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 568: 1305, 1305}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 1240, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3737}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3774}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3773}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3772}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3770}, + {73: 3771, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1180 - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 3738}, - {1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 477: 1303, 1303, 1303, 1303, 1303, 483: 1303, 1303, 1303, 1303, 488: 1303, 1303, 1303, 492: 1303, 1303, 1303, 496: 1303, 1303, 499: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 509: 1303, 1303, 512: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 534: 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 568: 1303, 1303}, - {1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 477: 1306, 1306, 1306, 1306, 1306, 483: 1306, 1306, 1306, 1306, 488: 3712, 3713, 3718, 492: 1306, 1306, 1306, 496: 1306, 1306, 499: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 509: 1306, 1306, 512: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 3714, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 534: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 3715, 3716, 1306, 3719, 1306, 3717, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 568: 1306, 1306}, - {1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 477: 1307, 1307, 1307, 1307, 1307, 483: 1307, 1307, 1307, 1307, 488: 3712, 3713, 3718, 492: 1307, 1307, 1307, 496: 1307, 1307, 499: 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 509: 1307, 1307, 512: 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 3714, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 534: 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 3715, 3716, 1307, 3719, 1307, 3717, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 568: 1307, 1307}, - {1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 477: 1308, 1308, 1308, 1308, 1308, 483: 1308, 1308, 1308, 1308, 488: 3712, 3713, 3718, 492: 1308, 1308, 1308, 496: 1308, 1308, 499: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 509: 1308, 1308, 512: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 3714, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 534: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 3715, 3716, 1308, 3719, 1308, 3717, 3710, 3711, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 568: 1308, 1308}, + {1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 487: 1200, 1200, 1200, 491: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 502: 1200, 1200, 1200, 506: 1200, 1200, 510: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 518: 1200, 1200, 1200, 522: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 544: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 578: 1200, 1200, 607: 1200}, + {1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 487: 1308, 1308, 1308, 491: 1308, 1308, 494: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 502: 1308, 1308, 1308, 506: 1308, 1308, 510: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 518: 1308, 1308, 1308, 522: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 544: 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 578: 1308, 1308}, + {1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 487: 1309, 1309, 1309, 491: 1309, 1309, 494: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 502: 1309, 1309, 1309, 506: 1309, 1309, 510: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 518: 1309, 1309, 1309, 522: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 544: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 3768, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 578: 1309, 1309}, + {1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 487: 1310, 1310, 1310, 491: 1310, 1310, 494: 1310, 1310, 1310, 1310, 1310, 1310, 1310, 502: 1310, 1310, 1310, 506: 1310, 1310, 510: 1310, 1310, 1310, 1310, 1310, 1310, 1310, 518: 1310, 1310, 1310, 522: 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 544: 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 3768, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 578: 1310, 1310}, + {1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 487: 1311, 1311, 1311, 491: 1311, 1311, 494: 1311, 1311, 1311, 1311, 1311, 1311, 1311, 502: 1311, 1311, 1311, 506: 1311, 1311, 510: 1311, 1311, 1311, 1311, 1311, 1311, 1311, 518: 1311, 1311, 1311, 522: 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 544: 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 3768, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 578: 1311, 1311}, // 1185 - {1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 477: 1309, 1309, 1309, 1309, 1309, 483: 1309, 1309, 1309, 1309, 488: 3712, 3713, 3718, 492: 1309, 1309, 1309, 496: 1309, 1309, 499: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 509: 1309, 1309, 512: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 3714, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 534: 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 3715, 3716, 3709, 3719, 1309, 3717, 3710, 3711, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1309, 568: 1309, 1309}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 800: 3470, 820: 3744}, - {503: 3745}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3746}, - {50: 3747, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 487: 1312, 1312, 1312, 491: 1312, 1312, 494: 1312, 1312, 1312, 1312, 1312, 1312, 1312, 502: 1312, 1312, 1312, 506: 1312, 1312, 510: 1312, 1312, 1312, 1312, 1312, 1312, 1312, 518: 1312, 1312, 1312, 522: 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 544: 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 3768, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1312, 578: 1312, 1312}, + {1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 487: 1313, 1313, 1313, 491: 1313, 1313, 494: 1313, 1313, 1313, 1313, 1313, 1313, 1313, 502: 1313, 1313, 1313, 506: 1313, 1313, 510: 1313, 1313, 1313, 1313, 1313, 1313, 1313, 518: 1313, 1313, 1313, 522: 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 544: 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 3768, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 578: 1313, 1313}, + {1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 487: 1317, 1317, 1317, 491: 1317, 1317, 494: 1317, 1317, 1317, 1317, 1317, 1317, 3767, 502: 1317, 1317, 1317, 506: 1317, 1317, 510: 1317, 1317, 1317, 1317, 1317, 1317, 1317, 518: 1317, 1317, 1317, 522: 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 3763, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 544: 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 3764, 3765, 1317, 3768, 1317, 3766, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 578: 1317, 1317}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 1253, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3780}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 3781}, // 1190 - {1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 477: 1189, 1189, 1189, 1189, 1189, 483: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 492: 1189, 1189, 1189, 496: 1189, 1189, 499: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 509: 1189, 1189, 512: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 534: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 568: 1189, 1189, 597: 1189}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3749}, - {9: 3750, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {581: 3751}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3752}, + {1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 487: 1315, 1315, 1315, 491: 1315, 1315, 494: 1315, 1315, 1315, 1315, 1315, 1315, 1315, 502: 1315, 1315, 1315, 506: 1315, 1315, 510: 1315, 1315, 1315, 1315, 1315, 1315, 1315, 518: 1315, 1315, 1315, 522: 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 544: 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 1315, 578: 1315, 1315}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3783}, + {1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 487: 1314, 1314, 1314, 491: 1314, 1314, 494: 1314, 1314, 1314, 1314, 1314, 1314, 3767, 502: 1314, 1314, 1314, 506: 1314, 1314, 510: 1314, 1314, 1314, 1314, 1314, 1314, 1314, 518: 1314, 1314, 1314, 522: 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 3763, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 544: 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 3764, 3765, 1314, 3768, 1314, 3766, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 578: 1314, 1314}, + {1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 487: 1318, 1318, 1318, 491: 1318, 1318, 494: 1318, 1318, 1318, 1318, 1318, 1318, 3767, 502: 1318, 1318, 1318, 506: 1318, 1318, 510: 1318, 1318, 1318, 1318, 1318, 1318, 1318, 518: 1318, 1318, 1318, 522: 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 3763, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 544: 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 3764, 3765, 1318, 3768, 1318, 3766, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 578: 1318, 1318}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 1253, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3786}, // 1195 - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 3753}, - {50: 3754}, - {1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 477: 1190, 1190, 1190, 1190, 1190, 483: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 492: 1190, 1190, 1190, 496: 1190, 1190, 499: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 509: 1190, 1190, 512: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 534: 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 568: 1190, 1190, 597: 1190}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3756}, - {9: 3757, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 3787}, + {1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 487: 1316, 1316, 1316, 491: 1316, 1316, 494: 1316, 1316, 1316, 1316, 1316, 1316, 1316, 502: 1316, 1316, 1316, 506: 1316, 1316, 510: 1316, 1316, 1316, 1316, 1316, 1316, 1316, 518: 1316, 1316, 1316, 522: 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 544: 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 1316, 578: 1316, 1316}, + {1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 487: 1319, 1319, 1319, 491: 1319, 1319, 494: 1319, 1319, 1319, 1319, 3761, 3762, 3767, 502: 1319, 1319, 1319, 506: 1319, 1319, 510: 1319, 1319, 1319, 1319, 1319, 1319, 1319, 518: 1319, 1319, 1319, 522: 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 3763, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 544: 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 3764, 3765, 1319, 3768, 1319, 3766, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 578: 1319, 1319}, + {1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 487: 1320, 1320, 1320, 491: 1320, 1320, 494: 1320, 1320, 1320, 1320, 3761, 3762, 3767, 502: 1320, 1320, 1320, 506: 1320, 1320, 510: 1320, 1320, 1320, 1320, 1320, 1320, 1320, 518: 1320, 1320, 1320, 522: 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 3763, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 544: 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 3764, 3765, 1320, 3768, 1320, 3766, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 578: 1320, 1320}, + {1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 487: 1321, 1321, 1321, 491: 1321, 1321, 494: 1321, 1321, 1321, 1321, 3761, 3762, 3767, 502: 1321, 1321, 1321, 506: 1321, 1321, 510: 1321, 1321, 1321, 1321, 1321, 1321, 1321, 518: 1321, 1321, 1321, 522: 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 3763, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 544: 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 3764, 3765, 1321, 3768, 1321, 3766, 3759, 3760, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 578: 1321, 1321}, // 1200 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3759, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3758}, - {50: 3763, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 1240, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3760}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 3761}, - {50: 3762, 488: 3733}, + {1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 487: 1322, 1322, 1322, 491: 1322, 1322, 494: 1322, 1322, 1322, 1322, 3761, 3762, 3767, 502: 1322, 1322, 1322, 506: 1322, 1322, 510: 1322, 1322, 1322, 1322, 1322, 1322, 1322, 518: 1322, 1322, 1322, 522: 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 3763, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 544: 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 3764, 3765, 3758, 3768, 1322, 3766, 3759, 3760, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 578: 1322, 1322}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 805: 3519, 820: 3793}, + {514: 3794}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3795}, + {73: 3796, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1205 - {1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 477: 1191, 1191, 1191, 1191, 1191, 483: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 492: 1191, 1191, 1191, 496: 1191, 1191, 499: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 509: 1191, 1191, 512: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 534: 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 568: 1191, 1191, 597: 1191}, - {1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 477: 1192, 1192, 1192, 1192, 1192, 483: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 492: 1192, 1192, 1192, 496: 1192, 1192, 499: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 509: 1192, 1192, 512: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 534: 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 568: 1192, 1192, 597: 1192}, - {50: 1934, 511: 3766, 1059: 3765, 3767}, - {50: 1933}, - {50: 1932}, + {1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 487: 1202, 1202, 1202, 491: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 502: 1202, 1202, 1202, 506: 1202, 1202, 510: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 518: 1202, 1202, 1202, 522: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 544: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 578: 1202, 1202, 607: 1202}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3798}, + {9: 3799, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {592: 3800}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3801}, // 1210 - {50: 3768}, - {1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 477: 1193, 1193, 1193, 1193, 1193, 483: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 492: 1193, 1193, 1193, 496: 1193, 1193, 499: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 509: 1193, 1193, 512: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 534: 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 568: 1193, 1193, 597: 1193}, - {50: 1934, 511: 3766, 1059: 3765, 3770}, - {50: 3771}, - {1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 477: 1194, 1194, 1194, 1194, 1194, 483: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 492: 1194, 1194, 1194, 496: 1194, 1194, 499: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 509: 1194, 1194, 512: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 534: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 568: 1194, 1194, 597: 1194}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 3802}, + {73: 3803}, + {1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 487: 1203, 1203, 1203, 491: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 502: 1203, 1203, 1203, 506: 1203, 1203, 510: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 518: 1203, 1203, 1203, 522: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 544: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 578: 1203, 1203, 607: 1203}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3805}, + {9: 3806, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1215 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3773}, - {9: 3774, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 3775}, - {50: 3776, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 477: 1196, 1196, 1196, 1196, 1196, 483: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 492: 1196, 1196, 1196, 496: 1196, 1196, 499: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 509: 1196, 1196, 512: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 534: 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 568: 1196, 1196, 597: 1196}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3808, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3807}, + {73: 3812, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 1253, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3809}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 3810}, + {73: 3811, 498: 3782}, // 1220 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 3779}, - {9: 3616, 50: 1935}, - {50: 3780}, - {1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 477: 1197, 1197, 1197, 1197, 1197, 483: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 492: 1197, 1197, 1197, 496: 1197, 1197, 499: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 509: 1197, 1197, 512: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 534: 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 568: 1197, 1197, 597: 1197}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3782}, + {1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 487: 1204, 1204, 1204, 491: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 502: 1204, 1204, 1204, 506: 1204, 1204, 510: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 518: 1204, 1204, 1204, 522: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 544: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 578: 1204, 1204, 607: 1204}, + {1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 487: 1205, 1205, 1205, 491: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 502: 1205, 1205, 1205, 506: 1205, 1205, 510: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 518: 1205, 1205, 1205, 522: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 544: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 578: 1205, 1205, 607: 1205}, + {73: 1957, 521: 3815, 1071: 3814, 3816}, + {73: 1956}, + {73: 1955}, // 1225 - {9: 3616, 50: 3783, 484: 3784}, - {1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 477: 1202, 1202, 1202, 1202, 1202, 483: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 492: 1202, 1202, 1202, 496: 1202, 1202, 499: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 509: 1202, 1202, 512: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 534: 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 568: 1202, 1202, 597: 1202}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 3785}, - {50: 3788}, - {771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 771, 50: 771, 103: 771, 112: 771, 475: 771, 771, 771, 479: 771, 771, 771, 771, 771, 487: 771, 491: 771, 771, 495: 771, 498: 771, 506: 771, 771, 771, 771, 533: 771, 572: 771, 584: 771, 593: 771, 771, 645: 771, 771, 771, 771, 771, 771, 652: 771, 661: 771}, + {73: 3817}, + {1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 487: 1206, 1206, 1206, 491: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 502: 1206, 1206, 1206, 506: 1206, 1206, 510: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 518: 1206, 1206, 1206, 522: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 544: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 578: 1206, 1206, 607: 1206}, + {73: 1957, 521: 3815, 1071: 3814, 3819}, + {73: 3820}, + {1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 487: 1207, 1207, 1207, 491: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 502: 1207, 1207, 1207, 506: 1207, 1207, 510: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 518: 1207, 1207, 1207, 522: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 544: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 578: 1207, 1207, 607: 1207}, // 1230 - {770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 770, 50: 770, 103: 770, 112: 770, 475: 770, 770, 770, 479: 770, 770, 770, 770, 770, 487: 770, 491: 770, 770, 495: 770, 498: 770, 506: 770, 770, 770, 770, 533: 770, 572: 770, 584: 770, 593: 770, 770, 645: 770, 770, 770, 770, 770, 770, 652: 770, 661: 770}, - {1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 477: 1201, 1201, 1201, 1201, 1201, 483: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 492: 1201, 1201, 1201, 496: 1201, 1201, 499: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 509: 1201, 1201, 512: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 534: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 568: 1201, 1201, 597: 1201}, - {1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 477: 1203, 1203, 1203, 1203, 1203, 483: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 492: 1203, 1203, 1203, 496: 1203, 1203, 499: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 509: 1203, 1203, 512: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 534: 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 568: 1203, 1203, 597: 1203}, - {50: 3791, 511: 3792}, - {1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 477: 1125, 1125, 1125, 1125, 1125, 483: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 492: 1125, 1125, 1125, 496: 1125, 1125, 499: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 509: 1125, 1125, 512: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 534: 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 568: 1125, 1125, 597: 1125}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3822}, + {9: 3823, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 3824}, + {73: 3825, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 487: 1209, 1209, 1209, 491: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 502: 1209, 1209, 1209, 506: 1209, 1209, 510: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 518: 1209, 1209, 1209, 522: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 544: 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 578: 1209, 1209, 607: 1209}, // 1235 - {50: 3793}, - {1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 477: 1124, 1124, 1124, 1124, 1124, 483: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 492: 1124, 1124, 1124, 496: 1124, 1124, 499: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 509: 1124, 1124, 512: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 534: 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 568: 1124, 1124, 597: 1124}, - {50: 3795}, - {1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 477: 1204, 1204, 1204, 1204, 1204, 483: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 492: 1204, 1204, 1204, 496: 1204, 1204, 499: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 509: 1204, 1204, 512: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 534: 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 568: 1204, 1204, 597: 1204}, - {50: 3798}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 3828}, + {9: 3665, 73: 1958}, + {73: 3829}, + {1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 487: 1210, 1210, 1210, 491: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 502: 1210, 1210, 1210, 506: 1210, 1210, 510: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 518: 1210, 1210, 1210, 522: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 544: 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 578: 1210, 1210, 607: 1210}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3831}, // 1240 - {1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 477: 1205, 1205, 1205, 1205, 1205, 483: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 492: 1205, 1205, 1205, 496: 1205, 1205, 499: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 509: 1205, 1205, 512: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 534: 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 568: 1205, 1205, 597: 1205}, - {1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 477: 1219, 1219, 1219, 1219, 1219, 483: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 492: 1219, 1219, 1219, 496: 1219, 1219, 499: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 509: 1219, 1219, 512: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 534: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 568: 1219, 1219, 597: 1219, 653: 1219, 669: 1219, 671: 1219}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 3800}, - {50: 3801}, - {1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 477: 1206, 1206, 1206, 1206, 1206, 483: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 492: 1206, 1206, 1206, 496: 1206, 1206, 499: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 509: 1206, 1206, 512: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 534: 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 568: 1206, 1206, 597: 1206}, + {9: 3665, 73: 3832, 495: 3833}, + {1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 487: 1215, 1215, 1215, 491: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 502: 1215, 1215, 1215, 506: 1215, 1215, 510: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 518: 1215, 1215, 1215, 522: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 544: 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 578: 1215, 1215, 607: 1215}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 3834}, + {73: 3837}, + {784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 73: 784, 105: 784, 128: 784, 485: 784, 784, 488: 784, 784, 784, 784, 784, 784, 784, 501: 784, 784, 505: 784, 508: 784, 784, 517: 784, 784, 784, 543: 784, 581: 784, 594: 784, 604: 784, 784, 655: 784, 784, 784, 784, 784, 784, 784, 671: 784}, // 1245 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 3803}, - {50: 3804}, - {1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 477: 1207, 1207, 1207, 1207, 1207, 483: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 492: 1207, 1207, 1207, 496: 1207, 1207, 499: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 509: 1207, 1207, 512: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 534: 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 568: 1207, 1207, 597: 1207}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3806, 2785, 2786, 2784, 715: 3807}, - {50: 1293, 502: 1293, 655: 3809}, + {783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 783, 73: 783, 105: 783, 128: 783, 485: 783, 783, 488: 783, 783, 783, 783, 783, 783, 783, 501: 783, 783, 505: 783, 508: 783, 783, 517: 783, 783, 783, 543: 783, 581: 783, 594: 783, 604: 783, 783, 655: 783, 783, 783, 783, 783, 783, 783, 671: 783}, + {1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 487: 1214, 1214, 1214, 491: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 502: 1214, 1214, 1214, 506: 1214, 1214, 510: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 518: 1214, 1214, 1214, 522: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 544: 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 578: 1214, 1214, 607: 1214}, + {1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 487: 1216, 1216, 1216, 491: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 502: 1216, 1216, 1216, 506: 1216, 1216, 510: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 518: 1216, 1216, 1216, 522: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 544: 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 578: 1216, 1216, 607: 1216}, + {73: 3840, 521: 3841}, + {1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 487: 1138, 1138, 1138, 491: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 502: 1138, 1138, 1138, 506: 1138, 1138, 510: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 518: 1138, 1138, 1138, 522: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 544: 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 578: 1138, 1138, 607: 1138}, // 1250 - {50: 3808}, - {1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 477: 1262, 1262, 1262, 1262, 1262, 483: 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 492: 1262, 1262, 1262, 496: 1262, 1262, 499: 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 509: 1262, 1262, 512: 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 534: 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 568: 1262, 1262, 597: 1262}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3810, 2785, 2786, 2784}, - {50: 1292, 502: 1292, 655: 3811}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3812, 2785, 2786, 2784}, + {73: 3842}, + {1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 487: 1137, 1137, 1137, 491: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 502: 1137, 1137, 1137, 506: 1137, 1137, 510: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 518: 1137, 1137, 1137, 522: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 544: 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 578: 1137, 1137, 607: 1137}, + {73: 3844}, + {1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 487: 1217, 1217, 1217, 491: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 502: 1217, 1217, 1217, 506: 1217, 1217, 510: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 518: 1217, 1217, 1217, 522: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 544: 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 578: 1217, 1217, 607: 1217}, + {73: 3847}, // 1255 - {1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 477: 1291, 1291, 1291, 1291, 1291, 483: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 492: 1291, 1291, 1291, 496: 1291, 1291, 499: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 509: 1291, 1291, 512: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 534: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 568: 1291, 1291, 597: 1291, 659: 1291, 1291}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3806, 2785, 2786, 2784, 715: 3814}, - {50: 3815}, - {1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 477: 1263, 1263, 1263, 1263, 1263, 483: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 492: 1263, 1263, 1263, 496: 1263, 1263, 499: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 509: 1263, 1263, 512: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 534: 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 568: 1263, 1263, 597: 1263}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3817}, + {1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 487: 1218, 1218, 1218, 491: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 502: 1218, 1218, 1218, 506: 1218, 1218, 510: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 518: 1218, 1218, 1218, 522: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 544: 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 578: 1218, 1218, 607: 1218}, + {1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 487: 1232, 1232, 1232, 491: 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 502: 1232, 1232, 1232, 506: 1232, 1232, 510: 1232, 1232, 1232, 1232, 1232, 1232, 1232, 518: 1232, 1232, 1232, 522: 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 544: 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 1232, 578: 1232, 1232, 607: 1232, 663: 1232, 675: 1232, 681: 1232}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 3849}, + {73: 3850}, + {1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 487: 1219, 1219, 1219, 491: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 502: 1219, 1219, 1219, 506: 1219, 1219, 510: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 518: 1219, 1219, 1219, 522: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 544: 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 578: 1219, 1219, 607: 1219}, // 1260 - {9: 3818, 484: 3819, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {52: 3830, 105: 3826, 173: 3832, 180: 3827, 3825, 202: 3829, 508: 3837, 533: 3823, 650: 3836, 684: 3828, 3833, 3834, 689: 3835, 744: 3831, 906: 3824, 1002: 3822}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 3820}, - {50: 3821}, - {1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 477: 1264, 1264, 1264, 1264, 1264, 483: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 492: 1264, 1264, 1264, 496: 1264, 1264, 499: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 509: 1264, 1264, 512: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 534: 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 568: 1264, 1264, 597: 1264}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 3852}, + {73: 3853}, + {1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 487: 1220, 1220, 1220, 491: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 502: 1220, 1220, 1220, 506: 1220, 1220, 510: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 518: 1220, 1220, 1220, 522: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 544: 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 578: 1220, 1220, 607: 1220}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3855, 2824, 2825, 2823, 725: 3856}, + {73: 1306, 512: 1306, 665: 3858}, // 1265 - {50: 3873}, - {50: 298, 476: 3852, 768: 3853, 794: 3872}, - {16: 298, 50: 298, 476: 3852, 508: 298, 533: 298, 650: 298, 768: 3853, 794: 3857}, - {50: 1085}, - {50: 1084}, + {73: 3857}, + {1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 487: 1275, 1275, 1275, 491: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 502: 1275, 1275, 1275, 506: 1275, 1275, 510: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 518: 1275, 1275, 1275, 522: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 544: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 578: 1275, 1275, 607: 1275}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3859, 2824, 2825, 2823}, + {73: 1305, 512: 1305, 665: 3860}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3861, 2824, 2825, 2823}, // 1270 - {50: 298, 476: 3852, 768: 3853, 794: 3856}, - {50: 291, 476: 3839, 768: 3840, 909: 3855, 914: 3841}, - {50: 298, 476: 3852, 768: 3853, 794: 3851}, - {50: 362, 687: 3848, 3849, 1099: 3850}, - {50: 362, 687: 3848, 3849, 1099: 3847}, + {1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 487: 1304, 1304, 1304, 491: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 502: 1304, 1304, 1304, 506: 1304, 1304, 510: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 518: 1304, 1304, 1304, 522: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 544: 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 578: 1304, 1304, 607: 1304, 669: 1304, 1304}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3855, 2824, 2825, 2823, 725: 3863}, + {73: 3864}, + {1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 487: 1276, 1276, 1276, 491: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 502: 1276, 1276, 1276, 506: 1276, 1276, 510: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 518: 1276, 1276, 1276, 522: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 544: 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 578: 1276, 1276, 607: 1276}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3866}, // 1275 - {50: 1078}, - {50: 1077}, - {50: 291, 476: 3839, 768: 3840, 909: 3838, 914: 3841}, - {50: 1075}, - {16: 336, 50: 336, 476: 336, 508: 336, 533: 336, 650: 336}, + {9: 3867, 495: 3868, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {53: 3879, 108: 3875, 180: 3881, 187: 3876, 3874, 210: 3878, 508: 3886, 543: 3872, 660: 3885, 694: 3877, 3882, 3883, 699: 3884, 754: 3880, 917: 3873, 1013: 3871}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 3869}, + {73: 3870}, + {1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 487: 1277, 1277, 1277, 491: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 502: 1277, 1277, 1277, 506: 1277, 1277, 510: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 518: 1277, 1277, 1277, 522: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 544: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 578: 1277, 1277, 607: 1277}, // 1280 - {16: 335, 50: 335, 476: 335, 508: 335, 533: 335, 650: 335}, - {50: 1076}, - {511: 2759, 737: 2758, 745: 3842}, - {290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 50: 290, 52: 290, 475: 290, 479: 290, 290, 290, 290, 487: 290, 491: 290, 495: 290, 584: 290, 593: 290, 290, 645: 290, 290, 290, 290, 744: 290, 747: 290}, - {289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 50: 289, 52: 289, 475: 289, 479: 289, 289, 289, 289, 487: 289, 491: 289, 495: 289, 584: 289, 593: 289, 289, 645: 289, 289, 289, 289, 744: 289, 747: 289}, + {73: 3922}, + {73: 307, 486: 3901, 778: 3902, 804: 3921}, + {16: 307, 73: 307, 486: 3901, 508: 307, 543: 307, 660: 307, 778: 3902, 804: 3906}, + {73: 1098}, + {73: 1097}, // 1285 - {9: 3844, 50: 3843}, - {299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 16: 299, 50: 299, 52: 299, 107: 299, 299, 111: 299, 475: 299, 479: 299, 299, 299, 299, 487: 299, 491: 299, 495: 299, 508: 299, 532: 299, 299, 299, 584: 299, 593: 299, 299, 645: 299, 299, 299, 299, 650: 299, 744: 299, 747: 299}, - {511: 2759, 737: 2758, 745: 3845}, - {50: 3846}, - {288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 50: 288, 52: 288, 475: 288, 479: 288, 288, 288, 288, 487: 288, 491: 288, 495: 288, 584: 288, 593: 288, 288, 645: 288, 288, 288, 288, 744: 288, 747: 288}, + {73: 307, 486: 3901, 778: 3902, 804: 3905}, + {73: 300, 486: 3888, 778: 3889, 920: 3904, 925: 3890}, + {73: 307, 486: 3901, 778: 3902, 804: 3900}, + {73: 371, 697: 3897, 3898, 1111: 3899}, + {73: 371, 697: 3897, 3898, 1111: 3896}, // 1290 - {50: 1079}, - {50: 361}, - {50: 360}, - {50: 1080}, - {50: 1081}, + {73: 1091}, + {73: 1090}, + {73: 300, 486: 3888, 778: 3889, 920: 3887, 925: 3890}, + {73: 1088}, + {16: 345, 73: 345, 486: 345, 508: 345, 543: 345, 660: 345}, // 1295 - {511: 2759, 737: 2758, 745: 3854}, - {297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 16: 297, 50: 297, 52: 297, 107: 297, 297, 111: 297, 475: 297, 479: 297, 297, 297, 297, 487: 297, 491: 297, 495: 297, 508: 297, 532: 297, 297, 297, 584: 297, 593: 297, 297, 645: 297, 297, 297, 297, 650: 297, 744: 297, 747: 297}, - {50: 3843}, - {50: 1082}, - {50: 1083}, + {16: 344, 73: 344, 486: 344, 508: 344, 543: 344, 660: 344}, + {73: 1089}, + {521: 2798, 747: 2797, 755: 3891}, + {299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 53: 299, 73: 299, 485: 299, 489: 299, 299, 299, 299, 299, 501: 299, 505: 299, 594: 299, 604: 299, 299, 655: 299, 299, 299, 659: 299, 754: 299, 757: 299}, + {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 53: 298, 73: 298, 485: 298, 489: 298, 298, 298, 298, 298, 501: 298, 505: 298, 594: 298, 604: 298, 298, 655: 298, 298, 298, 659: 298, 754: 298, 757: 298}, // 1300 - {16: 3862, 50: 285, 508: 3863, 533: 3859, 650: 3861, 779: 3860, 803: 3858}, - {50: 1086}, - {282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 282, 16: 3862, 50: 282, 475: 282, 479: 282, 282, 282, 282, 487: 282, 491: 282, 495: 282, 508: 3863, 584: 282, 593: 282, 282, 645: 282, 282, 282, 282, 650: 3861, 779: 3870, 1270: 3869}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 3866}, - {509: 3865}, + {9: 3893, 73: 3892}, + {308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 16: 308, 53: 308, 73: 308, 111: 308, 308, 126: 308, 485: 308, 489: 308, 308, 308, 308, 308, 501: 308, 505: 308, 508: 308, 542: 308, 308, 555: 308, 594: 308, 604: 308, 308, 655: 308, 308, 308, 659: 308, 308, 754: 308, 757: 308}, + {521: 2798, 747: 2797, 755: 3894}, + {73: 3895}, + {297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 53: 297, 73: 297, 485: 297, 489: 297, 297, 297, 297, 297, 501: 297, 505: 297, 594: 297, 604: 297, 297, 655: 297, 297, 297, 659: 297, 754: 297, 757: 297}, // 1305 - {279, 279, 279, 279, 279, 279, 279, 279, 279, 10: 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 51: 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 478: 279, 482: 279, 501: 279, 279, 521: 279, 533: 279}, - {509: 3864}, - {278, 278, 278, 278, 278, 278, 278, 278, 278, 10: 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 51: 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 478: 278, 482: 278, 501: 278, 278, 521: 278, 533: 278}, - {280, 280, 280, 280, 280, 280, 280, 280, 280, 10: 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 51: 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 478: 280, 482: 280, 501: 280, 280, 521: 280, 533: 280}, - {287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 50: 287, 475: 287, 479: 287, 287, 287, 287, 487: 287, 491: 287, 495: 287, 533: 3867, 584: 287, 593: 287, 287, 645: 287, 287, 287, 287, 1269: 3868}, + {73: 1092}, + {73: 370}, + {73: 369}, + {73: 1093}, + {73: 1094}, // 1310 - {286, 286, 286, 286, 286, 286, 286, 286, 286, 286, 286, 286, 286, 286, 286, 50: 286, 475: 286, 479: 286, 286, 286, 286, 487: 286, 491: 286, 495: 286, 584: 286, 593: 286, 286, 645: 286, 286, 286, 286}, - {283, 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, 283, 50: 283, 475: 283, 479: 283, 283, 283, 283, 487: 283, 491: 283, 495: 283, 584: 283, 593: 283, 283, 645: 283, 283, 283, 283}, - {284, 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, 50: 284, 475: 284, 479: 284, 284, 284, 284, 487: 284, 491: 284, 495: 284, 584: 284, 593: 284, 284, 645: 284, 284, 284, 284}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 3871}, - {281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 50: 281, 475: 281, 479: 281, 281, 281, 281, 487: 281, 491: 281, 495: 281, 584: 281, 593: 281, 281, 645: 281, 281, 281, 281}, + {521: 2798, 747: 2797, 755: 3903}, + {306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 16: 306, 53: 306, 73: 306, 111: 306, 306, 126: 306, 485: 306, 489: 306, 306, 306, 306, 306, 501: 306, 505: 306, 508: 306, 542: 306, 306, 555: 306, 594: 306, 604: 306, 306, 655: 306, 306, 306, 659: 306, 306, 754: 306, 757: 306}, + {73: 3892}, + {73: 1095}, + {73: 1096}, // 1315 - {50: 1087}, - {1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 477: 1265, 1265, 1265, 1265, 1265, 483: 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 492: 1265, 1265, 1265, 496: 1265, 1265, 499: 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 509: 1265, 1265, 512: 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 534: 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 568: 1265, 1265, 597: 1265}, - {510: 3371, 512: 3369, 3370, 3368, 3366, 546: 1093, 738: 3367, 3365}, - {546: 3878, 1168: 3877, 1353: 3876}, - {163: 1089, 546: 3878, 548: 3884, 1168: 3883, 1216: 3882}, + {16: 3911, 73: 294, 508: 3912, 543: 3908, 660: 3910, 790: 3909, 813: 3907}, + {73: 1099}, + {291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 16: 3911, 73: 291, 485: 291, 489: 291, 291, 291, 291, 291, 501: 291, 505: 291, 508: 3912, 594: 291, 604: 291, 291, 655: 291, 291, 291, 659: 291, 3910, 790: 3919, 1283: 3918}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 3915}, + {519: 3914}, // 1320 - {163: 1092, 546: 1092, 548: 1092}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3879}, - {510: 3371, 512: 3369, 3370, 3368, 3366, 549: 3880, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3881}, - {163: 1090, 510: 3371, 512: 3369, 3370, 3368, 3366, 546: 1090, 548: 1090, 738: 3367, 3365}, + {288, 288, 288, 288, 288, 288, 288, 288, 288, 10: 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 74: 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 487: 288, 490: 288, 512: 288, 288, 531: 288, 543: 288}, + {519: 3913}, + {287, 287, 287, 287, 287, 287, 287, 287, 287, 10: 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 74: 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 287, 487: 287, 490: 287, 512: 287, 287, 531: 287, 543: 287}, + {289, 289, 289, 289, 289, 289, 289, 289, 289, 10: 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 74: 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 289, 487: 289, 490: 289, 512: 289, 289, 531: 289, 543: 289}, + {296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 73: 296, 485: 296, 489: 296, 296, 296, 296, 296, 501: 296, 505: 296, 543: 3916, 594: 296, 604: 296, 296, 655: 296, 296, 296, 659: 296, 1282: 3917}, // 1325 - {163: 3886}, - {163: 1091, 546: 1091, 548: 1091}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3885}, - {163: 1088, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 477: 1266, 1266, 1266, 1266, 1266, 483: 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 492: 1266, 1266, 1266, 496: 1266, 1266, 499: 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 509: 1266, 1266, 512: 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 534: 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 1266, 568: 1266, 1266, 597: 1266}, + {295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 73: 295, 485: 295, 489: 295, 295, 295, 295, 295, 501: 295, 505: 295, 594: 295, 604: 295, 295, 655: 295, 295, 295, 659: 295}, + {292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 73: 292, 485: 292, 489: 292, 292, 292, 292, 292, 501: 292, 505: 292, 594: 292, 604: 292, 292, 655: 292, 292, 292, 659: 292}, + {293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 73: 293, 485: 293, 489: 293, 293, 293, 293, 293, 501: 293, 505: 293, 594: 293, 604: 293, 293, 655: 293, 293, 293, 659: 293}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 3920}, + {290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 290, 73: 290, 485: 290, 489: 290, 290, 290, 290, 290, 501: 290, 505: 290, 594: 290, 604: 290, 290, 655: 290, 290, 290, 659: 290}, // 1330 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3888}, - {481: 3889, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {52: 3830, 105: 3826, 173: 3832, 180: 3827, 3825, 202: 3829, 508: 3837, 533: 3823, 650: 3836, 684: 3828, 3833, 3834, 689: 3835, 744: 3831, 906: 3824, 1002: 3890}, - {50: 3891}, - {1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 477: 1267, 1267, 1267, 1267, 1267, 483: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 492: 1267, 1267, 1267, 496: 1267, 1267, 499: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 509: 1267, 1267, 512: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 534: 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 568: 1267, 1267, 597: 1267}, + {73: 1100}, + {1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 487: 1278, 1278, 1278, 491: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 502: 1278, 1278, 1278, 506: 1278, 1278, 510: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 518: 1278, 1278, 1278, 522: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 544: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 578: 1278, 1278, 607: 1278}, + {520: 3420, 522: 3418, 3419, 3417, 3415, 556: 1106, 748: 3416, 3414}, + {556: 3927, 1182: 3926, 1366: 3925}, + {170: 1102, 556: 3927, 558: 3933, 1182: 3932, 1229: 3931}, // 1335 - {1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 477: 1268, 1268, 1268, 1268, 1268, 483: 1268, 1268, 1268, 1268, 3376, 1268, 1268, 1268, 492: 1268, 1268, 1268, 496: 1268, 1268, 499: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 509: 1268, 1268, 512: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 534: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 568: 1268, 1268, 597: 1268}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3894}, - {510: 3371, 512: 3369, 3370, 3368, 3366, 526: 3895, 738: 3367, 3365}, - {1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 477: 1269, 1269, 1269, 1269, 1269, 483: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 492: 1269, 1269, 1269, 496: 1269, 1269, 499: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 509: 1269, 1269, 512: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 534: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 568: 1269, 1269, 597: 1269}, - {1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 477: 1270, 1270, 1270, 1270, 1270, 483: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 492: 1270, 1270, 1270, 496: 1270, 1270, 499: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 509: 1270, 1270, 512: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 534: 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 568: 1270, 1270, 597: 1270}, + {170: 1105, 556: 1105, 558: 1105}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3928}, + {520: 3420, 522: 3418, 3419, 3417, 3415, 559: 3929, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3930}, + {170: 1103, 520: 3420, 522: 3418, 3419, 3417, 3415, 556: 1103, 558: 1103, 748: 3416, 3414}, // 1340 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3898}, - {9: 3899}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3900}, - {9: 1939, 50: 3901, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 477: 1271, 1271, 1271, 1271, 1271, 483: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 492: 1271, 1271, 1271, 496: 1271, 1271, 499: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 509: 1271, 1271, 512: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 534: 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 1271, 568: 1271, 1271, 597: 1271}, + {170: 3935}, + {170: 1104, 556: 1104, 558: 1104}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3934}, + {170: 1101, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 487: 1279, 1279, 1279, 491: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 502: 1279, 1279, 1279, 506: 1279, 1279, 510: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 518: 1279, 1279, 1279, 522: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 544: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 578: 1279, 1279, 607: 1279}, // 1345 - {9: 1940, 50: 4004, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {9: 4001}, - {9: 1274, 50: 1274, 479: 1274, 1274, 483: 828, 487: 1274, 1274, 1274, 1274, 493: 828, 828, 496: 2751, 502: 1274, 504: 2752, 2748, 510: 1274, 512: 1274, 1274, 1274, 1274, 521: 1274, 523: 1274, 547: 1274, 550: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 568: 1274, 1274, 597: 1274, 772: 3917, 3918}, - {476: 3805, 578: 3922, 917: 3921, 981: 3920}, - {476: 2608, 498: 2606, 572: 2605, 649: 2601, 713: 3914, 752: 3913, 2602, 2603, 2604, 2613, 760: 2611, 3915, 3916}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3937}, + {492: 3938, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {53: 3879, 108: 3875, 180: 3881, 187: 3876, 3874, 210: 3878, 508: 3886, 543: 3872, 660: 3885, 694: 3877, 3882, 3883, 699: 3884, 754: 3880, 917: 3873, 1013: 3939}, + {73: 3940}, + {1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 487: 1280, 1280, 1280, 491: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 502: 1280, 1280, 1280, 506: 1280, 1280, 510: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 518: 1280, 1280, 1280, 522: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 544: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 578: 1280, 1280, 607: 1280}, // 1350 - {50: 3912, 483: 829, 493: 829, 829}, - {50: 3911}, - {50: 3910}, - {856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 483: 856, 856, 856, 856, 856, 856, 856, 856, 492: 856, 856, 856, 496: 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 509: 856, 856, 512: 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 534: 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 856, 568: 856, 856, 572: 856, 597: 856, 649: 856, 657: 856, 743: 856}, - {857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 483: 857, 857, 857, 857, 857, 857, 857, 857, 492: 857, 857, 857, 496: 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 509: 857, 857, 512: 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 534: 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 857, 568: 857, 857, 572: 857, 597: 857, 649: 857, 657: 857, 743: 857}, + {1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 487: 1281, 1281, 1281, 491: 1281, 1281, 3425, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 502: 1281, 1281, 1281, 506: 1281, 1281, 510: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 518: 1281, 1281, 1281, 522: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 544: 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 1281, 578: 1281, 1281, 607: 1281}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3943}, + {520: 3420, 522: 3418, 3419, 3417, 3415, 536: 3944, 748: 3416, 3414}, + {1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 487: 1282, 1282, 1282, 491: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 502: 1282, 1282, 1282, 506: 1282, 1282, 510: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 518: 1282, 1282, 1282, 522: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 544: 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 578: 1282, 1282, 607: 1282}, + {1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 487: 1283, 1283, 1283, 491: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 502: 1283, 1283, 1283, 506: 1283, 1283, 510: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 518: 1283, 1283, 1283, 522: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 544: 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 1283, 578: 1283, 1283, 607: 1283}, // 1355 - {858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 483: 858, 858, 858, 858, 858, 858, 858, 858, 492: 858, 858, 858, 496: 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 509: 858, 858, 512: 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 534: 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 858, 568: 858, 858, 572: 858, 597: 858, 649: 858, 657: 858, 743: 858}, - {1013, 1013, 50: 1013, 475: 1013, 477: 1013, 483: 829, 1013, 493: 829, 829}, - {1012, 1012, 50: 1012, 475: 1012, 477: 1012, 483: 828, 1012, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {841, 841, 50: 841, 475: 841, 477: 841, 484: 841}, - {840, 840, 50: 840, 475: 840, 477: 840, 484: 840}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3947}, + {9: 3948}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3949}, + {9: 1962, 73: 3950, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 487: 1284, 1284, 1284, 491: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 502: 1284, 1284, 1284, 506: 1284, 1284, 510: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 518: 1284, 1284, 1284, 522: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 544: 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 1284, 578: 1284, 1284, 607: 1284}, // 1360 - {834, 834, 50: 834, 475: 834, 477: 834, 484: 834, 496: 2751, 504: 2752, 773: 3919}, - {833, 833, 50: 833, 475: 833, 477: 833, 484: 833}, - {832, 832, 50: 832, 475: 832, 477: 832, 484: 832}, - {1311, 1311, 9: 3934, 50: 1311, 475: 1311, 477: 1311, 483: 1311, 1311, 493: 1311, 1311, 496: 1311, 1311, 499: 1311, 1311, 504: 1311, 2748, 772: 2749, 817: 3933}, - {10, 10, 9: 10, 50: 10, 475: 10, 477: 10, 483: 10, 10, 493: 10, 10, 496: 10, 10, 499: 10, 10, 504: 10, 10}, + {9: 1963, 73: 4053, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {9: 4050}, + {9: 1287, 73: 1287, 489: 1287, 491: 1287, 493: 1287, 841, 498: 1287, 1287, 1287, 503: 841, 841, 506: 2790, 512: 1287, 515: 2791, 2787, 520: 1287, 522: 1287, 1287, 1287, 1287, 531: 1287, 533: 1287, 557: 1287, 560: 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 1287, 578: 1287, 1287, 607: 1287, 782: 3966, 3967}, + {486: 3854, 588: 3971, 928: 3970, 991: 3969}, + {486: 2642, 509: 2640, 581: 2639, 658: 2635, 723: 3963, 762: 3962, 2636, 2637, 2638, 2647, 770: 2645, 3964, 3965}, // 1365 - {476: 3923, 844: 3924}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1351, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 3928, 1343: 3927, 3926}, - {8, 8, 9: 8, 50: 8, 475: 8, 477: 8, 483: 8, 8, 493: 8, 8, 496: 8, 8, 499: 8, 8, 504: 8, 8}, - {1347, 1347, 9: 1347, 50: 1347, 475: 1347, 484: 1347, 496: 1347, 501: 1347, 505: 1347, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {50: 3932}, + {73: 3961, 494: 842, 503: 842, 842}, + {73: 3960}, + {73: 3959}, + {869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 491: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 502: 869, 869, 869, 506: 869, 869, 509: 869, 869, 869, 869, 869, 869, 869, 869, 518: 869, 869, 869, 522: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 544: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 578: 869, 869, 581: 869, 607: 869, 658: 869, 667: 869, 753: 869}, + {870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 491: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 502: 870, 870, 870, 506: 870, 870, 509: 870, 870, 870, 870, 870, 870, 870, 870, 518: 870, 870, 870, 522: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 544: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 578: 870, 870, 581: 870, 607: 870, 658: 870, 667: 870, 753: 870}, // 1370 - {9: 3930, 50: 1350}, - {9: 1348, 50: 1348}, - {1346, 1346, 9: 1346, 50: 1346, 475: 1346, 3813, 484: 1346, 496: 1346, 501: 1346, 505: 1346}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 3931}, - {9: 1349, 50: 1349}, + {871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 491: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 502: 871, 871, 871, 506: 871, 871, 509: 871, 871, 871, 871, 871, 871, 871, 871, 518: 871, 871, 871, 522: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 544: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 578: 871, 871, 581: 871, 607: 871, 658: 871, 667: 871, 753: 871}, + {1026, 1026, 73: 1026, 485: 1026, 488: 1026, 494: 842, 1026, 503: 842, 842}, + {1025, 1025, 73: 1025, 485: 1025, 488: 1025, 494: 841, 1025, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {854, 854, 73: 854, 485: 854, 488: 854, 495: 854}, + {853, 853, 73: 853, 485: 853, 488: 853, 495: 853}, // 1375 - {1352, 1352, 9: 1352, 50: 1352, 89: 1352, 475: 1352, 477: 1352, 483: 1352, 1352, 493: 1352, 1352, 496: 1352, 1352, 499: 1352, 1352, 504: 1352, 1352, 510: 1352}, - {883, 883, 50: 883, 475: 883, 477: 883, 483: 883, 883, 493: 883, 883, 496: 2751, 883, 499: 883, 883, 504: 2752, 773: 2753, 834: 3936}, - {578: 3922, 917: 3935}, - {9, 9, 9: 9, 50: 9, 475: 9, 477: 9, 483: 9, 9, 493: 9, 9, 496: 9, 9, 499: 9, 9, 504: 9, 9}, - {854, 854, 50: 854, 475: 854, 477: 854, 483: 854, 854, 493: 854, 854, 497: 3938, 499: 854, 3939, 892: 3937}, + {847, 847, 73: 847, 485: 847, 488: 847, 495: 847, 506: 2790, 515: 2791, 783: 3968}, + {846, 846, 73: 846, 485: 846, 488: 846, 495: 846}, + {845, 845, 73: 845, 485: 845, 488: 845, 495: 845}, + {1324, 1324, 9: 3983, 73: 1324, 485: 1324, 488: 1324, 494: 1324, 1324, 503: 1324, 1324, 506: 1324, 1324, 510: 1324, 1324, 515: 1324, 2787, 782: 2788, 828: 3982}, + {11, 11, 9: 11, 73: 11, 485: 11, 488: 11, 494: 11, 11, 503: 11, 11, 506: 11, 11, 510: 11, 11, 515: 11, 11}, // 1380 - {860, 860, 50: 860, 475: 860, 477: 860, 483: 860, 860, 493: 860, 860, 499: 3964, 893: 3963}, - {289: 3944, 657: 3943}, - {547: 3940}, - {289: 3941}, - {215: 3942}, + {486: 3972, 854: 3973}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1364, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 3977, 1356: 3976, 3975}, + {9, 9, 9: 9, 73: 9, 485: 9, 488: 9, 494: 9, 9, 503: 9, 9, 506: 9, 9, 510: 9, 9, 515: 9, 9}, + {1360, 1360, 9: 1360, 73: 1360, 485: 1360, 495: 1360, 506: 1360, 513: 1360, 516: 1360, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {73: 3981}, // 1385 - {846, 846, 50: 846, 475: 846, 477: 846, 483: 846, 846, 493: 846, 846, 499: 846}, - {845, 845, 50: 845, 143: 845, 155: 845, 178: 845, 475: 845, 477: 845, 483: 845, 845, 493: 845, 845, 499: 845, 1092: 3946, 3957}, - {845, 845, 50: 845, 143: 845, 155: 845, 475: 845, 477: 845, 483: 845, 845, 493: 845, 845, 499: 845, 1092: 3946, 3945}, - {852, 852, 50: 852, 143: 3955, 155: 3954, 475: 852, 477: 852, 483: 852, 852, 493: 852, 852, 499: 852}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 3949}, + {9: 3979, 73: 1363}, + {9: 1361, 73: 1361}, + {1359, 1359, 9: 1359, 73: 1359, 485: 1359, 3862, 495: 1359, 506: 1359, 513: 1359, 516: 1359}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 3980}, + {9: 1362, 73: 1362}, // 1390 - {1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 534: 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 568: 1069, 1069, 572: 1069, 584: 1069, 587: 1069, 593: 1069, 1069, 597: 1069, 645: 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 3952, 1069, 1069, 1069, 661: 1069, 663: 1069, 668: 1069, 672: 1069, 1069, 1069, 1069, 1069, 1069, 680: 1069, 683: 1069, 690: 1069, 1069, 693: 1069, 708: 1069}, - {1067, 1067, 9: 1067, 50: 1067, 143: 1067, 155: 1067, 178: 1067, 475: 1067, 477: 1067, 483: 1067, 1067, 493: 1067, 1067, 499: 1067, 503: 1067, 653: 1067, 673: 1067, 675: 1067}, - {844, 844, 9: 3950, 50: 844, 143: 844, 155: 844, 178: 844, 475: 844, 477: 844, 483: 844, 844, 493: 844, 844, 499: 844}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3951}, - {1066, 1066, 9: 1066, 50: 1066, 143: 1066, 155: 1066, 168: 1066, 178: 1066, 475: 1066, 477: 1066, 483: 1066, 1066, 493: 1066, 1066, 499: 1066, 503: 1066, 653: 1066, 1066, 673: 1066, 675: 1066, 680: 1066}, + {1365, 1365, 9: 1365, 73: 1365, 91: 1365, 485: 1365, 488: 1365, 494: 1365, 1365, 503: 1365, 1365, 506: 1365, 1365, 510: 1365, 1365, 515: 1365, 1365, 520: 1365}, + {896, 896, 73: 896, 485: 896, 488: 896, 494: 896, 896, 503: 896, 896, 506: 2790, 896, 510: 896, 896, 515: 2791, 783: 2792, 844: 3985}, + {588: 3971, 928: 3984}, + {10, 10, 9: 10, 73: 10, 485: 10, 488: 10, 494: 10, 10, 503: 10, 10, 506: 10, 10, 510: 10, 10, 515: 10, 10}, + {867, 867, 73: 867, 485: 867, 488: 867, 494: 867, 867, 503: 867, 867, 507: 3987, 510: 867, 3988, 903: 3986}, // 1395 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3953, 2785, 2786, 2784}, - {1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 534: 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 568: 1068, 1068, 572: 1068, 584: 1068, 587: 1068, 593: 1068, 1068, 597: 1068, 645: 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 656: 1068, 1068, 1068, 661: 1068, 663: 1068, 668: 1068, 672: 1068, 1068, 1068, 1068, 1068, 1068, 680: 1068, 683: 1068, 690: 1068, 1068, 693: 1068, 708: 1068}, - {849, 849, 50: 849, 475: 849, 477: 849, 483: 849, 849, 493: 849, 849, 499: 849}, - {271: 3956}, - {847, 847, 50: 847, 475: 847, 477: 847, 483: 847, 847, 493: 847, 847, 499: 847}, + {873, 873, 73: 873, 485: 873, 488: 873, 494: 873, 873, 503: 873, 873, 510: 4013, 904: 4012}, + {298: 3993, 667: 3992}, + {557: 3989}, + {298: 3990}, + {224: 3991}, // 1400 - {853, 853, 50: 853, 143: 3960, 155: 3958, 178: 3959, 475: 853, 477: 853, 483: 853, 853, 493: 853, 853, 499: 853}, - {851, 851, 50: 851, 475: 851, 477: 851, 483: 851, 851, 493: 851, 851, 499: 851}, - {511: 2759, 737: 3962}, - {271: 3961}, - {848, 848, 50: 848, 475: 848, 477: 848, 483: 848, 848, 493: 848, 848, 499: 848}, + {859, 859, 73: 859, 485: 859, 488: 859, 494: 859, 859, 503: 859, 859, 510: 859}, + {858, 858, 73: 858, 150: 858, 162: 858, 185: 858, 485: 858, 488: 858, 494: 858, 858, 503: 858, 858, 510: 858, 1104: 3995, 4006}, + {858, 858, 73: 858, 150: 858, 162: 858, 485: 858, 488: 858, 494: 858, 858, 503: 858, 858, 510: 858, 1104: 3995, 3994}, + {865, 865, 73: 865, 150: 4004, 162: 4003, 485: 865, 488: 865, 494: 865, 865, 503: 865, 865, 510: 865}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 3998}, // 1405 - {850, 850, 50: 850, 475: 850, 477: 850, 483: 850, 850, 493: 850, 850, 499: 850}, - {1014, 1014, 50: 1014, 475: 1014, 477: 1014, 483: 1014, 1014, 493: 1014, 1014}, - {1282: 3965}, - {478: 3966}, - {108, 108, 50: 108, 103: 3970, 112: 3969, 475: 108, 477: 108, 483: 108, 108, 493: 108, 108, 661: 108, 839: 3968, 1053: 3967}, + {1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 544: 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 578: 1082, 1082, 581: 1082, 594: 1082, 597: 1082, 604: 1082, 1082, 607: 1082, 655: 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 4001, 1082, 1082, 1082, 671: 1082, 673: 1082, 1082, 682: 1082, 1082, 1082, 1082, 1082, 1082, 690: 1082, 693: 1082, 700: 1082, 1082, 703: 1082, 718: 1082}, + {1080, 1080, 9: 1080, 73: 1080, 150: 1080, 162: 1080, 185: 1080, 485: 1080, 488: 1080, 494: 1080, 1080, 503: 1080, 1080, 510: 1080, 514: 1080, 663: 1080, 683: 1080, 685: 1080}, + {857, 857, 9: 3999, 73: 857, 150: 857, 162: 857, 185: 857, 485: 857, 488: 857, 494: 857, 857, 503: 857, 857, 510: 857}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4000}, + {1079, 1079, 9: 1079, 73: 1079, 150: 1079, 162: 1079, 175: 1079, 185: 1079, 485: 1079, 488: 1079, 494: 1079, 1079, 503: 1079, 1079, 510: 1079, 514: 1079, 663: 1079, 1079, 683: 1079, 685: 1079, 690: 1079}, // 1410 - {95, 95, 50: 95, 475: 95, 477: 95, 483: 95, 95, 493: 95, 95, 661: 3991, 949: 3990}, - {787: 3973, 793: 3975, 798: 3976, 3974, 1052: 3972, 1222: 3971}, - {106, 106, 17: 106, 51: 106, 53: 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 475: 106, 106, 503: 106, 547: 106, 656: 106, 787: 106, 793: 106, 798: 106, 106}, - {105, 105, 17: 105, 51: 105, 53: 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 475: 105, 105, 503: 105, 547: 105, 656: 105, 787: 105, 793: 105, 798: 105, 105}, - {107, 107, 50: 107, 475: 107, 107, 107, 483: 107, 107, 492: 107, 107, 107, 509: 107, 661: 107, 787: 3973, 793: 3975, 798: 3976, 3974, 1052: 3989}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4002, 2824, 2825, 2823}, + {1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 544: 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 578: 1081, 1081, 581: 1081, 594: 1081, 597: 1081, 604: 1081, 1081, 607: 1081, 655: 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 666: 1081, 1081, 1081, 671: 1081, 673: 1081, 1081, 682: 1081, 1081, 1081, 1081, 1081, 1081, 690: 1081, 693: 1081, 700: 1081, 1081, 703: 1081, 718: 1081}, + {862, 862, 73: 862, 485: 862, 488: 862, 494: 862, 862, 503: 862, 862, 510: 862}, + {280: 4005}, + {860, 860, 73: 860, 485: 860, 488: 860, 494: 860, 860, 503: 860, 860, 510: 860}, // 1415 - {103, 103, 50: 103, 475: 103, 103, 103, 483: 103, 103, 492: 103, 103, 103, 509: 103, 661: 103, 787: 103, 793: 103, 798: 103, 103}, - {663: 3987}, - {793: 3984}, - {663: 3982}, - {663: 3977}, + {866, 866, 73: 866, 150: 4009, 162: 4007, 185: 4008, 485: 866, 488: 866, 494: 866, 866, 503: 866, 866, 510: 866}, + {864, 864, 73: 864, 485: 864, 488: 864, 494: 864, 864, 503: 864, 864, 510: 864}, + {521: 2798, 747: 4011}, + {280: 4010}, + {861, 861, 73: 861, 485: 861, 488: 861, 494: 861, 861, 503: 861, 861, 510: 861}, // 1420 - {478: 3979, 579: 3980, 583: 3981, 857: 3978}, - {99, 99, 50: 99, 475: 99, 99, 99, 483: 99, 99, 492: 99, 99, 99, 509: 99, 661: 99, 787: 99, 793: 99, 798: 99, 99}, - {98, 98, 50: 98, 475: 98, 98, 98, 483: 98, 98, 492: 98, 98, 98, 509: 98, 661: 98, 787: 98, 793: 98, 798: 98, 98}, - {97, 97, 50: 97, 475: 97, 97, 97, 483: 97, 97, 492: 97, 97, 97, 509: 97, 661: 97, 787: 97, 793: 97, 798: 97, 97}, - {96, 96, 50: 96, 475: 96, 96, 96, 483: 96, 96, 492: 96, 96, 96, 509: 96, 661: 96, 787: 96, 793: 96, 798: 96, 96}, + {863, 863, 73: 863, 485: 863, 488: 863, 494: 863, 863, 503: 863, 863, 510: 863}, + {1027, 1027, 73: 1027, 485: 1027, 488: 1027, 494: 1027, 1027, 503: 1027, 1027}, + {1295: 4014}, + {487: 4015}, + {113, 113, 73: 113, 105: 4019, 128: 4018, 485: 113, 488: 113, 494: 113, 113, 503: 113, 113, 671: 113, 849: 4017, 1065: 4016}, // 1425 - {478: 3979, 579: 3980, 583: 3981, 857: 3983}, - {100, 100, 50: 100, 475: 100, 100, 100, 483: 100, 100, 492: 100, 100, 100, 509: 100, 661: 100, 787: 100, 793: 100, 798: 100, 100}, - {663: 3985}, - {478: 3979, 579: 3980, 583: 3981, 857: 3986}, - {101, 101, 50: 101, 475: 101, 101, 101, 483: 101, 101, 492: 101, 101, 101, 509: 101, 661: 101, 787: 101, 793: 101, 798: 101, 101}, + {100, 100, 73: 100, 485: 100, 488: 100, 494: 100, 100, 503: 100, 100, 671: 4040, 960: 4039}, + {798: 4022, 803: 4024, 809: 4025, 4023, 1064: 4021, 1235: 4020}, + {111, 111, 17: 111, 52: 111, 54: 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 74: 111, 485: 111, 111, 514: 111, 557: 111, 666: 111, 798: 111, 803: 111, 809: 111, 111}, + {110, 110, 17: 110, 52: 110, 54: 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 74: 110, 485: 110, 110, 514: 110, 557: 110, 666: 110, 798: 110, 803: 110, 809: 110, 110}, + {112, 112, 73: 112, 485: 112, 112, 488: 112, 494: 112, 112, 502: 112, 112, 112, 519: 112, 671: 112, 798: 4022, 803: 4024, 809: 4025, 4023, 1064: 4038}, // 1430 - {478: 3979, 579: 3980, 583: 3981, 857: 3988}, - {102, 102, 50: 102, 475: 102, 102, 102, 483: 102, 102, 492: 102, 102, 102, 509: 102, 661: 102, 787: 102, 793: 102, 798: 102, 102}, - {104, 104, 50: 104, 475: 104, 104, 104, 483: 104, 104, 492: 104, 104, 104, 509: 104, 661: 104, 787: 104, 793: 104, 798: 104, 104}, - {859, 859, 50: 859, 475: 859, 477: 859, 483: 859, 859, 493: 859, 859}, - {93, 93, 50: 93, 475: 93, 93, 93, 483: 93, 93, 492: 93, 93, 93, 509: 93, 787: 93, 1316: 3992, 3993}, + {108, 108, 73: 108, 485: 108, 108, 488: 108, 494: 108, 108, 502: 108, 108, 108, 519: 108, 671: 108, 798: 108, 803: 108, 809: 108, 108}, + {673: 4036}, + {803: 4033}, + {673: 4031}, + {673: 4026}, // 1435 - {91, 91, 50: 91, 475: 91, 91, 91, 483: 91, 91, 492: 91, 91, 91, 509: 91, 787: 3997, 1253: 3996}, - {663: 3994}, - {478: 3979, 579: 3980, 583: 3981, 857: 3995}, - {92, 92, 50: 92, 475: 92, 92, 92, 483: 92, 92, 492: 92, 92, 92, 509: 92, 787: 92}, - {94, 94, 50: 94, 475: 94, 94, 94, 483: 94, 94, 492: 94, 94, 94, 509: 94}, + {487: 4028, 589: 4029, 591: 4030, 867: 4027}, + {104, 104, 73: 104, 485: 104, 104, 488: 104, 494: 104, 104, 502: 104, 104, 104, 519: 104, 671: 104, 798: 104, 803: 104, 809: 104, 104}, + {103, 103, 73: 103, 485: 103, 103, 488: 103, 494: 103, 103, 502: 103, 103, 103, 519: 103, 671: 103, 798: 103, 803: 103, 809: 103, 103}, + {102, 102, 73: 102, 485: 102, 102, 488: 102, 494: 102, 102, 502: 102, 102, 102, 519: 102, 671: 102, 798: 102, 803: 102, 809: 102, 102}, + {101, 101, 73: 101, 485: 101, 101, 488: 101, 494: 101, 101, 502: 101, 101, 101, 519: 101, 671: 101, 798: 101, 803: 101, 809: 101, 101}, // 1440 - {663: 3998}, - {478: 3979, 579: 3980, 583: 3981, 857: 3999}, - {90, 90, 50: 90, 475: 90, 90, 90, 483: 90, 90, 492: 90, 90, 90, 509: 90}, - {855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 483: 855, 855, 855, 855, 855, 855, 855, 855, 492: 855, 855, 855, 496: 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 509: 855, 855, 512: 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 534: 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 855, 568: 855, 855, 572: 855, 597: 855, 649: 855, 657: 855, 743: 855}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4002}, + {487: 4028, 589: 4029, 591: 4030, 867: 4032}, + {105, 105, 73: 105, 485: 105, 105, 488: 105, 494: 105, 105, 502: 105, 105, 105, 519: 105, 671: 105, 798: 105, 803: 105, 809: 105, 105}, + {673: 4034}, + {487: 4028, 589: 4029, 591: 4030, 867: 4035}, + {106, 106, 73: 106, 485: 106, 106, 488: 106, 494: 106, 106, 502: 106, 106, 106, 519: 106, 671: 106, 798: 106, 803: 106, 809: 106, 106}, // 1445 - {9: 1939, 50: 4003, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 477: 1272, 1272, 1272, 1272, 1272, 483: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 492: 1272, 1272, 1272, 496: 1272, 1272, 499: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 509: 1272, 1272, 512: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 534: 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 1272, 568: 1272, 1272, 597: 1272}, - {1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 477: 1273, 1273, 1273, 1273, 1273, 483: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 492: 1273, 1273, 1273, 496: 1273, 1273, 499: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 509: 1273, 1273, 512: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 534: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 568: 1273, 1273, 597: 1273}, - {1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 477: 1275, 1275, 1275, 1275, 1275, 483: 1275, 1275, 1275, 1275, 3376, 1275, 1275, 1275, 492: 1275, 1275, 1275, 496: 1275, 1275, 499: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 509: 1275, 1275, 512: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 534: 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 1275, 568: 1275, 1275, 597: 1275}, - {1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 477: 1277, 1277, 1277, 1277, 1277, 483: 1277, 1277, 1277, 1277, 3376, 1277, 1277, 1277, 492: 1277, 1277, 1277, 496: 1277, 1277, 499: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 509: 1277, 1277, 512: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 534: 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 568: 1277, 1277, 597: 1277}, + {487: 4028, 589: 4029, 591: 4030, 867: 4037}, + {107, 107, 73: 107, 485: 107, 107, 488: 107, 494: 107, 107, 502: 107, 107, 107, 519: 107, 671: 107, 798: 107, 803: 107, 809: 107, 107}, + {109, 109, 73: 109, 485: 109, 109, 488: 109, 494: 109, 109, 502: 109, 109, 109, 519: 109, 671: 109, 798: 109, 803: 109, 809: 109, 109}, + {872, 872, 73: 872, 485: 872, 488: 872, 494: 872, 872, 503: 872, 872}, + {98, 98, 73: 98, 485: 98, 98, 488: 98, 494: 98, 98, 502: 98, 98, 98, 519: 98, 798: 98, 1329: 4041, 4042}, // 1450 - {1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 477: 1278, 1278, 1278, 1278, 1278, 483: 1278, 1278, 1278, 1278, 3376, 1278, 1278, 1278, 492: 1278, 1278, 1278, 496: 1278, 1278, 499: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 509: 1278, 1278, 512: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 534: 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 1278, 568: 1278, 1278, 597: 1278}, - {1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 477: 1279, 1279, 1279, 1279, 1279, 483: 1279, 1279, 1279, 1279, 3376, 1279, 1279, 1279, 492: 1279, 1279, 1279, 496: 1279, 1279, 499: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 509: 1279, 1279, 512: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 534: 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1279, 568: 1279, 1279, 597: 1279}, - {1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 477: 1280, 1280, 1280, 1280, 1280, 483: 1280, 1280, 1280, 1280, 3376, 1280, 1280, 1280, 492: 1280, 1280, 1280, 496: 1280, 1280, 499: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 509: 1280, 1280, 512: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 534: 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 1280, 568: 1280, 1280, 597: 1280}, - {478: 4013}, - {478: 4012}, + {96, 96, 73: 96, 485: 96, 96, 488: 96, 494: 96, 96, 502: 96, 96, 96, 519: 96, 798: 4046, 1266: 4045}, + {673: 4043}, + {487: 4028, 589: 4029, 591: 4030, 867: 4044}, + {97, 97, 73: 97, 485: 97, 97, 488: 97, 494: 97, 97, 502: 97, 97, 97, 519: 97, 798: 97}, + {99, 99, 73: 99, 485: 99, 99, 488: 99, 494: 99, 99, 502: 99, 99, 99, 519: 99}, // 1455 - {1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 477: 1260, 1260, 1260, 1260, 1260, 483: 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 492: 1260, 1260, 1260, 496: 1260, 1260, 499: 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 509: 1260, 1260, 512: 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 534: 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 1260, 568: 1260, 1260, 597: 1260}, - {1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 477: 1261, 1261, 1261, 1261, 1261, 483: 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 492: 1261, 1261, 1261, 496: 1261, 1261, 499: 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 509: 1261, 1261, 512: 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 534: 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 568: 1261, 1261, 597: 1261}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4015, 2785, 2786, 2784}, - {1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 4016, 1292, 1292, 1292, 1292, 1292, 483: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 492: 1292, 1292, 1292, 496: 1292, 1292, 499: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 509: 1292, 1292, 512: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 534: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 568: 1292, 1292, 597: 1292, 655: 3811, 659: 1292, 1292}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 4017}, + {673: 4047}, + {487: 4028, 589: 4029, 591: 4030, 867: 4048}, + {95, 95, 73: 95, 485: 95, 95, 488: 95, 494: 95, 95, 502: 95, 95, 95, 519: 95}, + {868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 491: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 502: 868, 868, 868, 506: 868, 868, 509: 868, 868, 868, 868, 868, 868, 868, 868, 518: 868, 868, 868, 522: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 544: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 578: 868, 868, 581: 868, 607: 868, 658: 868, 667: 868, 753: 868}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4051}, // 1460 - {50: 4018}, - {1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 477: 1127, 1127, 1127, 1127, 1127, 483: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 492: 1127, 1127, 1127, 496: 1127, 1127, 499: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 509: 1127, 1127, 512: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 534: 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 568: 1127, 1127, 597: 1127}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 4020}, - {488: 3733}, - {1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 477: 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 499: 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 509: 1331, 1331, 512: 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 534: 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 568: 1331, 1331, 584: 1331, 593: 1331, 1331, 597: 1331, 645: 1331, 1331, 1331, 1331}, + {9: 1962, 73: 4052, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 487: 1285, 1285, 1285, 491: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 502: 1285, 1285, 1285, 506: 1285, 1285, 510: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 518: 1285, 1285, 1285, 522: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 544: 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 578: 1285, 1285, 607: 1285}, + {1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 487: 1286, 1286, 1286, 491: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 502: 1286, 1286, 1286, 506: 1286, 1286, 510: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 518: 1286, 1286, 1286, 522: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 544: 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 1286, 578: 1286, 1286, 607: 1286}, + {1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 487: 1288, 1288, 1288, 491: 1288, 1288, 3425, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 502: 1288, 1288, 1288, 506: 1288, 1288, 510: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 518: 1288, 1288, 1288, 522: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 544: 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 1288, 578: 1288, 1288, 607: 1288}, + {1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 487: 1290, 1290, 1290, 491: 1290, 1290, 3425, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 502: 1290, 1290, 1290, 506: 1290, 1290, 510: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 518: 1290, 1290, 1290, 522: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 544: 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 1290, 578: 1290, 1290, 607: 1290}, // 1465 - {1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 477: 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 499: 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 509: 1328, 1328, 512: 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 534: 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 568: 1328, 1328, 584: 1328, 593: 1328, 1328, 597: 1328, 645: 1328, 1328, 1328, 1328}, - {1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 477: 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 499: 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 509: 1327, 1327, 512: 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 534: 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 568: 1327, 1327, 584: 1327, 593: 1327, 1327, 597: 1327, 645: 1327, 1327, 1327, 1327}, - {1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 477: 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 499: 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 509: 1325, 1325, 512: 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 534: 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 568: 1325, 1325, 584: 1325, 593: 1325, 1325, 597: 1325, 645: 1325, 1325, 1325, 1325}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 4027, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4026}, - {50: 4031, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 487: 1291, 1291, 1291, 491: 1291, 1291, 3425, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 502: 1291, 1291, 1291, 506: 1291, 1291, 510: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 518: 1291, 1291, 1291, 522: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 544: 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 1291, 578: 1291, 1291, 607: 1291}, + {1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 487: 1292, 1292, 1292, 491: 1292, 1292, 3425, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 502: 1292, 1292, 1292, 506: 1292, 1292, 510: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 518: 1292, 1292, 1292, 522: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 544: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 578: 1292, 1292, 607: 1292}, + {1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 487: 1293, 1293, 1293, 491: 1293, 1293, 3425, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 502: 1293, 1293, 1293, 506: 1293, 1293, 510: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 518: 1293, 1293, 1293, 522: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 544: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 578: 1293, 1293, 607: 1293}, + {487: 4062}, + {487: 4061}, // 1470 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4028}, - {50: 4029, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4030}, - {1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 477: 1135, 1135, 1135, 1135, 1135, 483: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 492: 1135, 1135, 1135, 496: 1135, 1135, 499: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 509: 1135, 1135, 512: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 534: 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 568: 1135, 1135, 597: 1135}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4032}, + {1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 487: 1273, 1273, 1273, 491: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 502: 1273, 1273, 1273, 506: 1273, 1273, 510: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 518: 1273, 1273, 1273, 522: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 544: 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 578: 1273, 1273, 607: 1273}, + {1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 487: 1274, 1274, 1274, 491: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 502: 1274, 1274, 1274, 506: 1274, 1274, 510: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 518: 1274, 1274, 1274, 522: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 544: 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 578: 1274, 1274, 607: 1274}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4064, 2824, 2825, 2823}, + {1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 4065, 1305, 1305, 1305, 491: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 502: 1305, 1305, 1305, 506: 1305, 1305, 510: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 518: 1305, 1305, 1305, 522: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 544: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 578: 1305, 1305, 607: 1305, 665: 3860, 669: 1305, 1305}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 4066}, // 1475 - {1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 477: 1136, 1136, 1136, 1136, 1136, 483: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 492: 1136, 1136, 1136, 496: 1136, 1136, 499: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 509: 1136, 1136, 512: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 534: 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 568: 1136, 1136, 597: 1136}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 4035, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4034}, - {9: 4045, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4036}, - {9: 4037, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {73: 4067}, + {1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 487: 1140, 1140, 1140, 491: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 502: 1140, 1140, 1140, 506: 1140, 1140, 510: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 518: 1140, 1140, 1140, 522: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 544: 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 578: 1140, 1140, 607: 1140}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 4069}, + {498: 3782}, + {1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 487: 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 510: 1344, 1344, 1344, 1344, 1344, 1344, 1344, 518: 1344, 1344, 1344, 522: 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 544: 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 578: 1344, 1344, 594: 1344, 604: 1344, 1344, 607: 1344, 655: 1344, 1344, 1344, 659: 1344}, // 1480 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 4039, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4038}, - {50: 4043, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4040}, - {50: 4041, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4042}, + {1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 487: 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 510: 1341, 1341, 1341, 1341, 1341, 1341, 1341, 518: 1341, 1341, 1341, 522: 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 544: 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 1341, 578: 1341, 1341, 594: 1341, 604: 1341, 1341, 607: 1341, 655: 1341, 1341, 1341, 659: 1341}, + {1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 487: 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 510: 1340, 1340, 1340, 1340, 1340, 1340, 1340, 518: 1340, 1340, 1340, 522: 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 544: 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 578: 1340, 1340, 594: 1340, 604: 1340, 1340, 607: 1340, 655: 1340, 1340, 1340, 659: 1340}, + {1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 487: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 510: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 518: 1338, 1338, 1338, 522: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 544: 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1338, 578: 1338, 1338, 594: 1338, 604: 1338, 1338, 607: 1338, 655: 1338, 1338, 1338, 659: 1338}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 4076, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4075}, + {73: 4080, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1485 - {1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 477: 1131, 1131, 1131, 1131, 1131, 483: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 492: 1131, 1131, 1131, 496: 1131, 1131, 499: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 509: 1131, 1131, 512: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 534: 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 568: 1131, 1131, 597: 1131}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4044}, - {1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 477: 1133, 1133, 1133, 1133, 1133, 483: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 492: 1133, 1133, 1133, 496: 1133, 1133, 499: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 509: 1133, 1133, 512: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 534: 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 568: 1133, 1133, 597: 1133}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 654: 4047, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4046}, - {50: 4051, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4077}, + {73: 4078, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4079}, + {1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 487: 1148, 1148, 1148, 491: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 502: 1148, 1148, 1148, 506: 1148, 1148, 510: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 518: 1148, 1148, 1148, 522: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 544: 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 578: 1148, 1148, 607: 1148}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4081}, // 1490 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4048}, - {50: 4049, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4050}, - {1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 477: 1132, 1132, 1132, 1132, 1132, 483: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 492: 1132, 1132, 1132, 496: 1132, 1132, 499: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 509: 1132, 1132, 512: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 534: 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 568: 1132, 1132, 597: 1132}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4052}, + {1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 487: 1149, 1149, 1149, 491: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 502: 1149, 1149, 1149, 506: 1149, 1149, 510: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 518: 1149, 1149, 1149, 522: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 544: 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 578: 1149, 1149, 607: 1149}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 4084, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4083}, + {9: 4094, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4085}, + {9: 4086, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1495 - {1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 477: 1134, 1134, 1134, 1134, 1134, 483: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 492: 1134, 1134, 1134, 496: 1134, 1134, 499: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 509: 1134, 1134, 512: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 534: 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 568: 1134, 1134, 597: 1134}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 800: 4054}, - {9: 4055}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4056}, - {9: 4057, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 4088, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4087}, + {73: 4092, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4089}, + {73: 4090, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4091}, // 1500 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4058}, - {50: 4059, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 477: 1181, 1181, 1181, 1181, 1181, 483: 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 492: 1181, 1181, 1181, 496: 1181, 1181, 499: 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 509: 1181, 1181, 512: 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 534: 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 568: 1181, 1181, 597: 1181}, - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 800: 4061}, - {9: 4062}, + {1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 487: 1144, 1144, 1144, 491: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 502: 1144, 1144, 1144, 506: 1144, 1144, 510: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 518: 1144, 1144, 1144, 522: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 544: 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 578: 1144, 1144, 607: 1144}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4093}, + {1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 487: 1146, 1146, 1146, 491: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 502: 1146, 1146, 1146, 506: 1146, 1146, 510: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 518: 1146, 1146, 1146, 522: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 544: 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 578: 1146, 1146, 607: 1146}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 664: 4096, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4095}, + {73: 4100, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1505 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4063}, - {9: 4064, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4065}, - {50: 4066, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 477: 1182, 1182, 1182, 1182, 1182, 483: 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 492: 1182, 1182, 1182, 496: 1182, 1182, 499: 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 509: 1182, 1182, 512: 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 534: 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 568: 1182, 1182, 597: 1182}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4097}, + {73: 4098, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4099}, + {1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 487: 1145, 1145, 1145, 491: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 502: 1145, 1145, 1145, 506: 1145, 1145, 510: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 518: 1145, 1145, 1145, 522: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 544: 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 578: 1145, 1145, 607: 1145}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4101}, // 1510 - {180: 4070, 4069, 202: 4071, 226: 4072, 1232: 4068}, - {9: 4073}, - {9: 1171}, - {9: 1170}, - {9: 1169}, + {1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 487: 1147, 1147, 1147, 491: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 502: 1147, 1147, 1147, 506: 1147, 1147, 510: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 518: 1147, 1147, 1147, 522: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 544: 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 578: 1147, 1147, 607: 1147}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 805: 4103}, + {9: 4104}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4105}, + {9: 4106, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1515 - {9: 1168}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4074}, - {50: 4075, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 477: 1188, 1188, 1188, 1188, 1188, 483: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 492: 1188, 1188, 1188, 496: 1188, 1188, 499: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 509: 1188, 1188, 512: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 534: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 568: 1188, 1188, 597: 1188}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4077}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4107}, + {73: 4108, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 487: 1194, 1194, 1194, 491: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 502: 1194, 1194, 1194, 506: 1194, 1194, 510: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 518: 1194, 1194, 1194, 522: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 544: 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 578: 1194, 1194, 607: 1194}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 805: 4110}, + {9: 4111}, // 1520 - {9: 4078}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 4080}, - {1991, 1991, 6: 1991, 1991, 1991, 1991, 15: 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 73: 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 106: 1991, 132: 1991, 1991, 1991, 1991, 482: 1991, 1991, 487: 1991, 496: 1991, 501: 1991, 504: 1991, 506: 1991, 508: 1991, 650: 1991, 652: 1991, 658: 1991}, - {50: 4086}, - {31, 31, 6: 31, 31, 31, 15: 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 50: 31, 73: 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 482: 31, 31, 487: 31, 506: 31, 508: 31, 650: 31, 652: 31, 658: 31}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4112}, + {9: 4113, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4114}, + {73: 4115, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 487: 1195, 1195, 1195, 491: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 502: 1195, 1195, 1195, 506: 1195, 1195, 510: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 518: 1195, 1195, 1195, 522: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 544: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 578: 1195, 1195, 607: 1195}, // 1525 - {511: 2759, 737: 4079, 767: 4085}, - {511: 2759, 737: 4084}, - {29, 29, 6: 29, 29, 29, 15: 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 50: 29, 73: 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 482: 29, 29, 487: 29, 506: 29, 508: 29, 650: 29, 652: 29, 658: 29}, - {30, 30, 6: 30, 30, 30, 15: 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 50: 30, 73: 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 482: 30, 30, 487: 30, 506: 30, 508: 30, 650: 30, 652: 30, 658: 30}, - {1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 477: 1159, 1159, 1159, 1159, 1159, 483: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 492: 1159, 1159, 1159, 496: 1159, 1159, 499: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 509: 1159, 1159, 512: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 534: 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 568: 1159, 1159, 597: 1159}, + {187: 4119, 4118, 210: 4120, 234: 4121, 1245: 4117}, + {9: 4122}, + {9: 1184}, + {9: 1183}, + {9: 1182}, // 1530 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4088}, - {50: 4089}, - {1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 477: 1160, 1160, 1160, 1160, 1160, 483: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 492: 1160, 1160, 1160, 496: 1160, 1160, 499: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 509: 1160, 1160, 512: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 534: 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 568: 1160, 1160, 597: 1160}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4091}, - {50: 4092, 481: 4093, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, + {9: 1181}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4123}, + {73: 4124, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 487: 1201, 1201, 1201, 491: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 502: 1201, 1201, 1201, 506: 1201, 1201, 510: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 518: 1201, 1201, 1201, 522: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 544: 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 578: 1201, 1201, 607: 1201}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4126}, // 1535 - {1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 477: 1176, 1176, 1176, 1176, 1176, 483: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 492: 1176, 1176, 1176, 496: 1176, 1176, 499: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 509: 1176, 1176, 512: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 534: 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 568: 1176, 1176, 597: 1176}, - {508: 3837, 533: 4095, 650: 3836, 906: 4094}, - {476: 3852, 768: 4098}, - {476: 3852, 768: 4096}, - {50: 4097}, + {9: 4127}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 4129}, + {2014, 2014, 6: 2014, 2014, 2014, 2014, 15: 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 73: 2014, 75: 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 107: 2014, 139: 2014, 2014, 2014, 2014, 490: 2014, 493: 2014, 2014, 506: 2014, 508: 2014, 513: 2014, 515: 2014, 518: 2014, 660: 2014, 2014, 668: 2014}, + {73: 4135}, + {32, 32, 6: 32, 32, 32, 15: 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 73: 32, 75: 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 490: 32, 493: 32, 32, 508: 32, 518: 32, 660: 32, 32, 668: 32}, // 1540 - {1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 477: 1174, 1174, 1174, 1174, 1174, 483: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 492: 1174, 1174, 1174, 496: 1174, 1174, 499: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 509: 1174, 1174, 512: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 534: 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 568: 1174, 1174, 597: 1174}, - {50: 4099}, - {1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 477: 1175, 1175, 1175, 1175, 1175, 483: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 492: 1175, 1175, 1175, 496: 1175, 1175, 499: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 509: 1175, 1175, 512: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 534: 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 568: 1175, 1175, 597: 1175}, - {1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 477: 1198, 1198, 1198, 1198, 1198, 483: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 492: 1198, 1198, 1198, 496: 1198, 1198, 499: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 509: 1198, 1198, 512: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 534: 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 568: 1198, 1198, 597: 1198}, - {1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 477: 1199, 1199, 1199, 1199, 1199, 483: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 492: 1199, 1199, 1199, 496: 1199, 1199, 499: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 509: 1199, 1199, 512: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 534: 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 568: 1199, 1199, 597: 1199}, + {521: 2798, 747: 4128, 777: 4134}, + {521: 2798, 747: 4133}, + {30, 30, 6: 30, 30, 30, 15: 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 73: 30, 75: 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 490: 30, 493: 30, 30, 508: 30, 518: 30, 660: 30, 30, 668: 30}, + {31, 31, 6: 31, 31, 31, 15: 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 73: 31, 75: 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 490: 31, 493: 31, 31, 508: 31, 518: 31, 660: 31, 31, 668: 31}, + {1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 487: 1172, 1172, 1172, 491: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 502: 1172, 1172, 1172, 506: 1172, 1172, 510: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 518: 1172, 1172, 1172, 522: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 544: 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 578: 1172, 1172, 607: 1172}, // 1545 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 4103}, - {50: 4104}, - {1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 477: 1195, 1195, 1195, 1195, 1195, 483: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 492: 1195, 1195, 1195, 496: 1195, 1195, 499: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 509: 1195, 1195, 512: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 534: 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 568: 1195, 1195, 597: 1195}, - {1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 477: 1200, 1200, 1200, 1200, 1200, 483: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 492: 1200, 1200, 1200, 496: 1200, 1200, 499: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 509: 1200, 1200, 512: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 534: 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 568: 1200, 1200, 597: 1200}, - {2: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 10: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 51: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 476: 1255, 478: 1255, 1255, 1255, 482: 1255, 485: 1255, 1255, 488: 1255, 1255, 1255, 495: 1255, 498: 1255, 507: 1255, 1255, 511: 1255, 533: 1255, 567: 1255, 570: 1255, 1255, 573: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 585: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 595: 1255, 1255, 598: 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 651: 1255, 654: 3572, 749: 3570, 3571, 789: 3573, 792: 3574, 821: 4107, 3575}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4137}, + {73: 4138}, + {1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 487: 1173, 1173, 1173, 491: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 502: 1173, 1173, 1173, 506: 1173, 1173, 510: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 518: 1173, 1173, 1173, 522: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 544: 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 578: 1173, 1173, 607: 1173}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4140}, + {73: 4141, 492: 4142, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 1550 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4108}, - {50: 4109, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 477: 973, 973, 973, 973, 973, 483: 973, 973, 973, 973, 973, 973, 973, 973, 492: 973, 973, 973, 496: 973, 973, 499: 973, 973, 973, 973, 973, 973, 973, 973, 509: 973, 973, 512: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 534: 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 973, 568: 973, 973, 597: 973, 746: 3388, 751: 3580, 769: 4110}, - {1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 477: 1157, 1157, 1157, 1157, 1157, 483: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 492: 1157, 1157, 1157, 496: 1157, 1157, 499: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 509: 1157, 1157, 512: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 534: 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 568: 1157, 1157, 597: 1157}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 4112}, + {1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 487: 1189, 1189, 1189, 491: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 502: 1189, 1189, 1189, 506: 1189, 1189, 510: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 518: 1189, 1189, 1189, 522: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 544: 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 578: 1189, 1189, 607: 1189}, + {508: 3886, 543: 4144, 660: 3885, 917: 4143}, + {486: 3901, 778: 4147}, + {486: 3901, 778: 4145}, + {73: 4146}, // 1555 - {50: 4113}, - {1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 477: 1128, 1128, 1128, 1128, 1128, 483: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 492: 1128, 1128, 1128, 496: 1128, 1128, 499: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 509: 1128, 1128, 512: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 534: 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 568: 1128, 1128, 597: 1128}, - {152: 2331, 177: 2331, 196: 2331, 495: 2331, 521: 2331, 547: 2331, 566: 2331, 568: 2331, 2331, 574: 2331, 2331, 586: 2331}, - {152: 2330, 177: 2330, 196: 2330, 495: 2330, 521: 2330, 547: 2330, 566: 2330, 568: 2330, 2330, 574: 2330, 2330, 586: 2330}, - {2: 1918, 1918, 1918, 1918, 1918, 1918, 1918, 10: 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 51: 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 476: 1918, 478: 1918, 1918, 482: 1918, 485: 1918, 1918, 488: 1918, 1918, 1918, 495: 1918, 498: 1918, 507: 1918, 1918, 511: 1918, 533: 1918, 567: 1918, 570: 1918, 1918, 573: 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 585: 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 595: 1918, 1918, 598: 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918, 1918}, + {1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 487: 1187, 1187, 1187, 491: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 502: 1187, 1187, 1187, 506: 1187, 1187, 510: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 518: 1187, 1187, 1187, 522: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 544: 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 578: 1187, 1187, 607: 1187}, + {73: 4148}, + {1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 487: 1188, 1188, 1188, 491: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 502: 1188, 1188, 1188, 506: 1188, 1188, 510: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 518: 1188, 1188, 1188, 522: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 544: 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 578: 1188, 1188, 607: 1188}, + {1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 487: 1211, 1211, 1211, 491: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 502: 1211, 1211, 1211, 506: 1211, 1211, 510: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 518: 1211, 1211, 1211, 522: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 544: 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 578: 1211, 1211, 607: 1211}, + {1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 487: 1212, 1212, 1212, 491: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 502: 1212, 1212, 1212, 506: 1212, 1212, 510: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 518: 1212, 1212, 1212, 522: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 544: 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 578: 1212, 1212, 607: 1212}, // 1560 - {521: 4141, 547: 4140, 566: 4139, 568: 4125, 4126, 1120: 4142}, - {476: 1914}, - {2: 1912, 1912, 1912, 1912, 1912, 1912, 1912, 10: 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 51: 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 476: 1912, 478: 1912, 1912, 482: 1912, 485: 1912, 1912, 488: 1912, 1912, 1912, 495: 1912, 498: 1912, 507: 1912, 1912, 511: 1912, 533: 1912, 567: 1912, 570: 1912, 1912, 573: 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 585: 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 595: 1912, 1912, 598: 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912, 1912}, - {2: 1910, 1910, 1910, 1910, 1910, 1910, 1910, 10: 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 51: 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 476: 1910, 478: 1910, 1910, 482: 1910, 485: 1910, 1910, 488: 1910, 1910, 1910, 495: 1910, 498: 1910, 507: 1910, 1910, 511: 1910, 533: 1910, 567: 1910, 570: 1910, 1910, 573: 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 585: 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 595: 1910, 1910, 598: 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910, 1910}, - {476: 4135, 713: 4136}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 4152}, + {73: 4153}, + {1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 487: 1208, 1208, 1208, 491: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 502: 1208, 1208, 1208, 506: 1208, 1208, 510: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 518: 1208, 1208, 1208, 522: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 544: 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 578: 1208, 1208, 607: 1208}, + {1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 487: 1213, 1213, 1213, 491: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 502: 1213, 1213, 1213, 506: 1213, 1213, 510: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 518: 1213, 1213, 1213, 522: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 544: 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 578: 1213, 1213, 607: 1213}, + {2: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 10: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 74: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 486: 1268, 1268, 489: 1268, 1268, 1268, 496: 1268, 1268, 1268, 1268, 1268, 505: 1268, 508: 1268, 1268, 517: 1268, 521: 1268, 543: 1268, 577: 1268, 580: 1268, 582: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 595: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 606: 1268, 608: 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 662: 1268, 664: 3621, 759: 3619, 3620, 800: 3622, 802: 3623, 831: 4156, 3624}, // 1565 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4132}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4128, 3279, 3360, 3278, 3275}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 4127, 3279, 3360, 3278, 3275}, - {2: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 10: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 51: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 476: 1899, 478: 1899, 1899, 482: 1899, 485: 1899, 1899, 488: 1899, 1899, 1899, 495: 1899, 498: 1899, 507: 1899, 1899, 511: 1899, 533: 1899, 567: 1899, 570: 1899, 1899, 573: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 585: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 595: 1899, 1899, 598: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899}, - {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 51: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 476: 1898, 478: 1898, 1898, 482: 1898, 485: 1898, 1898, 488: 1898, 1898, 1898, 495: 1898, 498: 1898, 507: 1898, 1898, 511: 1898, 533: 1898, 567: 1898, 570: 1898, 1898, 573: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 585: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 595: 1898, 1898, 598: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4157}, + {73: 4158, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 487: 986, 986, 986, 491: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 502: 986, 986, 986, 506: 986, 986, 510: 986, 986, 986, 986, 986, 986, 986, 518: 986, 986, 986, 522: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 544: 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 986, 578: 986, 986, 607: 986, 756: 3437, 761: 3629, 779: 4159}, + {1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 487: 1170, 1170, 1170, 491: 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 502: 1170, 1170, 1170, 506: 1170, 1170, 510: 1170, 1170, 1170, 1170, 1170, 1170, 1170, 518: 1170, 1170, 1170, 522: 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 544: 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 578: 1170, 1170, 607: 1170}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 4161}, // 1570 - {1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 477: 1901, 1901, 481: 1901, 483: 1901, 1901, 1901, 1901, 3376, 492: 1901, 1901, 1901, 496: 1901, 1901, 499: 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 509: 1901, 1901, 512: 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 522: 1901, 524: 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 534: 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 548: 1901, 1901, 558: 1901, 1901, 1901, 1901, 1901, 1901, 1901, 1901, 597: 3377}, - {1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 4130, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 477: 1897, 1897, 481: 1897, 483: 1897, 1897, 1897, 1897, 3376, 492: 1897, 1897, 1897, 496: 1897, 1897, 499: 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 509: 1897, 1897, 512: 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 522: 1897, 524: 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 534: 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 548: 1897, 1897, 558: 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 597: 3377, 1250: 4129}, - {1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 477: 1902, 1902, 481: 1902, 483: 1902, 1902, 1902, 1902, 492: 1902, 1902, 1902, 496: 1902, 1902, 499: 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 509: 1902, 1902, 512: 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 522: 1902, 524: 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 534: 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902, 548: 1902, 1902, 558: 1902, 1902, 1902, 1902, 1902, 1902, 1902, 1902}, - {478: 4131}, - {1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 477: 1896, 1896, 481: 1896, 483: 1896, 1896, 1896, 1896, 492: 1896, 1896, 1896, 496: 1896, 1896, 499: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 509: 1896, 1896, 512: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 522: 1896, 524: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 534: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 548: 1896, 1896, 558: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896}, + {73: 4162}, + {1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 487: 1141, 1141, 1141, 491: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 502: 1141, 1141, 1141, 506: 1141, 1141, 510: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 518: 1141, 1141, 1141, 522: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 544: 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 578: 1141, 1141, 607: 1141}, + {159: 2356, 184: 2356, 204: 2356, 505: 2356, 531: 2356, 557: 2356, 576: 2356, 578: 2356, 2356, 584: 2356, 2356, 596: 2356}, + {159: 2355, 184: 2355, 204: 2355, 505: 2355, 531: 2355, 557: 2355, 576: 2355, 578: 2355, 2355, 584: 2355, 2355, 596: 2355}, + {2: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 10: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 74: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 486: 1941, 1941, 489: 1941, 1941, 496: 1941, 1941, 1941, 1941, 1941, 505: 1941, 508: 1941, 1941, 517: 1941, 521: 1941, 543: 1941, 577: 1941, 580: 1941, 582: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 595: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 606: 1941, 608: 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941}, // 1575 - {488: 3712, 3713, 3718, 510: 4133, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 4134}, - {1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 477: 1903, 1903, 481: 1903, 483: 1903, 1903, 1903, 1903, 492: 1903, 1903, 1903, 496: 1903, 1903, 499: 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 509: 1903, 1903, 512: 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 522: 1903, 524: 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 534: 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903, 548: 1903, 1903, 558: 1903, 1903, 1903, 1903, 1903, 1903, 1903, 1903}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 2607, 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3905, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 2605, 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 649: 2601, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3904, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 752: 3907, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 3909, 3908, 782: 4137}, - {1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 477: 1904, 1904, 481: 1904, 483: 1904, 1904, 1904, 1904, 492: 1904, 1904, 1904, 496: 1904, 1904, 499: 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 509: 1904, 1904, 512: 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 522: 1904, 524: 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 534: 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904, 548: 1904, 1904, 558: 1904, 1904, 1904, 1904, 1904, 1904, 1904, 1904}, + {531: 4190, 557: 4189, 576: 4188, 578: 4174, 4175, 1132: 4191}, + {486: 1937}, + {2: 1935, 1935, 1935, 1935, 1935, 1935, 1935, 10: 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 74: 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 486: 1935, 1935, 489: 1935, 1935, 496: 1935, 1935, 1935, 1935, 1935, 505: 1935, 508: 1935, 1935, 517: 1935, 521: 1935, 543: 1935, 577: 1935, 580: 1935, 582: 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 595: 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 606: 1935, 608: 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935}, + {2: 1933, 1933, 1933, 1933, 1933, 1933, 1933, 10: 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 74: 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 486: 1933, 1933, 489: 1933, 1933, 496: 1933, 1933, 1933, 1933, 1933, 505: 1933, 508: 1933, 1933, 517: 1933, 521: 1933, 543: 1933, 577: 1933, 580: 1933, 582: 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 595: 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 606: 1933, 608: 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1933}, + {486: 4184, 723: 4185}, // 1580 - {9: 3616, 50: 4138}, - {1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 477: 1905, 1905, 481: 1905, 483: 1905, 1905, 1905, 1905, 492: 1905, 1905, 1905, 496: 1905, 1905, 499: 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 509: 1905, 1905, 512: 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 522: 1905, 524: 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 534: 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905, 548: 1905, 1905, 558: 1905, 1905, 1905, 1905, 1905, 1905, 1905, 1905}, - {2: 1917, 1917, 1917, 1917, 1917, 1917, 1917, 10: 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 51: 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 476: 1917, 478: 1917, 1917, 482: 1917, 485: 1917, 1917, 488: 1917, 1917, 1917, 495: 1917, 498: 1917, 507: 1917, 1917, 511: 1917, 533: 1917, 567: 1917, 570: 1917, 1917, 573: 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 585: 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 595: 1917, 1917, 598: 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917, 1917}, - {476: 1913}, - {2: 1911, 1911, 1911, 1911, 1911, 1911, 1911, 10: 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 51: 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 476: 1911, 478: 1911, 1911, 482: 1911, 485: 1911, 1911, 488: 1911, 1911, 1911, 495: 1911, 498: 1911, 507: 1911, 1911, 511: 1911, 533: 1911, 567: 1911, 570: 1911, 1911, 573: 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 585: 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 595: 1911, 1911, 598: 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911, 1911}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 4181}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4177, 3328, 3409, 3327, 3324}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 4176, 3328, 3409, 3327, 3324}, + {2: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 10: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 74: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 486: 1922, 1922, 489: 1922, 1922, 496: 1922, 1922, 1922, 1922, 1922, 505: 1922, 508: 1922, 1922, 517: 1922, 521: 1922, 543: 1922, 577: 1922, 580: 1922, 582: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 595: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 606: 1922, 608: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922}, + {2: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 10: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 74: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 486: 1921, 1921, 489: 1921, 1921, 496: 1921, 1921, 1921, 1921, 1921, 505: 1921, 508: 1921, 1921, 517: 1921, 521: 1921, 543: 1921, 577: 1921, 580: 1921, 582: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 595: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 606: 1921, 608: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921}, // 1585 - {2: 1909, 1909, 1909, 1909, 1909, 1909, 1909, 10: 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 51: 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 476: 1909, 478: 1909, 1909, 482: 1909, 485: 1909, 1909, 488: 1909, 1909, 1909, 495: 1909, 498: 1909, 507: 1909, 1909, 511: 1909, 533: 1909, 567: 1909, 570: 1909, 1909, 573: 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 585: 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 595: 1909, 1909, 598: 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909, 1909}, - {177: 4166, 495: 4167, 574: 4165, 4164}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 4158, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 4159, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 4157, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 654: 4160, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 4155, 1183: 4156}, - {2: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 10: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 51: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 476: 1926, 478: 1926, 1926, 482: 1926, 485: 1926, 1926, 488: 1926, 1926, 1926, 495: 1926, 498: 1926, 507: 1926, 1926, 511: 1926, 533: 1926, 567: 1926, 570: 1926, 1926, 573: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 585: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 595: 1926, 1926, 598: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 654: 1926}, - {2: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 10: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 51: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 476: 1925, 478: 1925, 1925, 482: 1925, 485: 1925, 1925, 488: 1925, 1925, 1925, 495: 1925, 498: 1925, 507: 1925, 1925, 511: 1925, 533: 1925, 567: 1925, 570: 1925, 1925, 573: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 585: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 595: 1925, 1925, 598: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 654: 1925}, + {1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 487: 1924, 1924, 492: 1924, 3425, 1924, 1924, 1924, 1924, 502: 1924, 1924, 1924, 506: 1924, 1924, 510: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 518: 1924, 1924, 1924, 522: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 532: 1924, 534: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 544: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 558: 1924, 1924, 568: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 607: 3426}, + {1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 4179, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 487: 1920, 1920, 492: 1920, 3425, 1920, 1920, 1920, 1920, 502: 1920, 1920, 1920, 506: 1920, 1920, 510: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 518: 1920, 1920, 1920, 522: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 532: 1920, 534: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 544: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 558: 1920, 1920, 568: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 607: 3426, 1263: 4178}, + {1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 487: 1925, 1925, 492: 1925, 494: 1925, 1925, 1925, 1925, 502: 1925, 1925, 1925, 506: 1925, 1925, 510: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 518: 1925, 1925, 1925, 522: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 532: 1925, 534: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 544: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 558: 1925, 1925, 568: 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925}, + {487: 4180}, + {1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 487: 1919, 1919, 492: 1919, 494: 1919, 1919, 1919, 1919, 502: 1919, 1919, 1919, 506: 1919, 1919, 510: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 518: 1919, 1919, 1919, 522: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 532: 1919, 534: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 544: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 558: 1919, 1919, 568: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919}, // 1590 - {2: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 10: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 51: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 476: 1924, 478: 1924, 1924, 482: 1924, 485: 1924, 1924, 488: 1924, 1924, 1924, 495: 1924, 498: 1924, 507: 1924, 1924, 511: 1924, 533: 1924, 567: 1924, 570: 1924, 1924, 573: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 585: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 595: 1924, 1924, 598: 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 1924, 654: 1924}, - {2: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 10: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 51: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 476: 1923, 478: 1923, 1923, 482: 1923, 485: 1923, 1923, 488: 1923, 1923, 1923, 495: 1923, 498: 1923, 507: 1923, 1923, 511: 1923, 533: 1923, 567: 1923, 570: 1923, 1923, 573: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 585: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 595: 1923, 1923, 598: 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 654: 1923}, - {2: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 10: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 51: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 476: 1922, 478: 1922, 1922, 482: 1922, 485: 1922, 1922, 488: 1922, 1922, 1922, 495: 1922, 498: 1922, 507: 1922, 1922, 511: 1922, 533: 1922, 567: 1922, 570: 1922, 1922, 573: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 585: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 595: 1922, 1922, 598: 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 1922, 654: 1922}, - {2: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 10: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 51: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 476: 1921, 478: 1921, 1921, 482: 1921, 485: 1921, 1921, 488: 1921, 1921, 1921, 495: 1921, 498: 1921, 507: 1921, 1921, 511: 1921, 533: 1921, 567: 1921, 570: 1921, 1921, 573: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 585: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 595: 1921, 1921, 598: 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 1921, 654: 1921}, - {2: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 10: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 51: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 476: 1920, 478: 1920, 1920, 482: 1920, 485: 1920, 1920, 488: 1920, 1920, 1920, 495: 1920, 498: 1920, 507: 1920, 1920, 511: 1920, 533: 1920, 567: 1920, 570: 1920, 1920, 573: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 585: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 595: 1920, 1920, 598: 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 1920, 654: 1920}, + {498: 3761, 3762, 3767, 520: 4182, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 4183}, + {1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 487: 1926, 1926, 492: 1926, 494: 1926, 1926, 1926, 1926, 502: 1926, 1926, 1926, 506: 1926, 1926, 510: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 518: 1926, 1926, 1926, 522: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 532: 1926, 534: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 544: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 558: 1926, 1926, 568: 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 2641, 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3954, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 2639, 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 658: 2635, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3953, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 762: 3956, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 3958, 3957, 793: 4186}, + {1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 487: 1927, 1927, 492: 1927, 494: 1927, 1927, 1927, 1927, 502: 1927, 1927, 1927, 506: 1927, 1927, 510: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 518: 1927, 1927, 1927, 522: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 532: 1927, 534: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 544: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 558: 1927, 1927, 568: 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927}, // 1595 - {2: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 10: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 51: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 476: 1919, 478: 1919, 1919, 482: 1919, 485: 1919, 1919, 488: 1919, 1919, 1919, 495: 1919, 498: 1919, 507: 1919, 1919, 511: 1919, 533: 1919, 567: 1919, 570: 1919, 1919, 573: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 585: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 595: 1919, 1919, 598: 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 1919, 654: 1919}, - {177: 1916, 479: 4115, 4114, 495: 1916, 574: 1916, 1916, 815: 4154}, - {177: 1915, 495: 1915, 574: 1915, 1915}, - {1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 477: 1930, 1930, 481: 1930, 483: 1930, 1930, 1930, 1930, 492: 1930, 1930, 1930, 496: 1930, 1930, 499: 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 509: 1930, 1930, 512: 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 522: 1930, 524: 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 534: 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 548: 1930, 1930, 558: 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930}, - {476: 2608, 713: 4163}, + {9: 3665, 73: 4187}, + {1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 487: 1928, 1928, 492: 1928, 494: 1928, 1928, 1928, 1928, 502: 1928, 1928, 1928, 506: 1928, 1928, 510: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 518: 1928, 1928, 1928, 522: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 532: 1928, 534: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 544: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 558: 1928, 1928, 568: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928}, + {2: 1940, 1940, 1940, 1940, 1940, 1940, 1940, 10: 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 74: 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 486: 1940, 1940, 489: 1940, 1940, 496: 1940, 1940, 1940, 1940, 1940, 505: 1940, 508: 1940, 1940, 517: 1940, 521: 1940, 543: 1940, 577: 1940, 580: 1940, 582: 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 595: 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 606: 1940, 608: 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940}, + {486: 1936}, + {2: 1934, 1934, 1934, 1934, 1934, 1934, 1934, 10: 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 74: 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 486: 1934, 1934, 489: 1934, 1934, 496: 1934, 1934, 1934, 1934, 1934, 505: 1934, 508: 1934, 1934, 517: 1934, 521: 1934, 543: 1934, 577: 1934, 580: 1934, 582: 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 595: 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 606: 1934, 608: 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934, 1934}, // 1600 - {762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 477: 762, 762, 762, 762, 762, 483: 762, 762, 762, 762, 762, 762, 762, 762, 492: 762, 762, 762, 496: 762, 762, 499: 762, 762, 762, 762, 762, 762, 762, 762, 509: 762, 762, 512: 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 534: 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 762, 568: 762, 762, 597: 762, 662: 4161}, - {1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1908, 1730, 1730, 1730, 1730, 1730, 483: 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 492: 1730, 1730, 1730, 496: 1730, 1730, 499: 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 509: 1730, 1730, 512: 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 534: 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 1730, 568: 1730, 1730, 597: 1730, 655: 1730, 659: 1730, 1730}, - {1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1907, 1729, 1729, 1729, 1729, 1729, 483: 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 492: 1729, 1729, 1729, 496: 1729, 1729, 499: 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 509: 1729, 1729, 512: 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 534: 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 1729, 568: 1729, 1729, 597: 1729, 655: 1729, 659: 1729, 1729}, - {476: 1906}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 4162}, + {2: 1932, 1932, 1932, 1932, 1932, 1932, 1932, 10: 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 74: 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 486: 1932, 1932, 489: 1932, 1932, 496: 1932, 1932, 1932, 1932, 1932, 505: 1932, 508: 1932, 1932, 517: 1932, 521: 1932, 543: 1932, 577: 1932, 580: 1932, 582: 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 595: 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 606: 1932, 608: 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932}, + {184: 4215, 505: 4216, 584: 4214, 4213}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 4207, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 4208, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 4206, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 664: 4209, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 4204, 1197: 4205}, + {2: 1949, 1949, 1949, 1949, 1949, 1949, 1949, 10: 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 74: 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 486: 1949, 1949, 489: 1949, 1949, 496: 1949, 1949, 1949, 1949, 1949, 505: 1949, 508: 1949, 1949, 517: 1949, 521: 1949, 543: 1949, 577: 1949, 580: 1949, 582: 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 595: 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 606: 1949, 608: 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 664: 1949}, + {2: 1948, 1948, 1948, 1948, 1948, 1948, 1948, 10: 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 74: 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 486: 1948, 1948, 489: 1948, 1948, 496: 1948, 1948, 1948, 1948, 1948, 505: 1948, 508: 1948, 1948, 517: 1948, 521: 1948, 543: 1948, 577: 1948, 580: 1948, 582: 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 595: 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 606: 1948, 608: 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 664: 1948}, // 1605 - {1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 477: 1928, 1928, 481: 1928, 483: 1928, 1928, 1928, 1928, 492: 1928, 1928, 1928, 496: 1928, 1928, 499: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 509: 1928, 1928, 512: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 522: 1928, 524: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 534: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 548: 1928, 1928, 558: 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1928}, - {1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 477: 1929, 1929, 481: 1929, 483: 1929, 1929, 1929, 1929, 492: 1929, 1929, 1929, 496: 1929, 1929, 499: 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 509: 1929, 1929, 512: 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 522: 1929, 524: 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 534: 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 548: 1929, 1929, 558: 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1929}, - {1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 477: 1955, 1955, 481: 1955, 483: 1955, 1955, 1955, 1955, 492: 1955, 1955, 1955, 496: 1955, 1955, 499: 1955, 1955, 1955, 503: 1955, 1955, 1955, 1955, 509: 1955, 1955, 512: 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 522: 1955, 524: 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 534: 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 548: 1955, 1955}, - {1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 477: 1954, 1954, 481: 1954, 483: 1954, 1954, 1954, 1954, 492: 1954, 1954, 1954, 496: 1954, 1954, 499: 1954, 1954, 1954, 503: 1954, 1954, 1954, 1954, 509: 1954, 1954, 512: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 522: 1954, 524: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 534: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 548: 1954, 1954}, - {1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 477: 1953, 1953, 481: 1953, 483: 1953, 1953, 1953, 1953, 492: 1953, 1953, 1953, 496: 1953, 1953, 499: 1953, 1953, 1953, 503: 1953, 1953, 1953, 1953, 509: 1953, 1953, 512: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 522: 1953, 524: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 534: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 548: 1953, 1953}, + {2: 1947, 1947, 1947, 1947, 1947, 1947, 1947, 10: 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 74: 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 486: 1947, 1947, 489: 1947, 1947, 496: 1947, 1947, 1947, 1947, 1947, 505: 1947, 508: 1947, 1947, 517: 1947, 521: 1947, 543: 1947, 577: 1947, 580: 1947, 582: 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 595: 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 606: 1947, 608: 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 1947, 664: 1947}, + {2: 1946, 1946, 1946, 1946, 1946, 1946, 1946, 10: 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 74: 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 486: 1946, 1946, 489: 1946, 1946, 496: 1946, 1946, 1946, 1946, 1946, 505: 1946, 508: 1946, 1946, 517: 1946, 521: 1946, 543: 1946, 577: 1946, 580: 1946, 582: 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 595: 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 606: 1946, 608: 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 664: 1946}, + {2: 1945, 1945, 1945, 1945, 1945, 1945, 1945, 10: 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 74: 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 486: 1945, 1945, 489: 1945, 1945, 496: 1945, 1945, 1945, 1945, 1945, 505: 1945, 508: 1945, 1945, 517: 1945, 521: 1945, 543: 1945, 577: 1945, 580: 1945, 582: 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 595: 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 606: 1945, 608: 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 664: 1945}, + {2: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 10: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 74: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 486: 1944, 1944, 489: 1944, 1944, 496: 1944, 1944, 1944, 1944, 1944, 505: 1944, 508: 1944, 1944, 517: 1944, 521: 1944, 543: 1944, 577: 1944, 580: 1944, 582: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 595: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 606: 1944, 608: 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 664: 1944}, + {2: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 10: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 74: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 486: 1943, 1943, 489: 1943, 1943, 496: 1943, 1943, 1943, 1943, 1943, 505: 1943, 508: 1943, 1943, 517: 1943, 521: 1943, 543: 1943, 577: 1943, 580: 1943, 582: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 595: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 606: 1943, 608: 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 664: 1943}, // 1610 - {1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 477: 1931, 1931, 481: 1931, 483: 1931, 1931, 1931, 1931, 492: 1931, 1931, 1931, 496: 1931, 1931, 499: 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 509: 1931, 1931, 512: 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 522: 1931, 524: 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 534: 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 548: 1931, 1931, 558: 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 4171}, - {2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 476: 2354, 491: 2354, 496: 2354, 502: 2354, 508: 2354, 2354, 532: 2354, 2354, 2354, 650: 2354, 655: 4192, 672: 2354, 2354, 675: 2354, 681: 2354, 2354, 684: 2354, 2354, 2354, 2354, 2354, 2354, 692: 2354, 694: 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 709: 2354, 2354, 2354, 2354}, - {9: 2351, 50: 2351}, - {9: 4172, 50: 4173}, + {2: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 10: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 74: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 486: 1942, 1942, 489: 1942, 1942, 496: 1942, 1942, 1942, 1942, 1942, 505: 1942, 508: 1942, 1942, 517: 1942, 521: 1942, 543: 1942, 577: 1942, 580: 1942, 582: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 595: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 606: 1942, 608: 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 664: 1942}, + {184: 1939, 489: 4164, 491: 4163, 505: 1939, 584: 1939, 1939, 826: 4203}, + {184: 1938, 505: 1938, 584: 1938, 1938}, + {1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 487: 1953, 1953, 492: 1953, 494: 1953, 1953, 1953, 1953, 502: 1953, 1953, 1953, 506: 1953, 1953, 510: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 518: 1953, 1953, 1953, 522: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 532: 1953, 534: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 544: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953, 558: 1953, 1953, 568: 1953, 1953, 1953, 1953, 1953, 1953, 1953, 1953}, + {486: 2642, 723: 4212}, // 1615 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4191}, - {312: 4174}, - {476: 4175}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4176}, - {50: 1949, 477: 4179, 488: 3712, 3713, 3718, 523: 3714, 547: 4178, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711, 1230: 4177}, + {775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 487: 775, 775, 775, 491: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 502: 775, 775, 775, 506: 775, 775, 510: 775, 775, 775, 775, 775, 775, 775, 518: 775, 775, 775, 522: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 544: 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 775, 578: 775, 775, 607: 775, 672: 4210}, + {1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1931, 1752, 1752, 1752, 491: 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 502: 1752, 1752, 1752, 506: 1752, 1752, 510: 1752, 1752, 1752, 1752, 1752, 1752, 1752, 518: 1752, 1752, 1752, 522: 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 544: 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 1752, 578: 1752, 1752, 607: 1752, 665: 1752, 669: 1752, 1752}, + {1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1930, 1751, 1751, 1751, 491: 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 502: 1751, 1751, 1751, 506: 1751, 1751, 510: 1751, 1751, 1751, 1751, 1751, 1751, 1751, 518: 1751, 1751, 1751, 522: 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 544: 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 1751, 578: 1751, 1751, 607: 1751, 665: 1751, 669: 1751, 1751}, + {486: 1929}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 4211}, // 1620 - {50: 4190}, - {233: 4183, 522: 4182}, - {142: 4180}, - {257: 4181}, - {50: 1945}, + {1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 487: 1951, 1951, 492: 1951, 494: 1951, 1951, 1951, 1951, 502: 1951, 1951, 1951, 506: 1951, 1951, 510: 1951, 1951, 1951, 1951, 1951, 1951, 1951, 518: 1951, 1951, 1951, 522: 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 532: 1951, 534: 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 544: 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951, 558: 1951, 1951, 568: 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1951}, + {1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 487: 1952, 1952, 492: 1952, 494: 1952, 1952, 1952, 1952, 502: 1952, 1952, 1952, 506: 1952, 1952, 510: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 518: 1952, 1952, 1952, 522: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 532: 1952, 534: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 544: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952, 558: 1952, 1952, 568: 1952, 1952, 1952, 1952, 1952, 1952, 1952, 1952}, + {1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 487: 1978, 1978, 492: 1978, 494: 1978, 1978, 1978, 1978, 502: 1978, 1978, 1978, 506: 1978, 1978, 510: 1978, 1978, 513: 1978, 1978, 1978, 1978, 518: 1978, 1978, 1978, 522: 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 532: 1978, 534: 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 544: 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 1978, 558: 1978, 1978}, + {1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 487: 1977, 1977, 492: 1977, 494: 1977, 1977, 1977, 1977, 502: 1977, 1977, 1977, 506: 1977, 1977, 510: 1977, 1977, 513: 1977, 1977, 1977, 1977, 518: 1977, 1977, 1977, 522: 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 532: 1977, 534: 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 544: 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 1977, 558: 1977, 1977}, + {1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 487: 1976, 1976, 492: 1976, 494: 1976, 1976, 1976, 1976, 502: 1976, 1976, 1976, 506: 1976, 1976, 510: 1976, 1976, 513: 1976, 1976, 1976, 1976, 518: 1976, 1976, 1976, 522: 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 532: 1976, 534: 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 544: 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 558: 1976, 1976}, // 1625 - {357: 4185}, - {215: 4184}, - {50: 1946}, - {215: 4186}, - {50: 1948, 477: 4187}, + {1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 487: 1954, 1954, 492: 1954, 494: 1954, 1954, 1954, 1954, 502: 1954, 1954, 1954, 506: 1954, 1954, 510: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 518: 1954, 1954, 1954, 522: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 532: 1954, 534: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 544: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954, 558: 1954, 1954, 568: 1954, 1954, 1954, 1954, 1954, 1954, 1954, 1954}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 4220}, + {2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 486: 2379, 501: 2379, 506: 2379, 508: 2379, 512: 2379, 519: 2379, 542: 2379, 2379, 555: 2379, 660: 2379, 665: 4241, 682: 2379, 2379, 685: 2379, 691: 2379, 2379, 694: 2379, 2379, 2379, 2379, 2379, 2379, 702: 2379, 704: 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 2379, 719: 2379, 2379, 2379, 2379}, + {9: 2376, 73: 2376}, + {9: 4221, 73: 4222}, // 1630 - {142: 4188}, - {257: 4189}, - {50: 1947}, - {1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 477: 1956, 1956, 481: 1956, 483: 1956, 1956, 1956, 1956, 492: 1956, 1956, 1956, 496: 1956, 1956, 499: 1956, 1956, 1956, 503: 1956, 1956, 1956, 1956, 509: 1956, 1956, 512: 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 522: 1956, 524: 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 534: 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 1956, 548: 1956, 1956}, - {9: 2350, 50: 2350}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4240}, + {322: 4223}, + {486: 4224}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 4225}, + {73: 1972, 488: 4228, 498: 3761, 3762, 3767, 533: 3763, 557: 4227, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760, 1243: 4226}, // 1635 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4193, 2785, 2786, 2784}, - {2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 476: 2353, 491: 2353, 496: 2353, 502: 2353, 508: 2353, 2353, 532: 2353, 2353, 2353, 650: 2353, 655: 4194, 672: 2353, 2353, 675: 2353, 681: 2353, 2353, 684: 2353, 2353, 2353, 2353, 2353, 2353, 692: 2353, 694: 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 709: 2353, 2353, 2353, 2353}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4195, 2785, 2786, 2784}, - {2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 476: 2352, 491: 2352, 496: 2352, 502: 2352, 508: 2352, 2352, 532: 2352, 2352, 2352, 650: 2352, 672: 2352, 2352, 675: 2352, 681: 2352, 2352, 684: 2352, 2352, 2352, 2352, 2352, 2352, 692: 2352, 694: 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 709: 2352, 2352, 2352, 2352}, - {1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 477: 1957, 1957, 481: 1957, 483: 1957, 1957, 1957, 1957, 492: 1957, 1957, 1957, 496: 1957, 1957, 499: 1957, 1957, 1957, 503: 1957, 1957, 1957, 1957, 509: 1957, 1957, 512: 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 522: 1957, 524: 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 534: 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 548: 1957, 1957, 738: 3367, 3365}, + {73: 4239}, + {241: 4232, 532: 4231}, + {149: 4229}, + {266: 4230}, + {73: 1968}, // 1640 - {1317, 1317, 9: 1317, 50: 1317, 128: 1317, 475: 1317, 477: 1317, 483: 1317, 1317, 493: 1317, 1317, 496: 1317, 1317, 499: 1317, 1317, 504: 1317, 1317, 517: 1317, 519: 1317, 527: 1317, 530: 1317, 1317}, - {1316, 1316, 9: 1316, 50: 1316, 128: 1316, 475: 1316, 477: 1316, 483: 1316, 1316, 493: 1316, 1316, 496: 1316, 1316, 499: 1316, 1316, 504: 1316, 1316, 517: 1316, 519: 1316, 527: 1316, 530: 1316, 1316}, - {1315, 1315, 9: 1315, 50: 1315, 128: 1315, 475: 1315, 477: 1315, 483: 1315, 1315, 493: 1315, 1315, 496: 1315, 1315, 499: 1315, 1315, 504: 1315, 1315, 517: 1315, 519: 1315, 527: 1315, 530: 1315, 1315}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4201}, - {1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 477: 1961, 1961, 481: 1961, 483: 1961, 1961, 1961, 1961, 492: 1961, 1961, 1961, 496: 1961, 1961, 499: 1961, 1961, 1961, 503: 1961, 1961, 1961, 1961, 509: 1961, 3371, 512: 3369, 3370, 3368, 3366, 1961, 1961, 1961, 1961, 1961, 522: 1961, 524: 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 534: 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 1961, 548: 1961, 1961, 738: 3367, 3365}, + {365: 4234}, + {224: 4233}, + {73: 1969}, + {224: 4235}, + {73: 1971, 488: 4236}, // 1645 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4203}, - {50: 4204}, - {2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 477: 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 499: 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 509: 2250, 2250, 512: 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 534: 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 2250, 568: 2250, 2250, 584: 2250, 593: 2250, 2250, 597: 2250, 645: 2250, 2250, 2250, 2250}, - {497: 4206}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4207}, + {149: 4237}, + {266: 4238}, + {73: 1970}, + {1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 487: 1979, 1979, 492: 1979, 494: 1979, 1979, 1979, 1979, 502: 1979, 1979, 1979, 506: 1979, 1979, 510: 1979, 1979, 513: 1979, 1979, 1979, 1979, 518: 1979, 1979, 1979, 522: 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 532: 1979, 534: 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 544: 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 1979, 558: 1979, 1979}, + {9: 2375, 73: 2375}, // 1650 - {2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 477: 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 499: 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 509: 2251, 2251, 512: 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 534: 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 2251, 568: 2251, 2251, 584: 2251, 593: 2251, 2251, 597: 2251, 645: 2251, 2251, 2251, 2251}, - {258, 258, 50: 258, 475: 258, 477: 258, 483: 258, 258, 493: 258, 258, 496: 258, 258, 499: 258, 258, 504: 258, 258, 510: 3371, 512: 3369, 3370, 3368, 3366, 258, 258, 519: 258, 738: 3367, 3365}, - {6, 6}, - {142: 4212}, - {2, 2}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4242, 2824, 2825, 2823}, + {2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 486: 2378, 501: 2378, 506: 2378, 508: 2378, 512: 2378, 519: 2378, 542: 2378, 2378, 555: 2378, 660: 2378, 665: 4243, 682: 2378, 2378, 685: 2378, 691: 2378, 2378, 694: 2378, 2378, 2378, 2378, 2378, 2378, 702: 2378, 704: 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 2378, 719: 2378, 2378, 2378, 2378}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4244, 2824, 2825, 2823}, + {2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 486: 2377, 501: 2377, 506: 2377, 508: 2377, 512: 2377, 519: 2377, 542: 2377, 2377, 555: 2377, 660: 2377, 682: 2377, 2377, 685: 2377, 691: 2377, 2377, 694: 2377, 2377, 2377, 2377, 2377, 2377, 702: 2377, 704: 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 2377, 719: 2377, 2377, 2377, 2377}, + {1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 487: 1980, 1980, 492: 1980, 494: 1980, 1980, 1980, 1980, 502: 1980, 1980, 1980, 506: 1980, 1980, 510: 1980, 1980, 513: 1980, 1980, 1980, 1980, 518: 1980, 1980, 1980, 522: 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 532: 1980, 534: 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 544: 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 1980, 558: 1980, 1980, 748: 3416, 3414}, // 1655 - {257, 257, 496: 257, 501: 2745, 504: 257, 257, 795: 2746, 4213}, - {1311, 1311, 496: 1311, 504: 1311, 2748, 772: 2749, 817: 4214}, - {883, 883, 496: 2751, 504: 2752, 773: 2753, 834: 4215}, - {4, 4}, - {572: 4218}, + {1330, 1330, 9: 1330, 73: 1330, 135: 1330, 485: 1330, 488: 1330, 494: 1330, 1330, 503: 1330, 1330, 506: 1330, 1330, 510: 1330, 1330, 515: 1330, 1330, 527: 1330, 529: 1330, 537: 1330, 540: 1330, 1330}, + {1329, 1329, 9: 1329, 73: 1329, 135: 1329, 485: 1329, 488: 1329, 494: 1329, 1329, 503: 1329, 1329, 506: 1329, 1329, 510: 1329, 1329, 515: 1329, 1329, 527: 1329, 529: 1329, 537: 1329, 540: 1329, 1329}, + {1328, 1328, 9: 1328, 73: 1328, 135: 1328, 485: 1328, 488: 1328, 494: 1328, 1328, 503: 1328, 1328, 506: 1328, 1328, 510: 1328, 1328, 515: 1328, 1328, 527: 1328, 529: 1328, 537: 1328, 540: 1328, 1328}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4250}, + {1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 487: 1984, 1984, 492: 1984, 494: 1984, 1984, 1984, 1984, 502: 1984, 1984, 1984, 506: 1984, 1984, 510: 1984, 1984, 513: 1984, 1984, 1984, 1984, 518: 1984, 1984, 3420, 522: 3418, 3419, 3417, 3415, 1984, 1984, 1984, 1984, 1984, 532: 1984, 534: 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 544: 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 558: 1984, 1984, 748: 3416, 3414}, // 1660 - {2: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 10: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 51: 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1872, 476: 1872, 499: 1872, 503: 1872, 572: 1872, 582: 1872}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4219}, - {2432, 2432, 2432, 2432, 2432, 2432, 4267, 4269, 410, 10: 4236, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 72: 4238, 75: 4259, 4260, 84: 4261, 140: 4241, 185: 4230, 205: 4224, 4222, 4245, 210: 4246, 221: 4240, 227: 4256, 240: 4234, 249: 4242, 255: 4237, 272: 4247, 280: 4243, 287: 4257, 4258, 292: 4225, 477: 4255, 482: 4266, 4303, 487: 2193, 491: 2432, 500: 4262, 505: 4244, 4254, 508: 2193, 4227, 587: 4228, 593: 4233, 650: 2193, 652: 4272, 656: 4221, 668: 4249, 672: 4235, 674: 4263, 683: 4248, 690: 4250, 693: 4229, 708: 4239, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 4305, 874: 4253, 887: 4251, 924: 4226, 931: 4231, 994: 4265, 1146: 4232, 1174: 4252, 1180: 4264, 4220}, - {2191, 2191, 5067, 5068, 5065, 5066, 491: 5069, 1108: 5064, 1179: 5063}, - {491: 5037}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4252}, + {73: 4253}, + {2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 487: 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 510: 2275, 2275, 2275, 2275, 2275, 2275, 2275, 518: 2275, 2275, 2275, 522: 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 544: 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 578: 2275, 2275, 594: 2275, 604: 2275, 2275, 607: 2275, 655: 2275, 2275, 2275, 659: 2275}, + {507: 4255}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4256}, // 1665 - {2552, 2552, 170: 5031, 491: 5032}, - {167: 5023}, - {478: 2064, 482: 2064, 502: 4307, 741: 5020}, - {478: 2064, 482: 2064, 502: 4307, 741: 5017}, - {2517, 2517, 2517, 2517, 2517, 2517, 4267, 4269, 410, 2517, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 482: 4266, 4303, 487: 2193, 491: 2517, 506: 5013, 508: 2193, 650: 2193, 652: 4272, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 5014}, + {2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 487: 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 510: 2276, 2276, 2276, 2276, 2276, 2276, 2276, 518: 2276, 2276, 2276, 522: 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 544: 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 578: 2276, 2276, 594: 2276, 604: 2276, 2276, 607: 2276, 655: 2276, 2276, 2276, 659: 2276}, + {267, 267, 73: 267, 485: 267, 488: 267, 494: 267, 267, 503: 267, 267, 506: 267, 267, 510: 267, 267, 515: 267, 267, 520: 3420, 522: 3418, 3419, 3417, 3415, 267, 267, 529: 267, 748: 3416, 3414}, + {7, 7}, + {149: 4261}, + {3, 3}, // 1670 - {170: 5003}, - {653: 4995}, - {2: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 10: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 51: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 476: 2437, 491: 4854, 567: 2437, 584: 2426, 593: 2426, 2426, 645: 2426, 4615, 652: 2426, 678: 2426, 2426, 837: 4856, 852: 4450, 877: 4852, 908: 4853, 919: 4855}, - {491: 4845}, - {2506, 2506, 2506, 2506, 2506, 2506, 9: 2506, 491: 2506}, + {266, 266, 506: 266, 513: 2784, 515: 266, 266, 806: 2785, 4262}, + {1324, 1324, 506: 1324, 515: 1324, 2787, 782: 2788, 828: 4263}, + {896, 896, 506: 2790, 515: 2791, 783: 2792, 844: 4264}, + {5, 5}, + {581: 4267}, // 1675 - {2505, 2505, 2505, 2505, 2505, 2505, 9: 2505, 491: 2505}, - {491: 4843}, - {491: 4840}, - {2: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 10: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 51: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 491: 4819, 567: 2437, 584: 4436, 593: 4451, 4818, 646: 4452, 652: 4437, 678: 4822, 832: 4821, 852: 4450, 877: 4817, 919: 4820, 1004: 4823}, - {491: 4810}, + {2: 1895, 1895, 1895, 1895, 1895, 1895, 1895, 10: 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 74: 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 1895, 486: 1895, 510: 1895, 514: 1895, 581: 1895, 593: 1895}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4268}, + {2457, 2457, 2457, 2457, 2457, 2457, 4316, 4318, 419, 10: 4285, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 74: 4287, 77: 4308, 4309, 86: 4310, 147: 4290, 192: 4279, 213: 4273, 4271, 4294, 218: 4295, 228: 4289, 235: 4305, 249: 4283, 258: 4291, 264: 4286, 281: 4296, 289: 4292, 296: 4306, 4307, 301: 4274, 488: 4304, 490: 4315, 493: 2217, 4352, 501: 2457, 508: 2217, 511: 4311, 516: 4293, 518: 4303, 4276, 597: 4277, 604: 4282, 660: 2217, 4321, 666: 4270, 674: 4298, 682: 4284, 684: 4312, 693: 4297, 700: 4299, 703: 4278, 718: 4288, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 4356, 885: 4302, 899: 4300, 935: 4275, 942: 4280, 1005: 4314, 1160: 4281, 1188: 4301, 1193: 4313, 4269}, + {2215, 2215, 5126, 5127, 5124, 5125, 501: 5128, 1120: 5123, 1195: 5122}, + {501: 5096}, // 1680 - {491: 4799}, - {491: 4797}, - {491: 4794}, - {491: 4791}, - {20: 4788, 491: 4787}, + {2586, 2586, 177: 5090, 501: 5091}, + {174: 5082}, + {487: 2088, 490: 2088, 512: 4358, 750: 5079}, + {487: 2088, 490: 2088, 512: 4358, 750: 5076}, + {2542, 2542, 2542, 2542, 2542, 2542, 4316, 4318, 419, 2542, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 490: 4315, 493: 2217, 4352, 501: 2542, 508: 2217, 518: 5072, 660: 2217, 4321, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 5073}, // 1685 - {20: 4784, 491: 4783}, - {491: 4773}, - {663: 4766}, - {948: 4765}, - {948: 4764}, + {177: 5062}, + {663: 5054}, + {2: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 10: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 74: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 486: 2462, 501: 4913, 577: 2462, 594: 2451, 604: 2451, 2451, 655: 2451, 4674, 661: 2451, 688: 2451, 2451, 847: 4915, 862: 4509, 888: 4911, 919: 4912, 930: 4914}, + {501: 4904}, + {2531, 2531, 2531, 2531, 2531, 2531, 9: 2531, 501: 2531}, // 1690 - {2: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 10: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 51: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 567: 2437, 852: 4450, 877: 4760}, - {2: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 10: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 51: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 567: 2437, 852: 4450, 877: 4476}, - {2: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 10: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 51: 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 593: 4451, 646: 4452, 652: 4449, 852: 4450, 877: 4447, 1004: 4448}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 481: 4434, 502: 4307, 584: 4436, 652: 4437, 4432, 741: 4433, 832: 4435, 852: 4431}, - {2473, 2473, 2473, 2473, 2473, 2473, 9: 2473, 491: 2473}, + {2530, 2530, 2530, 2530, 2530, 2530, 9: 2530, 501: 2530}, + {501: 4902}, + {501: 4899}, + {2: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 10: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 74: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 501: 4878, 577: 2462, 594: 4495, 604: 4510, 4877, 656: 4511, 661: 4496, 688: 4881, 842: 4880, 862: 4509, 888: 4876, 930: 4879, 1015: 4882}, + {501: 4869}, // 1695 - {2472, 2472, 2472, 2472, 2472, 2472, 9: 2472, 491: 2472}, - {2471, 2471, 2471, 2471, 2471, 2471, 9: 2471, 491: 2471}, - {2470, 2470, 2470, 2470, 2470, 2470, 8: 409, 2470, 29: 409, 491: 2470}, - {203: 4430}, - {203: 4429}, + {501: 4858}, + {501: 4856}, + {501: 4853}, + {501: 4850}, + {20: 4847, 501: 4846}, // 1700 - {2467, 2467, 2467, 2467, 2467, 2467, 9: 2467, 491: 2467}, - {2466, 2466, 2466, 2466, 2466, 2466, 9: 2466, 491: 2466}, - {2462, 2462, 2462, 2462, 2462, 2462, 9: 2462, 491: 2462}, - {2461, 2461, 2461, 2461, 2461, 2461, 9: 2461, 491: 2461}, - {130: 2064, 243: 2064, 264: 2064, 266: 2064, 482: 2064, 502: 4307, 741: 4423}, + {20: 4843, 501: 4842}, + {501: 4832}, + {673: 4825}, + {959: 4824}, + {959: 4823}, // 1705 - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 482: 2064, 502: 4307, 741: 4420}, - {156: 4419, 691: 4418}, - {2431, 2431, 2431, 2431, 2431, 2431, 9: 4416, 491: 2431}, - {2430, 2430, 2430, 2430, 2430, 2430, 9: 2430, 491: 2430}, - {16: 2192, 18: 2192, 21: 2192, 487: 2192, 508: 2192, 650: 2192}, + {2: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 10: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 74: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 577: 2462, 862: 4509, 888: 4819}, + {2: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 10: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 74: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 577: 2462, 862: 4509, 888: 4535}, + {2: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 10: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 74: 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 2462, 604: 4510, 656: 4511, 661: 4508, 862: 4509, 888: 4506, 1015: 4507}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 492: 4493, 512: 4358, 594: 4495, 661: 4496, 663: 4491, 750: 4492, 842: 4494, 862: 4490}, + {2498, 2498, 2498, 2498, 2498, 2498, 9: 2498, 501: 2498}, // 1710 - {478: 2064, 502: 4307, 741: 4414}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 741: 4412}, - {22: 4407, 188: 4408, 250: 4409}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 741: 4405}, - {248: 4402}, + {2497, 2497, 2497, 2497, 2497, 2497, 9: 2497, 501: 2497}, + {2496, 2496, 2496, 2496, 2496, 2496, 9: 2496, 501: 2496}, + {2495, 2495, 2495, 2495, 2495, 2495, 8: 418, 2495, 29: 418, 501: 2495}, + {211: 4489}, + {211: 4488}, // 1715 - {248: 4399}, - {502: 4307, 511: 2064, 741: 4397}, - {502: 4307, 511: 2064, 741: 4395}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 502: 4307, 741: 4393}, - {502: 4307, 511: 2064, 741: 4391}, + {2492, 2492, 2492, 2492, 2492, 2492, 9: 2492, 501: 2492}, + {2491, 2491, 2491, 2491, 2491, 2491, 9: 2491, 501: 2491}, + {2487, 2487, 2487, 2487, 2487, 2487, 9: 2487, 501: 2487}, + {2486, 2486, 2486, 2486, 2486, 2486, 9: 2486, 501: 2486}, + {137: 2088, 252: 2088, 273: 2088, 275: 2088, 490: 2088, 512: 4358, 750: 4482}, // 1720 - {2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 15: 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 2137, 50: 2137, 475: 2137, 2137, 2137, 481: 2137, 2137, 2137, 487: 2137, 491: 2137, 2137, 498: 2137, 506: 2137, 2137, 2137, 572: 2137, 649: 2137, 2137, 652: 2137}, - {444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 15: 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 475: 444, 444, 444, 481: 444, 444, 444, 487: 444, 491: 444, 444, 498: 444, 506: 444, 444, 444, 572: 444, 649: 444, 444, 652: 444}, - {16: 3862, 487: 4386, 508: 3863, 650: 3861, 779: 4385}, - {8: 4379, 29: 4380}, - {502: 4307, 511: 2064, 741: 4377}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 490: 2088, 512: 4358, 750: 4479}, + {163: 4478, 701: 4477}, + {2456, 2456, 2456, 2456, 2456, 2456, 9: 4475, 501: 2456}, + {2455, 2455, 2455, 2455, 2455, 2455, 9: 2455, 501: 2455}, + {16: 2216, 18: 2216, 21: 2216, 493: 2216, 508: 2216, 660: 2216}, // 1725 - {502: 4307, 511: 2064, 741: 4375}, - {478: 2064, 502: 4307, 741: 4373}, - {502: 4307, 511: 2064, 741: 4371}, - {502: 4307, 511: 2064, 741: 4369}, - {478: 2064, 502: 4307, 741: 4367}, + {487: 2088, 512: 4358, 750: 4473}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 750: 4471}, + {22: 4466, 195: 4467, 259: 4468}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 750: 4464}, + {257: 4461}, // 1730 - {478: 2064, 502: 4307, 741: 4365}, - {502: 4307, 511: 2064, 741: 4363}, - {502: 4307, 511: 2064, 741: 4361}, - {430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 15: 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 475: 430, 430, 430, 481: 430, 430, 430, 487: 430, 491: 430, 430, 498: 430, 506: 430, 430, 430, 572: 430, 649: 430, 430, 652: 430}, - {482: 2064, 502: 4307, 511: 2064, 741: 4359}, + {257: 4458}, + {512: 4358, 521: 2088, 750: 4456}, + {512: 4358, 521: 2088, 750: 4454}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 512: 4358, 750: 4452}, + {512: 4358, 521: 2088, 750: 4450}, // 1735 - {482: 2064, 502: 4307, 511: 2064, 741: 4356}, - {482: 2064, 502: 4307, 511: 2064, 741: 4353}, - {502: 4307, 511: 2064, 741: 4351}, - {502: 4307, 511: 2064, 741: 4349}, - {502: 4307, 511: 2064, 576: 2064, 2064, 741: 4347}, + {2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 15: 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 2161, 73: 2161, 485: 2161, 2161, 488: 2161, 490: 2161, 492: 2161, 2161, 2161, 501: 2161, 2161, 508: 2161, 2161, 517: 2161, 2161, 581: 2161, 658: 2161, 660: 2161, 2161}, + {455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 15: 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 455, 485: 455, 455, 488: 455, 490: 455, 492: 455, 455, 455, 501: 455, 455, 508: 455, 455, 517: 455, 455, 581: 455, 658: 455, 660: 455, 455}, + {16: 3911, 493: 4445, 508: 3912, 660: 3910, 790: 4444}, + {8: 4438, 29: 4439}, + {512: 4358, 521: 2088, 750: 4436}, // 1740 - {478: 2064, 502: 4307, 741: 4345}, - {478: 2064, 502: 4307, 741: 4343}, - {502: 4307, 511: 2064, 741: 4341}, - {502: 4307, 511: 2064, 741: 4339}, - {482: 2064, 502: 4307, 511: 2064, 741: 4335}, + {512: 4358, 521: 2088, 750: 4434}, + {487: 2088, 512: 4358, 750: 4432}, + {512: 4358, 521: 2088, 750: 4430}, + {512: 4358, 521: 2088, 750: 4428}, + {487: 2088, 512: 4358, 750: 4426}, // 1745 - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 495: 2064, 502: 4307, 741: 4332}, - {476: 2064, 502: 4307, 741: 4327}, - {478: 2064, 502: 4307, 741: 4324}, - {404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 15: 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 475: 404, 404, 404, 481: 404, 404, 404, 487: 404, 491: 404, 404, 498: 404, 506: 404, 404, 404, 572: 404, 649: 404, 404, 652: 404}, - {182: 2064, 206: 2064, 209: 2064, 241: 2064, 281: 2064, 295: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 482: 2064, 502: 4307, 741: 4308}, + {487: 2088, 512: 4358, 750: 4424}, + {512: 4358, 521: 2088, 750: 4422}, + {512: 4358, 521: 2088, 750: 4420}, + {441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 15: 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 485: 441, 441, 488: 441, 490: 441, 492: 441, 441, 441, 501: 441, 441, 508: 441, 441, 517: 441, 441, 581: 441, 658: 441, 660: 441, 441}, + {490: 2088, 512: 4358, 521: 2088, 750: 4418}, // 1750 - {2: 2063, 2063, 2063, 2063, 2063, 2063, 2063, 10: 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 51: 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 2063, 476: 2063, 478: 2063, 482: 2063, 488: 2063, 2063, 492: 2063, 495: 2063, 507: 2063, 511: 2063, 533: 2063, 574: 2063, 2063, 2063, 2063}, - {182: 4311, 206: 4314, 209: 4310, 241: 4312, 281: 4313, 295: 4315, 4316, 4321, 4320, 4317, 4322, 4323, 4318, 4319, 482: 4309}, - {398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 15: 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 475: 398, 398, 398, 481: 398, 398, 398, 487: 398, 491: 398, 398, 498: 398, 506: 398, 398, 398, 572: 398, 649: 398, 398, 652: 398}, - {397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 15: 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 475: 397, 397, 397, 481: 397, 397, 397, 487: 397, 491: 397, 397, 498: 397, 506: 397, 397, 397, 572: 397, 649: 397, 397, 652: 397}, - {396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 15: 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 475: 396, 396, 396, 481: 396, 396, 396, 487: 396, 491: 396, 396, 498: 396, 506: 396, 396, 396, 572: 396, 649: 396, 396, 652: 396}, + {490: 2088, 512: 4358, 521: 2088, 750: 4415}, + {490: 2088, 512: 4358, 521: 2088, 750: 4412}, + {512: 4358, 521: 2088, 750: 4410}, + {512: 4358, 521: 2088, 750: 4408}, + {512: 4358, 521: 2088, 586: 2088, 2088, 750: 4406}, // 1755 - {395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 15: 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 475: 395, 395, 395, 481: 395, 395, 395, 487: 395, 491: 395, 395, 498: 395, 506: 395, 395, 395, 572: 395, 649: 395, 395, 652: 395}, - {394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 15: 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 475: 394, 394, 394, 481: 394, 394, 394, 487: 394, 491: 394, 394, 498: 394, 506: 394, 394, 394, 572: 394, 649: 394, 394, 652: 394}, - {393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 15: 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 475: 393, 393, 393, 481: 393, 393, 393, 487: 393, 491: 393, 393, 498: 393, 506: 393, 393, 393, 572: 393, 649: 393, 393, 652: 393}, - {392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 15: 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 475: 392, 392, 392, 481: 392, 392, 392, 487: 392, 491: 392, 392, 498: 392, 506: 392, 392, 392, 572: 392, 649: 392, 392, 652: 392}, - {391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 15: 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 475: 391, 391, 391, 481: 391, 391, 391, 487: 391, 491: 391, 391, 498: 391, 506: 391, 391, 391, 572: 391, 649: 391, 391, 652: 391}, + {487: 2088, 512: 4358, 750: 4404}, + {487: 2088, 512: 4358, 750: 4402}, + {512: 4358, 521: 2088, 750: 4400}, + {512: 4358, 521: 2088, 750: 4398}, + {490: 2088, 512: 4358, 521: 2088, 750: 4394}, // 1760 - {390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 15: 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 475: 390, 390, 390, 481: 390, 390, 390, 487: 390, 491: 390, 390, 498: 390, 506: 390, 390, 390, 572: 390, 649: 390, 390, 652: 390}, - {389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 15: 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 475: 389, 389, 389, 481: 389, 389, 389, 487: 389, 491: 389, 389, 498: 389, 506: 389, 389, 389, 572: 389, 649: 389, 389, 652: 389}, - {388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 15: 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 475: 388, 388, 388, 481: 388, 388, 388, 487: 388, 491: 388, 388, 498: 388, 506: 388, 388, 388, 572: 388, 649: 388, 388, 652: 388}, - {387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 15: 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 475: 387, 387, 387, 481: 387, 387, 387, 487: 387, 491: 387, 387, 498: 387, 506: 387, 387, 387, 572: 387, 649: 387, 387, 652: 387}, - {386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 15: 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 475: 386, 386, 386, 481: 386, 386, 386, 487: 386, 491: 386, 386, 498: 386, 506: 386, 386, 386, 572: 386, 649: 386, 386, 652: 386}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 505: 2088, 512: 4358, 750: 4391}, + {486: 2088, 512: 4358, 750: 4386}, + {487: 2088, 512: 4358, 750: 4383}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 512: 4358, 750: 4377}, + {487: 2088, 512: 4358, 750: 4375}, // 1765 - {385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 15: 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 475: 385, 385, 385, 481: 385, 385, 385, 487: 385, 491: 385, 385, 498: 385, 506: 385, 385, 385, 572: 385, 649: 385, 385, 652: 385}, - {384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 15: 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 475: 384, 384, 384, 481: 384, 384, 384, 487: 384, 491: 384, 384, 498: 384, 506: 384, 384, 384, 572: 384, 649: 384, 384, 652: 384}, - {478: 4326, 1044: 4325}, - {411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 15: 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 475: 411, 411, 411, 481: 411, 411, 411, 487: 411, 491: 411, 411, 498: 411, 506: 411, 411, 411, 572: 411, 649: 411, 411, 652: 411}, - {11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 15: 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 475: 11, 11, 11, 481: 11, 11, 11, 487: 11, 491: 11, 11, 498: 11, 506: 11, 11, 11, 11, 572: 11, 649: 11, 11, 652: 11}, + {413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 15: 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 485: 413, 413, 488: 413, 490: 413, 492: 413, 413, 413, 501: 413, 413, 508: 413, 413, 517: 413, 413, 581: 413, 658: 413, 660: 413, 413}, + {189: 2088, 214: 2088, 217: 2088, 250: 2088, 290: 2088, 305: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 490: 2088, 512: 4358, 750: 4359}, + {2: 2087, 2087, 2087, 2087, 2087, 2087, 2087, 10: 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 74: 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 2087, 486: 2087, 2087, 490: 2087, 498: 2087, 2087, 502: 2087, 505: 2087, 517: 2087, 521: 2087, 543: 2087, 584: 2087, 2087, 2087, 2087}, + {189: 4362, 214: 4365, 217: 4361, 250: 4363, 290: 4364, 305: 4366, 4367, 4372, 4371, 4368, 4373, 4374, 4369, 4370, 490: 4360}, + {407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 15: 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 485: 407, 407, 488: 407, 490: 407, 492: 407, 407, 407, 501: 407, 407, 508: 407, 407, 517: 407, 407, 581: 407, 658: 407, 660: 407, 407}, // 1770 - {476: 4328}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 579, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 4329, 1155: 4330}, - {578, 578, 9: 3950, 50: 578, 477: 578}, - {50: 4331}, - {412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 15: 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 475: 412, 412, 412, 481: 412, 412, 412, 487: 412, 491: 412, 412, 498: 412, 506: 412, 412, 412, 572: 412, 649: 412, 412, 652: 412}, + {406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 15: 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 485: 406, 406, 488: 406, 490: 406, 492: 406, 406, 406, 501: 406, 406, 508: 406, 406, 517: 406, 406, 581: 406, 658: 406, 660: 406, 406}, + {405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 15: 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 485: 405, 405, 488: 405, 490: 405, 492: 405, 405, 405, 501: 405, 405, 508: 405, 405, 517: 405, 405, 581: 405, 658: 405, 660: 405, 405}, + {404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 15: 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, 485: 404, 404, 488: 404, 490: 404, 492: 404, 404, 404, 501: 404, 404, 508: 404, 404, 517: 404, 404, 581: 404, 658: 404, 660: 404, 404}, + {403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 15: 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 485: 403, 403, 488: 403, 490: 403, 492: 403, 403, 403, 501: 403, 403, 508: 403, 403, 517: 403, 403, 581: 403, 658: 403, 660: 403, 403}, + {402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 15: 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 485: 402, 402, 488: 402, 490: 402, 492: 402, 402, 402, 501: 402, 402, 508: 402, 402, 517: 402, 402, 581: 402, 658: 402, 660: 402, 402}, // 1775 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 495: 4333, 664: 3517, 2785, 2786, 2784, 742: 4334}, - {414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 15: 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 414, 475: 414, 414, 414, 481: 414, 414, 414, 487: 414, 491: 414, 414, 498: 414, 506: 414, 414, 414, 572: 414, 649: 414, 414, 652: 414}, - {413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 15: 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 413, 475: 413, 413, 413, 481: 413, 413, 413, 487: 413, 491: 413, 413, 498: 413, 506: 413, 413, 413, 572: 413, 649: 413, 413, 652: 413}, - {482: 4337, 511: 2759, 737: 2758, 745: 4338, 1147: 4336}, - {417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 15: 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 475: 417, 417, 417, 481: 417, 417, 417, 487: 417, 491: 417, 417, 498: 417, 506: 417, 417, 417, 572: 417, 649: 417, 417, 652: 417}, + {401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 15: 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, 485: 401, 401, 488: 401, 490: 401, 492: 401, 401, 401, 501: 401, 401, 508: 401, 401, 517: 401, 401, 581: 401, 658: 401, 660: 401, 401}, + {400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 15: 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 485: 400, 400, 488: 400, 490: 400, 492: 400, 400, 400, 501: 400, 400, 508: 400, 400, 517: 400, 400, 581: 400, 658: 400, 660: 400, 400}, + {399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 15: 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 399, 485: 399, 399, 488: 399, 490: 399, 492: 399, 399, 399, 501: 399, 399, 508: 399, 399, 517: 399, 399, 581: 399, 658: 399, 660: 399, 399}, + {398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 15: 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 485: 398, 398, 488: 398, 490: 398, 492: 398, 398, 398, 501: 398, 398, 508: 398, 398, 517: 398, 398, 581: 398, 658: 398, 660: 398, 398}, + {397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 15: 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 397, 485: 397, 397, 488: 397, 490: 397, 492: 397, 397, 397, 501: 397, 397, 508: 397, 397, 517: 397, 397, 581: 397, 658: 397, 660: 397, 397}, // 1780 - {408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 15: 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 408, 475: 408, 408, 408, 481: 408, 408, 408, 487: 408, 491: 408, 408, 498: 408, 506: 408, 408, 408, 572: 408, 649: 408, 408, 652: 408}, - {407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 15: 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 475: 407, 407, 407, 481: 407, 407, 407, 487: 407, 491: 407, 407, 498: 407, 506: 407, 407, 407, 572: 407, 649: 407, 407, 652: 407}, - {511: 2759, 737: 2758, 745: 4340}, - {418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 15: 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 475: 418, 418, 418, 481: 418, 418, 418, 487: 418, 491: 418, 418, 498: 418, 506: 418, 418, 418, 572: 418, 649: 418, 418, 652: 418}, - {511: 2759, 737: 2758, 745: 4342}, + {396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 15: 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 485: 396, 396, 488: 396, 490: 396, 492: 396, 396, 396, 501: 396, 396, 508: 396, 396, 517: 396, 396, 581: 396, 658: 396, 660: 396, 396}, + {395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 15: 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 485: 395, 395, 488: 395, 490: 395, 492: 395, 395, 395, 501: 395, 395, 508: 395, 395, 517: 395, 395, 581: 395, 658: 395, 660: 395, 395}, + {394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 15: 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 394, 485: 394, 394, 488: 394, 490: 394, 492: 394, 394, 394, 501: 394, 394, 508: 394, 394, 517: 394, 394, 581: 394, 658: 394, 660: 394, 394}, + {393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 15: 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 393, 485: 393, 393, 488: 393, 490: 393, 492: 393, 393, 393, 501: 393, 393, 508: 393, 393, 517: 393, 393, 581: 393, 658: 393, 660: 393, 393}, + {487: 4376}, // 1785 - {419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 15: 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 475: 419, 419, 419, 481: 419, 419, 419, 487: 419, 491: 419, 419, 498: 419, 506: 419, 419, 419, 572: 419, 649: 419, 419, 652: 419}, - {478: 4344}, - {420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 15: 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 475: 420, 420, 420, 481: 420, 420, 420, 487: 420, 491: 420, 420, 498: 420, 506: 420, 420, 420, 572: 420, 649: 420, 420, 652: 420}, - {478: 4346}, - {421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 15: 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 475: 421, 421, 421, 481: 421, 421, 421, 487: 421, 491: 421, 421, 498: 421, 506: 421, 421, 421, 572: 421, 649: 421, 421, 652: 421}, + {420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 15: 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 485: 420, 420, 488: 420, 490: 420, 492: 420, 420, 420, 501: 420, 420, 508: 420, 420, 517: 420, 420, 581: 420, 658: 420, 660: 420, 420}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4378, 2824, 2825, 2823}, + {498: 4379}, + {592: 4380}, + {487: 3314, 505: 3305, 521: 3309, 584: 3304, 3306, 3308, 3307, 589: 3312, 591: 3313, 603: 3311, 726: 4381, 3310}, // 1790 - {511: 3449, 576: 3451, 3450, 824: 4348}, - {422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 15: 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 475: 422, 422, 422, 481: 422, 422, 422, 487: 422, 491: 422, 422, 498: 422, 506: 422, 422, 422, 572: 422, 649: 422, 422, 652: 422}, - {511: 2759, 737: 2758, 745: 4350}, - {423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 15: 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 475: 423, 423, 423, 481: 423, 423, 423, 487: 423, 491: 423, 423, 498: 423, 506: 423, 423, 423, 572: 423, 649: 423, 423, 652: 423}, - {511: 2759, 737: 2758, 745: 4352}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 805: 3519, 820: 4382}, + {421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 15: 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 485: 421, 421, 488: 421, 490: 421, 492: 421, 421, 421, 501: 421, 421, 508: 421, 421, 517: 421, 421, 581: 421, 658: 421, 660: 421, 421}, + {487: 4385, 1056: 4384}, + {422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 15: 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 485: 422, 422, 488: 422, 490: 422, 492: 422, 422, 422, 501: 422, 422, 508: 422, 422, 517: 422, 422, 581: 422, 658: 422, 660: 422, 422}, + {12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 15: 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 485: 12, 12, 488: 12, 490: 12, 492: 12, 12, 12, 501: 12, 12, 508: 12, 12, 517: 12, 12, 12, 581: 12, 658: 12, 660: 12, 12}, // 1795 - {424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 15: 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 475: 424, 424, 424, 481: 424, 424, 424, 487: 424, 491: 424, 424, 498: 424, 506: 424, 424, 424, 572: 424, 649: 424, 424, 652: 424}, - {482: 4355, 511: 2759, 737: 2758, 745: 4354}, - {426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 15: 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 475: 426, 426, 426, 481: 426, 426, 426, 487: 426, 491: 426, 426, 498: 426, 506: 426, 426, 426, 572: 426, 649: 426, 426, 652: 426}, - {425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 15: 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 475: 425, 425, 425, 481: 425, 425, 425, 487: 425, 491: 425, 425, 498: 425, 506: 425, 425, 425, 572: 425, 649: 425, 425, 652: 425}, - {482: 4358, 511: 2759, 737: 2758, 745: 4357}, + {486: 4387}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 592, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 4388, 1169: 4389}, + {591, 591, 9: 3999, 73: 591, 488: 591}, + {73: 4390}, + {423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 15: 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 485: 423, 423, 488: 423, 490: 423, 492: 423, 423, 423, 501: 423, 423, 508: 423, 423, 517: 423, 423, 581: 423, 658: 423, 660: 423, 423}, // 1800 - {428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 15: 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 475: 428, 428, 428, 481: 428, 428, 428, 487: 428, 491: 428, 428, 498: 428, 506: 428, 428, 428, 572: 428, 649: 428, 428, 652: 428}, - {427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 15: 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 475: 427, 427, 427, 481: 427, 427, 427, 487: 427, 491: 427, 427, 498: 427, 506: 427, 427, 427, 572: 427, 649: 427, 427, 652: 427}, - {482: 4337, 511: 2759, 737: 2758, 745: 4338, 1147: 4360}, - {429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 15: 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 475: 429, 429, 429, 481: 429, 429, 429, 487: 429, 491: 429, 429, 498: 429, 506: 429, 429, 429, 572: 429, 649: 429, 429, 652: 429}, - {511: 2759, 737: 2758, 745: 4362}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 505: 4392, 676: 3566, 2824, 2825, 2823, 752: 4393}, + {425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 15: 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, 485: 425, 425, 488: 425, 490: 425, 492: 425, 425, 425, 501: 425, 425, 508: 425, 425, 517: 425, 425, 581: 425, 658: 425, 660: 425, 425}, + {424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 15: 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 485: 424, 424, 488: 424, 490: 424, 492: 424, 424, 424, 501: 424, 424, 508: 424, 424, 517: 424, 424, 581: 424, 658: 424, 660: 424, 424}, + {490: 4396, 521: 2798, 747: 2797, 755: 4397, 1161: 4395}, + {428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 15: 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 485: 428, 428, 488: 428, 490: 428, 492: 428, 428, 428, 501: 428, 428, 508: 428, 428, 517: 428, 428, 581: 428, 658: 428, 660: 428, 428}, // 1805 - {431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 15: 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 475: 431, 431, 431, 481: 431, 431, 431, 487: 431, 491: 431, 431, 498: 431, 506: 431, 431, 431, 572: 431, 649: 431, 431, 652: 431}, - {511: 2759, 737: 2758, 745: 4364}, - {432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 15: 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 475: 432, 432, 432, 481: 432, 432, 432, 487: 432, 491: 432, 432, 498: 432, 506: 432, 432, 432, 572: 432, 649: 432, 432, 652: 432}, - {478: 4366}, - {433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 15: 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 475: 433, 433, 433, 481: 433, 433, 433, 487: 433, 491: 433, 433, 498: 433, 506: 433, 433, 433, 572: 433, 649: 433, 433, 652: 433}, + {417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 15: 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 417, 485: 417, 417, 488: 417, 490: 417, 492: 417, 417, 417, 501: 417, 417, 508: 417, 417, 517: 417, 417, 581: 417, 658: 417, 660: 417, 417}, + {416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 15: 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 485: 416, 416, 488: 416, 490: 416, 492: 416, 416, 416, 501: 416, 416, 508: 416, 416, 517: 416, 416, 581: 416, 658: 416, 660: 416, 416}, + {521: 2798, 747: 2797, 755: 4399}, + {429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 15: 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 485: 429, 429, 488: 429, 490: 429, 492: 429, 429, 429, 501: 429, 429, 508: 429, 429, 517: 429, 429, 581: 429, 658: 429, 660: 429, 429}, + {521: 2798, 747: 2797, 755: 4401}, // 1810 - {478: 4368}, - {434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 15: 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 475: 434, 434, 434, 481: 434, 434, 434, 487: 434, 491: 434, 434, 498: 434, 506: 434, 434, 434, 572: 434, 649: 434, 434, 652: 434}, - {511: 2759, 737: 2758, 745: 4370}, - {435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 15: 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 475: 435, 435, 435, 481: 435, 435, 435, 487: 435, 491: 435, 435, 498: 435, 506: 435, 435, 435, 572: 435, 649: 435, 435, 652: 435}, - {511: 2759, 737: 2758, 745: 4372}, + {430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 15: 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 485: 430, 430, 488: 430, 490: 430, 492: 430, 430, 430, 501: 430, 430, 508: 430, 430, 517: 430, 430, 581: 430, 658: 430, 660: 430, 430}, + {487: 4403}, + {431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 15: 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 431, 485: 431, 431, 488: 431, 490: 431, 492: 431, 431, 431, 501: 431, 431, 508: 431, 431, 517: 431, 431, 581: 431, 658: 431, 660: 431, 431}, + {487: 4405}, + {432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 15: 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 485: 432, 432, 488: 432, 490: 432, 492: 432, 432, 432, 501: 432, 432, 508: 432, 432, 517: 432, 432, 581: 432, 658: 432, 660: 432, 432}, // 1815 - {436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 15: 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 475: 436, 436, 436, 481: 436, 436, 436, 487: 436, 491: 436, 436, 498: 436, 506: 436, 436, 436, 572: 436, 649: 436, 436, 652: 436}, - {478: 4374}, - {437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 15: 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 475: 437, 437, 437, 481: 437, 437, 437, 487: 437, 491: 437, 437, 498: 437, 506: 437, 437, 437, 572: 437, 649: 437, 437, 652: 437}, - {511: 2759, 737: 2758, 745: 4376}, - {438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 15: 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 475: 438, 438, 438, 481: 438, 438, 438, 487: 438, 491: 438, 438, 498: 438, 506: 438, 438, 438, 572: 438, 649: 438, 438, 652: 438}, + {521: 3498, 586: 3500, 3499, 834: 4407}, + {433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 15: 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 485: 433, 433, 488: 433, 490: 433, 492: 433, 433, 433, 501: 433, 433, 508: 433, 433, 517: 433, 433, 581: 433, 658: 433, 660: 433, 433}, + {521: 2798, 747: 2797, 755: 4409}, + {434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 15: 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 434, 485: 434, 434, 488: 434, 490: 434, 492: 434, 434, 434, 501: 434, 434, 508: 434, 434, 517: 434, 434, 581: 434, 658: 434, 660: 434, 434}, + {521: 2798, 747: 2797, 755: 4411}, // 1820 - {511: 2759, 737: 2758, 745: 4378}, - {440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 15: 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 475: 440, 440, 440, 481: 440, 440, 440, 487: 440, 491: 440, 440, 498: 440, 506: 440, 440, 440, 572: 440, 649: 440, 440, 652: 440}, - {502: 4307, 511: 2064, 741: 4383}, - {502: 4307, 511: 2064, 741: 4381}, - {511: 2759, 737: 2758, 745: 4382}, + {435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 15: 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 435, 485: 435, 435, 488: 435, 490: 435, 492: 435, 435, 435, 501: 435, 435, 508: 435, 435, 517: 435, 435, 581: 435, 658: 435, 660: 435, 435}, + {490: 4414, 521: 2798, 747: 2797, 755: 4413}, + {437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 15: 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 437, 485: 437, 437, 488: 437, 490: 437, 492: 437, 437, 437, 501: 437, 437, 508: 437, 437, 517: 437, 437, 581: 437, 658: 437, 660: 437, 437}, + {436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 15: 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 436, 485: 436, 436, 488: 436, 490: 436, 492: 436, 436, 436, 501: 436, 436, 508: 436, 436, 517: 436, 436, 581: 436, 658: 436, 660: 436, 436}, + {490: 4417, 521: 2798, 747: 2797, 755: 4416}, // 1825 - {439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 15: 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 475: 439, 439, 439, 481: 439, 439, 439, 487: 439, 491: 439, 439, 498: 439, 506: 439, 439, 439, 572: 439, 649: 439, 439, 652: 439}, - {511: 2759, 737: 2758, 745: 4384}, - {441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 15: 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 441, 475: 441, 441, 441, 481: 441, 441, 441, 487: 441, 491: 441, 441, 498: 441, 506: 441, 441, 441, 572: 441, 649: 441, 441, 652: 441}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 533: 2064, 741: 4389}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 533: 2064, 741: 4387}, + {439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 15: 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 439, 485: 439, 439, 488: 439, 490: 439, 492: 439, 439, 439, 501: 439, 439, 508: 439, 439, 517: 439, 439, 581: 439, 658: 439, 660: 439, 439}, + {438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 15: 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 438, 485: 438, 438, 488: 438, 490: 438, 492: 438, 438, 438, 501: 438, 438, 508: 438, 438, 517: 438, 438, 581: 438, 658: 438, 660: 438, 438}, + {490: 4396, 521: 2798, 747: 2797, 755: 4397, 1161: 4419}, + {440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 15: 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 440, 485: 440, 440, 488: 440, 490: 440, 492: 440, 440, 440, 501: 440, 440, 508: 440, 440, 517: 440, 440, 581: 440, 658: 440, 660: 440, 440}, + {521: 2798, 747: 2797, 755: 4421}, // 1830 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3515, 664: 3517, 2785, 2786, 2784, 742: 3514, 876: 4388}, - {442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 15: 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 475: 442, 442, 442, 481: 442, 442, 442, 487: 442, 491: 442, 442, 498: 442, 506: 442, 442, 442, 572: 442, 649: 442, 442, 652: 442}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 4390}, - {443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 15: 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 475: 443, 443, 443, 481: 443, 443, 443, 487: 443, 491: 443, 443, 498: 443, 506: 443, 443, 443, 572: 443, 649: 443, 443, 652: 443}, - {511: 2759, 737: 2758, 745: 4392}, + {442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 15: 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 485: 442, 442, 488: 442, 490: 442, 492: 442, 442, 442, 501: 442, 442, 508: 442, 442, 517: 442, 442, 581: 442, 658: 442, 660: 442, 442}, + {521: 2798, 747: 2797, 755: 4423}, + {443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 15: 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443, 485: 443, 443, 488: 443, 490: 443, 492: 443, 443, 443, 501: 443, 443, 508: 443, 443, 517: 443, 443, 581: 443, 658: 443, 660: 443, 443}, + {487: 4425}, + {444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 15: 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 485: 444, 444, 488: 444, 490: 444, 492: 444, 444, 444, 501: 444, 444, 508: 444, 444, 517: 444, 444, 581: 444, 658: 444, 660: 444, 444}, // 1835 - {2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 15: 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 2138, 50: 2138, 475: 2138, 2138, 2138, 481: 2138, 2138, 2138, 487: 2138, 491: 2138, 2138, 498: 2138, 506: 2138, 2138, 2138, 572: 2138, 649: 2138, 2138, 652: 2138}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4394, 2785, 2786, 2784}, - {2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 15: 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 2139, 50: 2139, 475: 2139, 2139, 2139, 481: 2139, 2139, 2139, 487: 2139, 491: 2139, 2139, 498: 2139, 506: 2139, 2139, 2139, 572: 2139, 649: 2139, 2139, 652: 2139}, - {511: 2759, 737: 2758, 745: 4396}, - {2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 15: 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 2140, 50: 2140, 475: 2140, 2140, 2140, 481: 2140, 2140, 2140, 487: 2140, 491: 2140, 2140, 498: 2140, 506: 2140, 2140, 2140, 572: 2140, 649: 2140, 2140, 652: 2140}, + {487: 4427}, + {445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 15: 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 485: 445, 445, 488: 445, 490: 445, 492: 445, 445, 445, 501: 445, 445, 508: 445, 445, 517: 445, 445, 581: 445, 658: 445, 660: 445, 445}, + {521: 2798, 747: 2797, 755: 4429}, + {446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 15: 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 485: 446, 446, 488: 446, 490: 446, 492: 446, 446, 446, 501: 446, 446, 508: 446, 446, 517: 446, 446, 581: 446, 658: 446, 660: 446, 446}, + {521: 2798, 747: 2797, 755: 4431}, // 1840 - {511: 2759, 737: 2758, 745: 4398}, - {2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 15: 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 2141, 50: 2141, 475: 2141, 2141, 2141, 481: 2141, 2141, 2141, 487: 2141, 491: 2141, 2141, 498: 2141, 506: 2141, 2141, 2141, 572: 2141, 649: 2141, 2141, 652: 2141}, - {478: 2064, 502: 4307, 741: 4400}, - {478: 4401}, - {2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 15: 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 2142, 50: 2142, 475: 2142, 2142, 2142, 481: 2142, 2142, 2142, 487: 2142, 491: 2142, 2142, 498: 2142, 506: 2142, 2142, 2142, 572: 2142, 649: 2142, 2142, 652: 2142}, + {447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 15: 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, 485: 447, 447, 488: 447, 490: 447, 492: 447, 447, 447, 501: 447, 447, 508: 447, 447, 517: 447, 447, 581: 447, 658: 447, 660: 447, 447}, + {487: 4433}, + {448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 15: 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 485: 448, 448, 488: 448, 490: 448, 492: 448, 448, 448, 501: 448, 448, 508: 448, 448, 517: 448, 448, 581: 448, 658: 448, 660: 448, 448}, + {521: 2798, 747: 2797, 755: 4435}, + {449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 15: 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 485: 449, 449, 488: 449, 490: 449, 492: 449, 449, 449, 501: 449, 449, 508: 449, 449, 517: 449, 449, 581: 449, 658: 449, 660: 449, 449}, // 1845 - {478: 2064, 502: 4307, 741: 4403}, - {478: 4404}, - {2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 15: 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 2143, 50: 2143, 475: 2143, 2143, 2143, 481: 2143, 2143, 2143, 487: 2143, 491: 2143, 2143, 498: 2143, 506: 2143, 2143, 2143, 572: 2143, 649: 2143, 2143, 652: 2143}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 664: 3517, 2785, 2786, 2784, 742: 4406}, - {2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 15: 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 2144, 50: 2144, 475: 2144, 2144, 2144, 481: 2144, 2144, 2144, 487: 2144, 491: 2144, 2144, 498: 2144, 506: 2144, 2144, 2144, 572: 2144, 649: 2144, 2144, 652: 2144}, + {521: 2798, 747: 2797, 755: 4437}, + {451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 15: 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 485: 451, 451, 488: 451, 490: 451, 492: 451, 451, 451, 501: 451, 451, 508: 451, 451, 517: 451, 451, 581: 451, 658: 451, 660: 451, 451}, + {512: 4358, 521: 2088, 750: 4442}, + {512: 4358, 521: 2088, 750: 4440}, + {521: 2798, 747: 2797, 755: 4441}, // 1850 - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 741: 4410}, - {416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 15: 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 475: 416, 416, 416, 481: 416, 416, 416, 487: 416, 491: 416, 416, 498: 416, 506: 416, 416, 416, 572: 416, 649: 416, 416, 652: 416}, - {415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 15: 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 415, 475: 415, 415, 415, 481: 415, 415, 415, 487: 415, 491: 415, 415, 498: 415, 506: 415, 415, 415, 572: 415, 649: 415, 415, 652: 415}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 664: 3517, 2785, 2786, 2784, 742: 4411}, - {2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 15: 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 2145, 50: 2145, 475: 2145, 2145, 2145, 481: 2145, 2145, 2145, 487: 2145, 491: 2145, 2145, 498: 2145, 506: 2145, 2145, 2145, 572: 2145, 649: 2145, 2145, 652: 2145}, + {450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 15: 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 485: 450, 450, 488: 450, 490: 450, 492: 450, 450, 450, 501: 450, 450, 508: 450, 450, 517: 450, 450, 581: 450, 658: 450, 660: 450, 450}, + {521: 2798, 747: 2797, 755: 4443}, + {452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 15: 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 485: 452, 452, 488: 452, 490: 452, 492: 452, 452, 452, 501: 452, 452, 508: 452, 452, 517: 452, 452, 581: 452, 658: 452, 660: 452, 452}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 543: 2088, 750: 4448}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 543: 2088, 750: 4446}, // 1855 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 664: 3517, 2785, 2786, 2784, 742: 4413}, - {2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 15: 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 2146, 50: 2146, 475: 2146, 2146, 2146, 481: 2146, 2146, 2146, 487: 2146, 491: 2146, 2146, 498: 2146, 506: 2146, 2146, 2146, 572: 2146, 649: 2146, 2146, 652: 2146}, - {478: 4415}, - {2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 15: 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 50: 2147, 475: 2147, 2147, 2147, 481: 2147, 2147, 2147, 487: 2147, 491: 2147, 2147, 498: 2147, 506: 2147, 2147, 2147, 572: 2147, 649: 2147, 2147, 652: 2147}, - {6: 4267, 4269, 410, 10: 4236, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 72: 4238, 75: 4259, 4260, 84: 4261, 140: 4241, 185: 4230, 205: 4224, 207: 4245, 210: 4246, 221: 4240, 227: 4256, 240: 4234, 249: 4242, 255: 4237, 272: 4247, 280: 4243, 287: 4257, 4258, 292: 4225, 477: 4255, 482: 4266, 4303, 487: 2193, 500: 4262, 505: 4244, 4254, 508: 2193, 4227, 587: 4228, 593: 4233, 650: 2193, 652: 4272, 668: 4249, 672: 4235, 674: 4263, 683: 4248, 690: 4250, 693: 4229, 708: 4239, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 4305, 874: 4253, 887: 4251, 924: 4226, 931: 4231, 994: 4417, 1146: 4232, 1174: 4252}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3564, 676: 3566, 2824, 2825, 2823, 752: 3563, 887: 4447}, + {453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 15: 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 453, 485: 453, 453, 488: 453, 490: 453, 492: 453, 453, 453, 501: 453, 453, 508: 453, 453, 517: 453, 453, 581: 453, 658: 453, 660: 453, 453}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 4449}, + {454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 15: 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 454, 485: 454, 454, 488: 454, 490: 454, 492: 454, 454, 454, 501: 454, 454, 508: 454, 454, 517: 454, 454, 581: 454, 658: 454, 660: 454, 454}, + {521: 2798, 747: 2797, 755: 4451}, // 1860 - {2429, 2429, 2429, 2429, 2429, 2429, 9: 2429, 491: 2429}, - {2443, 2443, 2443, 2443, 2443, 2443, 9: 2443, 491: 2443}, - {2442, 2442, 2442, 2442, 2442, 2442, 9: 2442, 491: 2442}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 482: 4421, 664: 4422, 2785, 2786, 2784}, - {2445, 2445, 2445, 2445, 2445, 2445, 9: 2445, 84: 2445, 491: 2445}, + {2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 15: 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 2162, 73: 2162, 485: 2162, 2162, 488: 2162, 490: 2162, 492: 2162, 2162, 2162, 501: 2162, 2162, 508: 2162, 2162, 517: 2162, 2162, 581: 2162, 658: 2162, 660: 2162, 2162}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4453, 2824, 2825, 2823}, + {2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 15: 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 2163, 73: 2163, 485: 2163, 2163, 488: 2163, 490: 2163, 492: 2163, 2163, 2163, 501: 2163, 2163, 508: 2163, 2163, 517: 2163, 2163, 581: 2163, 658: 2163, 660: 2163, 2163}, + {521: 2798, 747: 2797, 755: 4455}, + {2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 15: 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 2164, 73: 2164, 485: 2164, 2164, 488: 2164, 490: 2164, 492: 2164, 2164, 2164, 501: 2164, 2164, 508: 2164, 2164, 517: 2164, 2164, 581: 2164, 658: 2164, 660: 2164, 2164}, // 1865 - {2444, 2444, 2444, 2444, 2444, 2444, 9: 2444, 84: 2444, 491: 2444}, - {130: 4428, 243: 4425, 264: 4426, 266: 4427, 482: 4424}, - {2450, 2450, 2450, 2450, 2450, 2450, 9: 2450, 491: 2450, 500: 2450}, - {2449, 2449, 2449, 2449, 2449, 2449, 9: 2449, 491: 2449, 500: 2449}, - {2448, 2448, 2448, 2448, 2448, 2448, 9: 2448, 491: 2448, 500: 2448}, + {521: 2798, 747: 2797, 755: 4457}, + {2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 15: 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 2165, 73: 2165, 485: 2165, 2165, 488: 2165, 490: 2165, 492: 2165, 2165, 2165, 501: 2165, 2165, 508: 2165, 2165, 517: 2165, 2165, 581: 2165, 658: 2165, 660: 2165, 2165}, + {487: 2088, 512: 4358, 750: 4459}, + {487: 4460}, + {2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 15: 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 2166, 73: 2166, 485: 2166, 2166, 488: 2166, 490: 2166, 492: 2166, 2166, 2166, 501: 2166, 2166, 508: 2166, 2166, 517: 2166, 2166, 581: 2166, 658: 2166, 660: 2166, 2166}, // 1870 - {2447, 2447, 2447, 2447, 2447, 2447, 9: 2447, 491: 2447, 500: 2447}, - {2446, 2446, 2446, 2446, 2446, 2446, 9: 2446, 491: 2446, 500: 2446}, - {2468, 2468, 2468, 2468, 2468, 2468, 9: 2468, 491: 2468}, - {2469, 2469, 2469, 2469, 2469, 2469, 9: 2469, 491: 2469}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4444, 2785, 2786, 2784}, + {487: 2088, 512: 4358, 750: 4462}, + {487: 4463}, + {2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 15: 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 2167, 73: 2167, 485: 2167, 2167, 488: 2167, 490: 2167, 492: 2167, 2167, 2167, 501: 2167, 2167, 508: 2167, 2167, 517: 2167, 2167, 581: 2167, 658: 2167, 660: 2167, 2167}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 676: 3566, 2824, 2825, 2823, 752: 4465}, + {2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 15: 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 2168, 73: 2168, 485: 2168, 2168, 488: 2168, 490: 2168, 492: 2168, 2168, 2168, 501: 2168, 2168, 508: 2168, 2168, 517: 2168, 2168, 581: 2168, 658: 2168, 660: 2168, 2168}, // 1875 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4443}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4442}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4441}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4438, 2785, 2786, 2784}, - {2: 2441, 2441, 2441, 2441, 2441, 2441, 2441, 10: 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 51: 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 2441, 476: 2441, 484: 2441, 497: 2441, 567: 2441}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 750: 4469}, + {427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 15: 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 485: 427, 427, 488: 427, 490: 427, 492: 427, 427, 427, 501: 427, 427, 508: 427, 427, 517: 427, 427, 581: 427, 658: 427, 660: 427, 427}, + {426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 15: 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 485: 426, 426, 488: 426, 490: 426, 492: 426, 426, 426, 501: 426, 426, 508: 426, 426, 517: 426, 426, 581: 426, 658: 426, 660: 426, 426}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 676: 3566, 2824, 2825, 2823, 752: 4470}, + {2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 15: 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 2169, 73: 2169, 485: 2169, 2169, 488: 2169, 490: 2169, 492: 2169, 2169, 2169, 501: 2169, 2169, 508: 2169, 2169, 517: 2169, 2169, 581: 2169, 658: 2169, 660: 2169, 2169}, // 1880 - {2: 2440, 2440, 2440, 2440, 2440, 2440, 2440, 10: 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 51: 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 2440, 476: 2440, 484: 2440, 497: 2440, 567: 2440}, - {653: 4439}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4440, 2785, 2786, 2784}, - {2474, 2474, 2474, 2474, 2474, 2474, 9: 2474, 491: 2474}, - {2475, 2475, 2475, 2475, 2475, 2475, 9: 2475, 491: 2475}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 676: 3566, 2824, 2825, 2823, 752: 4472}, + {2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 15: 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 2170, 73: 2170, 485: 2170, 2170, 488: 2170, 490: 2170, 492: 2170, 2170, 2170, 501: 2170, 2170, 508: 2170, 2170, 517: 2170, 2170, 581: 2170, 658: 2170, 660: 2170, 2170}, + {487: 4474}, + {2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 15: 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 2171, 73: 2171, 485: 2171, 2171, 488: 2171, 490: 2171, 492: 2171, 2171, 2171, 501: 2171, 2171, 508: 2171, 2171, 517: 2171, 2171, 581: 2171, 658: 2171, 660: 2171, 2171}, + {6: 4316, 4318, 419, 10: 4285, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 74: 4287, 77: 4308, 4309, 86: 4310, 147: 4290, 192: 4279, 213: 4273, 215: 4294, 218: 4295, 228: 4289, 235: 4305, 249: 4283, 258: 4291, 264: 4286, 281: 4296, 289: 4292, 296: 4306, 4307, 301: 4274, 488: 4304, 490: 4315, 493: 2217, 4352, 508: 2217, 511: 4311, 516: 4293, 518: 4303, 4276, 597: 4277, 604: 4282, 660: 2217, 4321, 674: 4298, 682: 4284, 684: 4312, 693: 4297, 700: 4299, 703: 4278, 718: 4288, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 4356, 885: 4302, 899: 4300, 935: 4275, 942: 4280, 1005: 4476, 1160: 4281, 1188: 4301}, // 1885 - {2476, 2476, 2476, 2476, 2476, 2476, 9: 2476, 491: 2476}, - {2477, 2477, 2477, 2477, 2477, 2477, 9: 2477, 491: 2477}, - {653: 4445}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4446, 2785, 2786, 2784}, - {2478, 2478, 2478, 2478, 2478, 2478, 9: 2478, 491: 2478}, + {2454, 2454, 2454, 2454, 2454, 2454, 9: 2454, 501: 2454}, + {2468, 2468, 2468, 2468, 2468, 2468, 9: 2468, 501: 2468}, + {2467, 2467, 2467, 2467, 2467, 2467, 9: 2467, 501: 2467}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 490: 4480, 676: 4481, 2824, 2825, 2823}, + {2470, 2470, 2470, 2470, 2470, 2470, 9: 2470, 86: 2470, 501: 2470}, // 1890 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4462}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4457, 2785, 2786, 2784}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4453, 2785, 2786, 2784}, - {2: 2436, 2436, 2436, 2436, 2436, 2436, 2436, 10: 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 51: 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 2436, 476: 2436, 567: 2436}, - {2: 452, 452, 452, 452, 452, 452, 452, 10: 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 51: 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452}, + {2469, 2469, 2469, 2469, 2469, 2469, 9: 2469, 86: 2469, 501: 2469}, + {137: 4487, 252: 4484, 273: 4485, 275: 4486, 490: 4483}, + {2475, 2475, 2475, 2475, 2475, 2475, 9: 2475, 501: 2475, 511: 2475}, + {2474, 2474, 2474, 2474, 2474, 2474, 9: 2474, 501: 2474, 511: 2474}, + {2473, 2473, 2473, 2473, 2473, 2473, 9: 2473, 501: 2473, 511: 2473}, // 1895 - {2: 451, 451, 451, 451, 451, 451, 451, 10: 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 51: 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451, 451}, - {87: 4456, 90: 4455, 860: 4454}, - {2463, 2463, 2463, 2463, 2463, 2463, 9: 2463, 491: 2463}, - {1851, 1851, 1851, 1851, 1851, 1851, 1851, 9: 1851, 19: 1851, 50: 1851, 84: 1851, 1851, 1851, 1851, 1851, 90: 1851, 477: 1851, 484: 1851, 491: 1851, 500: 1851}, - {1850, 1850, 1850, 1850, 1850, 1850, 1850, 9: 1850, 19: 1850, 50: 1850, 84: 1850, 1850, 1850, 1850, 1850, 90: 1850, 477: 1850, 484: 1850, 491: 1850, 500: 1850}, + {2472, 2472, 2472, 2472, 2472, 2472, 9: 2472, 501: 2472, 511: 2472}, + {2471, 2471, 2471, 2471, 2471, 2471, 9: 2471, 501: 2471, 511: 2471}, + {2493, 2493, 2493, 2493, 2493, 2493, 9: 2493, 501: 2493}, + {2494, 2494, 2494, 2494, 2494, 2494, 9: 2494, 501: 2494}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4503, 2824, 2825, 2823}, // 1900 - {152: 4459, 479: 4115, 4114, 815: 4460, 939: 4458}, - {2465, 2465, 2465, 2465, 2465, 2465, 9: 2465, 491: 2465}, - {2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 50: 2329, 475: 2329, 479: 2329, 2329, 2329, 2329, 487: 2329, 491: 2329, 495: 2329, 584: 2329, 593: 2329, 2329, 645: 2329, 2329, 2329, 2329}, - {152: 4461}, - {2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 50: 2328, 475: 2328, 479: 2328, 2328, 2328, 2328, 487: 2328, 491: 2328, 495: 2328, 584: 2328, 593: 2328, 2328, 645: 2328, 2328, 2328, 2328}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4502}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4501}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4500}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4497, 2824, 2825, 2823}, + {2: 2466, 2466, 2466, 2466, 2466, 2466, 2466, 10: 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 74: 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 2466, 486: 2466, 495: 2466, 507: 2466, 577: 2466}, // 1905 - {509: 4463, 672: 4464}, - {482: 4466}, - {482: 4465}, - {2479, 2479, 2479, 2479, 2479, 2479, 9: 2479, 491: 2479}, - {476: 4468, 478: 3265, 488: 4470, 4471, 495: 3256, 511: 3260, 574: 3255, 3257, 3259, 3258, 579: 3263, 583: 3264, 595: 3262, 716: 4469, 3261, 1142: 4467}, + {2: 2465, 2465, 2465, 2465, 2465, 2465, 2465, 10: 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 74: 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 2465, 486: 2465, 495: 2465, 507: 2465, 577: 2465}, + {663: 4498}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4499, 2824, 2825, 2823}, + {2499, 2499, 2499, 2499, 2499, 2499, 9: 2499, 501: 2499}, + {2500, 2500, 2500, 2500, 2500, 2500, 9: 2500, 501: 2500}, // 1910 - {2481, 2481, 2481, 2481, 2481, 2481, 9: 2481, 491: 2481}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4474}, - {2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 2242, 50: 2242, 475: 2242, 479: 2242, 2242, 2242, 2242, 487: 2242, 491: 2242, 495: 2242, 584: 2242, 593: 2242, 2242, 645: 2242, 2242, 2242, 2242}, - {511: 3449, 576: 3451, 3450, 824: 4473}, - {511: 3449, 576: 3451, 3450, 824: 4472}, + {2501, 2501, 2501, 2501, 2501, 2501, 9: 2501, 501: 2501}, + {2502, 2502, 2502, 2502, 2502, 2502, 9: 2502, 501: 2502}, + {663: 4504}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4505, 2824, 2825, 2823}, + {2503, 2503, 2503, 2503, 2503, 2503, 9: 2503, 501: 2503}, // 1915 - {2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 2240, 50: 2240, 475: 2240, 479: 2240, 2240, 2240, 2240, 487: 2240, 491: 2240, 495: 2240, 584: 2240, 593: 2240, 2240, 645: 2240, 2240, 2240, 2240}, - {2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 50: 2241, 475: 2241, 479: 2241, 2241, 2241, 2241, 487: 2241, 491: 2241, 495: 2241, 584: 2241, 593: 2241, 2241, 645: 2241, 2241, 2241, 2241}, - {50: 4475, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2480, 2480, 2480, 2480, 2480, 2480, 9: 2480, 491: 2480}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4477}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4521}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4516, 2824, 2825, 2823}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4512, 2824, 2825, 2823}, + {2: 2461, 2461, 2461, 2461, 2461, 2461, 2461, 10: 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 74: 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 486: 2461, 577: 2461}, + {2: 463, 463, 463, 463, 463, 463, 463, 10: 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 74: 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463}, // 1920 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4480}, - {586: 4479}, - {1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 51: 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 1876, 478: 1876, 491: 1876, 573: 1876}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4482, 853: 4481}, - {2435, 2435, 2435, 2435, 2435, 2435, 9: 2435, 4757, 4758, 491: 2435, 934: 4756}, + {2: 462, 462, 462, 462, 462, 462, 462, 10: 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 74: 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462}, + {89: 4515, 92: 4514, 870: 4513}, + {2488, 2488, 2488, 2488, 2488, 2488, 9: 2488, 501: 2488}, + {1874, 1874, 1874, 1874, 1874, 1874, 1874, 9: 1874, 19: 1874, 73: 1874, 86: 1874, 1874, 1874, 1874, 1874, 92: 1874, 488: 1874, 495: 1874, 501: 1874, 511: 1874}, + {1873, 1873, 1873, 1873, 1873, 1873, 1873, 9: 1873, 19: 1873, 73: 1873, 86: 1873, 1873, 1873, 1873, 1873, 92: 1873, 488: 1873, 495: 1873, 501: 1873, 511: 1873}, // 1925 - {12: 4484, 105: 4532, 110: 4533, 173: 4523, 180: 4543, 4542, 4508, 202: 4545, 226: 4544, 233: 4505, 318: 4512, 4504, 340: 4521, 362: 4528, 4527, 366: 4531, 402: 4539, 508: 4526, 4522, 533: 4517, 650: 4525, 681: 4530, 4529, 684: 4506, 4511, 4509, 4502, 4496, 4510, 692: 4518, 694: 4503, 4535, 4497, 4498, 4499, 4500, 4501, 4524, 4537, 4541, 4536, 4495, 4540, 4507, 709: 4494, 4534, 4493, 4538, 906: 4513, 1166: 4515, 1191: 4492, 4519, 4489, 1211: 4487, 1226: 4490, 4491, 1245: 4488, 1263: 4514, 1265: 4485, 4516, 1324: 4486, 1336: 4520, 1339: 4483, 1364: 4546}, - {2289, 2289, 2289, 2289, 2289, 2289, 4626, 4632, 4620, 2289, 2289, 2289, 4624, 4633, 4631, 50: 2289, 475: 4625, 479: 4115, 4114, 2296, 4623, 487: 4630, 491: 2289, 495: 4619, 584: 2333, 593: 2426, 4617, 645: 4622, 4615, 4637, 4634, 815: 4618, 837: 4627, 915: 4629, 933: 4635, 942: 4628, 961: 4621, 1007: 4636, 4755}, - {2289, 2289, 2289, 2289, 2289, 2289, 4626, 4632, 4620, 2289, 2289, 2289, 4624, 4633, 4631, 50: 2289, 475: 4625, 479: 4115, 4114, 2296, 4623, 487: 4630, 491: 2289, 495: 4619, 584: 2333, 593: 2426, 4617, 645: 4622, 4615, 4637, 4634, 815: 4618, 837: 4627, 915: 4629, 933: 4635, 942: 4628, 961: 4621, 1007: 4636, 4616}, - {383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 50: 383, 475: 383, 479: 383, 383, 383, 383, 487: 383, 491: 383, 495: 383, 584: 383, 593: 383, 383, 645: 383, 383, 383, 383}, - {382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 50: 382, 475: 382, 479: 382, 382, 382, 382, 487: 382, 491: 382, 495: 382, 584: 382, 593: 382, 382, 645: 382, 382, 382, 382}, + {159: 4518, 489: 4164, 491: 4163, 826: 4519, 950: 4517}, + {2490, 2490, 2490, 2490, 2490, 2490, 9: 2490, 501: 2490}, + {2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 2354, 73: 2354, 485: 2354, 489: 2354, 2354, 2354, 2354, 2354, 501: 2354, 505: 2354, 594: 2354, 604: 2354, 2354, 655: 2354, 2354, 2354, 659: 2354}, + {159: 4520}, + {2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 2353, 73: 2353, 485: 2353, 489: 2353, 2353, 2353, 2353, 2353, 501: 2353, 505: 2353, 594: 2353, 604: 2353, 2353, 655: 2353, 2353, 2353, 659: 2353}, // 1930 - {381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 50: 381, 475: 381, 479: 381, 381, 381, 381, 487: 381, 491: 381, 495: 381, 584: 381, 593: 381, 381, 645: 381, 381, 381, 381}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 52: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 744: 298, 747: 298, 768: 3853, 794: 4613}, - {293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 50: 293, 52: 293, 475: 293, 479: 293, 293, 293, 293, 487: 293, 491: 293, 495: 293, 584: 293, 593: 293, 293, 645: 293, 293, 293, 293, 744: 293, 747: 293, 880: 4612}, - {291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 50: 291, 52: 291, 475: 291, 3839, 479: 291, 291, 291, 291, 487: 291, 491: 291, 495: 291, 584: 291, 593: 291, 291, 645: 291, 291, 291, 291, 744: 291, 747: 291, 768: 3840, 909: 4610, 914: 3841}, - {291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 291, 50: 291, 52: 291, 475: 291, 3839, 479: 291, 291, 291, 291, 487: 291, 491: 291, 495: 291, 584: 291, 593: 291, 291, 645: 291, 291, 291, 291, 744: 291, 747: 291, 768: 3840, 909: 4608, 914: 3841}, + {519: 4522, 682: 4523}, + {490: 4525}, + {490: 4524}, + {2504, 2504, 2504, 2504, 2504, 2504, 9: 2504, 501: 2504}, + {486: 4527, 3314, 498: 4529, 4530, 505: 3305, 521: 3309, 584: 3304, 3306, 3308, 3307, 589: 3312, 591: 3313, 603: 3311, 726: 4528, 3310, 1156: 4526}, // 1935 - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 768: 3853, 794: 4607}, - {375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 50: 375, 52: 375, 475: 375, 375, 479: 375, 375, 375, 375, 487: 375, 491: 375, 495: 375, 584: 375, 593: 375, 375, 645: 375, 375, 375, 375, 744: 375, 747: 375}, - {374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 50: 374, 52: 374, 475: 374, 374, 479: 374, 374, 374, 374, 487: 374, 491: 374, 495: 374, 584: 374, 593: 374, 374, 645: 374, 374, 374, 374, 744: 374, 747: 374}, - {373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 50: 373, 52: 373, 475: 373, 373, 479: 373, 373, 373, 373, 487: 373, 491: 373, 495: 373, 584: 373, 593: 373, 373, 645: 373, 373, 373, 373, 744: 373, 747: 373}, - {372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 50: 372, 52: 372, 475: 372, 372, 479: 372, 372, 372, 372, 487: 372, 491: 372, 495: 372, 584: 372, 593: 372, 372, 645: 372, 372, 372, 372, 744: 372, 747: 372}, + {2506, 2506, 2506, 2506, 2506, 2506, 9: 2506, 501: 2506}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4533}, + {2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 73: 2267, 485: 2267, 489: 2267, 2267, 2267, 2267, 2267, 501: 2267, 505: 2267, 594: 2267, 604: 2267, 2267, 655: 2267, 2267, 2267, 659: 2267}, + {521: 3498, 586: 3500, 3499, 834: 4532}, + {521: 3498, 586: 3500, 3499, 834: 4531}, // 1940 - {371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 371, 50: 371, 52: 371, 475: 371, 371, 479: 371, 371, 371, 371, 487: 371, 491: 371, 495: 371, 584: 371, 593: 371, 371, 645: 371, 371, 371, 371, 744: 371, 747: 371}, - {370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 370, 50: 370, 52: 370, 475: 370, 370, 479: 370, 370, 370, 370, 487: 370, 491: 370, 495: 370, 584: 370, 593: 370, 370, 645: 370, 370, 370, 370, 744: 370, 747: 370}, - {369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 50: 369, 52: 369, 475: 369, 369, 479: 369, 369, 369, 369, 487: 369, 491: 369, 495: 369, 584: 369, 593: 369, 369, 645: 369, 369, 369, 369, 744: 369, 747: 369}, - {368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 50: 368, 52: 368, 475: 368, 368, 479: 368, 368, 368, 368, 487: 368, 491: 368, 495: 368, 584: 368, 593: 368, 368, 645: 368, 368, 368, 368, 744: 368, 747: 368}, - {367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 50: 367, 52: 367, 475: 367, 367, 479: 367, 367, 367, 367, 487: 367, 491: 367, 495: 367, 584: 367, 593: 367, 367, 645: 367, 367, 367, 367, 744: 367, 747: 367}, + {2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 73: 2265, 485: 2265, 489: 2265, 2265, 2265, 2265, 2265, 501: 2265, 505: 2265, 594: 2265, 604: 2265, 2265, 655: 2265, 2265, 2265, 659: 2265}, + {2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 73: 2266, 485: 2266, 489: 2266, 2266, 2266, 2266, 2266, 501: 2266, 505: 2266, 594: 2266, 604: 2266, 2266, 655: 2266, 2266, 2266, 659: 2266}, + {73: 4534, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2505, 2505, 2505, 2505, 2505, 2505, 9: 2505, 501: 2505}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4536}, // 1945 - {366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 50: 366, 52: 366, 475: 366, 366, 479: 366, 366, 366, 366, 487: 366, 491: 366, 495: 366, 584: 366, 593: 366, 366, 645: 366, 366, 366, 366, 744: 366, 747: 366}, - {365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 50: 365, 52: 365, 475: 365, 365, 479: 365, 365, 365, 365, 487: 365, 491: 365, 495: 365, 584: 365, 593: 365, 365, 645: 365, 365, 365, 365, 744: 365, 747: 365}, - {364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 50: 364, 52: 364, 475: 364, 479: 364, 364, 364, 364, 487: 364, 491: 364, 495: 364, 584: 364, 593: 364, 364, 645: 364, 364, 364, 364, 744: 364, 747: 364}, - {363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 50: 363, 52: 363, 475: 363, 479: 363, 363, 363, 363, 487: 363, 491: 363, 495: 363, 584: 363, 593: 363, 363, 645: 363, 363, 363, 363, 744: 363, 747: 363}, - {359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 50: 359, 52: 359, 475: 359, 359, 479: 359, 359, 359, 359, 487: 359, 491: 359, 495: 359, 584: 359, 593: 359, 359, 645: 359, 359, 359, 359, 744: 359, 747: 359}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4539}, + {596: 4538}, + {1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 74: 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 1899, 487: 1899, 501: 1899, 583: 1899}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4541, 863: 4540}, + {2460, 2460, 2460, 2460, 2460, 2460, 9: 2460, 4816, 4817, 501: 2460, 945: 4815}, // 1950 - {358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 50: 358, 52: 358, 475: 358, 358, 479: 358, 358, 358, 358, 487: 358, 491: 358, 495: 358, 584: 358, 593: 358, 358, 645: 358, 358, 358, 358, 744: 358, 747: 358}, - {357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 50: 357, 52: 357, 475: 357, 357, 479: 357, 357, 357, 357, 487: 357, 491: 357, 495: 357, 584: 357, 593: 357, 357, 645: 357, 357, 357, 357, 744: 357, 747: 357}, - {356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 50: 356, 52: 356, 475: 356, 356, 479: 356, 356, 356, 356, 487: 356, 491: 356, 495: 356, 584: 356, 593: 356, 356, 645: 356, 356, 356, 356, 744: 356, 747: 356}, - {355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 50: 355, 52: 355, 475: 355, 355, 479: 355, 355, 355, 355, 487: 355, 491: 355, 495: 355, 584: 355, 593: 355, 355, 645: 355, 355, 355, 355, 744: 355, 747: 355}, - {354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 50: 354, 52: 354, 475: 354, 354, 479: 354, 354, 354, 354, 487: 354, 491: 354, 495: 354, 584: 354, 593: 354, 354, 645: 354, 354, 354, 354, 744: 354, 747: 354, 1289: 4606}, + {12: 4543, 108: 4591, 110: 4592, 180: 4582, 187: 4602, 4601, 4567, 210: 4604, 234: 4603, 241: 4564, 328: 4571, 4563, 349: 4580, 370: 4587, 4586, 375: 4590, 412: 4598, 508: 4585, 519: 4581, 543: 4576, 660: 4584, 691: 4589, 4588, 694: 4565, 4570, 4568, 4561, 4555, 4569, 702: 4577, 704: 4562, 4594, 4556, 4557, 4558, 4559, 4560, 4583, 4596, 4600, 4595, 4554, 4599, 4566, 719: 4553, 4593, 4552, 4597, 917: 4572, 1180: 4574, 1205: 4551, 4578, 4548, 1224: 4546, 1239: 4549, 4550, 1258: 4547, 1276: 4573, 1278: 4544, 4575, 1337: 4545, 1349: 4579, 1352: 4542, 1377: 4605}, + {2314, 2314, 2314, 2314, 2314, 2314, 4685, 4691, 4679, 2314, 2314, 2314, 4683, 4692, 4690, 73: 2314, 485: 4684, 489: 4164, 4682, 4163, 2321, 4689, 501: 2314, 505: 4678, 594: 2358, 604: 2451, 4676, 655: 4681, 4674, 4696, 659: 4693, 826: 4677, 847: 4686, 926: 4688, 944: 4694, 953: 4687, 971: 4680, 1018: 4695, 4814}, + {2314, 2314, 2314, 2314, 2314, 2314, 4685, 4691, 4679, 2314, 2314, 2314, 4683, 4692, 4690, 73: 2314, 485: 4684, 489: 4164, 4682, 4163, 2321, 4689, 501: 2314, 505: 4678, 594: 2358, 604: 2451, 4676, 655: 4681, 4674, 4696, 659: 4693, 826: 4677, 847: 4686, 926: 4688, 944: 4694, 953: 4687, 971: 4680, 1018: 4695, 4675}, + {392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 392, 73: 392, 485: 392, 489: 392, 392, 392, 392, 392, 501: 392, 505: 392, 594: 392, 604: 392, 392, 655: 392, 392, 392, 659: 392}, + {391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 391, 73: 391, 485: 391, 489: 391, 391, 391, 391, 391, 501: 391, 505: 391, 594: 391, 604: 391, 391, 655: 391, 391, 391, 659: 391}, // 1955 - {352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 50: 352, 475: 352, 352, 479: 352, 352, 352, 352, 487: 352, 491: 352, 495: 352, 584: 352, 593: 352, 352, 645: 352, 352, 352, 352}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 475: 285, 3852, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 768: 4603, 779: 3860, 803: 4604}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 475: 285, 3852, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 768: 4600, 779: 3860, 803: 4601}, - {476: 3852, 768: 4598}, - {476: 3852, 768: 4596}, + {390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 73: 390, 485: 390, 489: 390, 390, 390, 390, 390, 501: 390, 505: 390, 594: 390, 604: 390, 390, 655: 390, 390, 390, 659: 390}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 53: 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 754: 307, 757: 307, 778: 3902, 804: 4672}, + {302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 53: 302, 73: 302, 485: 302, 489: 302, 302, 302, 302, 302, 501: 302, 505: 302, 594: 302, 604: 302, 302, 655: 302, 302, 302, 659: 302, 754: 302, 757: 302, 892: 4671}, + {300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 53: 300, 73: 300, 485: 300, 3888, 489: 300, 300, 300, 300, 300, 501: 300, 505: 300, 594: 300, 604: 300, 300, 655: 300, 300, 300, 659: 300, 754: 300, 757: 300, 778: 3889, 920: 4669, 925: 3890}, + {300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 53: 300, 73: 300, 485: 300, 3888, 489: 300, 300, 300, 300, 300, 501: 300, 505: 300, 594: 300, 604: 300, 300, 655: 300, 300, 300, 659: 300, 754: 300, 757: 300, 778: 3889, 920: 4667, 925: 3890}, // 1960 - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 768: 3853, 794: 4595}, - {476: 3852, 768: 4594}, - {343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 50: 343, 475: 343, 479: 343, 343, 343, 343, 487: 343, 491: 343, 495: 343, 584: 343, 593: 343, 343, 645: 343, 343, 343, 343}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 107: 4575, 4577, 111: 4576, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4574, 888: 4593}, - {476: 4589}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 778: 3902, 804: 4666}, + {384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 53: 384, 73: 384, 485: 384, 384, 489: 384, 384, 384, 384, 384, 501: 384, 505: 384, 594: 384, 604: 384, 384, 655: 384, 384, 384, 659: 384, 754: 384, 757: 384}, + {383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 53: 383, 73: 383, 485: 383, 383, 489: 383, 383, 383, 383, 383, 501: 383, 505: 383, 594: 383, 604: 383, 383, 655: 383, 383, 383, 659: 383, 754: 383, 757: 383}, + {382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 382, 53: 382, 73: 382, 485: 382, 382, 489: 382, 382, 382, 382, 382, 501: 382, 505: 382, 594: 382, 604: 382, 382, 655: 382, 382, 382, 659: 382, 754: 382, 757: 382}, + {381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 53: 381, 73: 381, 485: 381, 381, 489: 381, 381, 381, 381, 381, 501: 381, 505: 381, 594: 381, 604: 381, 381, 655: 381, 381, 381, 659: 381, 754: 381, 757: 381}, // 1965 - {476: 4579}, - {339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 50: 339, 475: 339, 479: 339, 339, 339, 339, 487: 339, 491: 339, 495: 339, 584: 339, 593: 339, 339, 645: 339, 339, 339, 339}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 107: 4575, 4577, 111: 4576, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 4572, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 4571, 681: 4530, 4529, 692: 4573, 779: 3860, 803: 4574, 888: 4570, 1166: 4569}, - {336, 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, 336, 16: 336, 50: 336, 475: 336, 336, 479: 336, 336, 336, 336, 487: 336, 491: 336, 495: 336, 508: 336, 533: 336, 584: 336, 593: 336, 336, 645: 336, 336, 336, 336, 650: 336, 848: 4568}, - {335, 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, 335, 16: 335, 50: 335, 475: 335, 335, 479: 335, 335, 335, 335, 487: 335, 491: 335, 495: 335, 508: 335, 533: 335, 584: 335, 593: 335, 335, 645: 335, 335, 335, 335, 650: 335, 848: 4567}, + {380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 53: 380, 73: 380, 485: 380, 380, 489: 380, 380, 380, 380, 380, 501: 380, 505: 380, 594: 380, 604: 380, 380, 655: 380, 380, 380, 659: 380, 754: 380, 757: 380}, + {379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 53: 379, 73: 379, 485: 379, 379, 489: 379, 379, 379, 379, 379, 501: 379, 505: 379, 594: 379, 604: 379, 379, 655: 379, 379, 379, 659: 379, 754: 379, 757: 379}, + {378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 53: 378, 73: 378, 485: 378, 378, 489: 378, 378, 378, 378, 378, 501: 378, 505: 378, 594: 378, 604: 378, 378, 655: 378, 378, 378, 659: 378, 754: 378, 757: 378}, + {377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 53: 377, 73: 377, 485: 377, 377, 489: 377, 377, 377, 377, 377, 501: 377, 505: 377, 594: 377, 604: 377, 377, 655: 377, 377, 377, 659: 377, 754: 377, 757: 377}, + {376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 53: 376, 73: 376, 485: 376, 376, 489: 376, 376, 376, 376, 376, 501: 376, 505: 376, 594: 376, 604: 376, 376, 655: 376, 376, 376, 659: 376, 754: 376, 757: 376}, // 1970 - {334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 16: 334, 50: 334, 475: 334, 334, 479: 334, 334, 334, 334, 487: 334, 491: 334, 495: 334, 508: 334, 533: 334, 584: 334, 593: 334, 334, 645: 334, 334, 334, 334, 650: 334, 681: 4565, 4564, 848: 4566}, - {508: 4559, 650: 4558, 681: 4561, 4560}, - {329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 16: 329, 50: 329, 107: 329, 329, 111: 329, 475: 329, 329, 479: 329, 329, 329, 329, 487: 329, 491: 329, 495: 329, 508: 329, 533: 329, 584: 329, 593: 329, 329, 645: 329, 329, 329, 329, 650: 329}, - {328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 16: 328, 50: 328, 107: 328, 328, 111: 328, 475: 328, 328, 479: 328, 328, 328, 328, 487: 328, 491: 328, 495: 328, 508: 328, 533: 328, 584: 328, 593: 328, 328, 645: 328, 328, 328, 328, 650: 328}, - {476: 325}, + {375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, 53: 375, 73: 375, 485: 375, 375, 489: 375, 375, 375, 375, 375, 501: 375, 505: 375, 594: 375, 604: 375, 375, 655: 375, 375, 375, 659: 375, 754: 375, 757: 375}, + {374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 53: 374, 73: 374, 485: 374, 374, 489: 374, 374, 374, 374, 374, 501: 374, 505: 374, 594: 374, 604: 374, 374, 655: 374, 374, 374, 659: 374, 754: 374, 757: 374}, + {373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 373, 53: 373, 73: 373, 485: 373, 489: 373, 373, 373, 373, 373, 501: 373, 505: 373, 594: 373, 604: 373, 373, 655: 373, 373, 373, 659: 373, 754: 373, 757: 373}, + {372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 53: 372, 73: 372, 485: 372, 489: 372, 372, 372, 372, 372, 501: 372, 505: 372, 594: 372, 604: 372, 372, 655: 372, 372, 372, 659: 372, 754: 372, 757: 372}, + {368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 368, 53: 368, 73: 368, 485: 368, 368, 489: 368, 368, 368, 368, 368, 501: 368, 505: 368, 594: 368, 604: 368, 368, 655: 368, 368, 368, 659: 368, 754: 368, 757: 368}, // 1975 - {319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 50: 319, 52: 319, 475: 319, 319, 479: 319, 319, 319, 319, 487: 319, 491: 319, 495: 319, 584: 319, 593: 319, 319, 645: 319, 319, 319, 319, 744: 319, 747: 319}, - {318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 50: 318, 52: 318, 475: 318, 318, 479: 318, 318, 318, 318, 487: 318, 491: 318, 495: 318, 584: 318, 593: 318, 318, 645: 318, 318, 318, 318, 744: 318, 747: 318}, - {317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 50: 317, 475: 317, 479: 317, 317, 317, 317, 487: 317, 491: 317, 495: 317, 584: 317, 593: 317, 317, 645: 317, 317, 317, 317}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 768: 3853, 794: 4557}, - {315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 50: 315, 475: 315, 479: 315, 315, 315, 315, 487: 315, 491: 315, 495: 315, 584: 315, 593: 315, 315, 645: 315, 315, 315, 315}, + {367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 367, 53: 367, 73: 367, 485: 367, 367, 489: 367, 367, 367, 367, 367, 501: 367, 505: 367, 594: 367, 604: 367, 367, 655: 367, 367, 367, 659: 367, 754: 367, 757: 367}, + {366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 366, 53: 366, 73: 366, 485: 366, 366, 489: 366, 366, 366, 366, 366, 501: 366, 505: 366, 594: 366, 604: 366, 366, 655: 366, 366, 366, 659: 366, 754: 366, 757: 366}, + {365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 53: 365, 73: 365, 485: 365, 365, 489: 365, 365, 365, 365, 365, 501: 365, 505: 365, 594: 365, 604: 365, 365, 655: 365, 365, 365, 659: 365, 754: 365, 757: 365}, + {364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, 53: 364, 73: 364, 485: 364, 364, 489: 364, 364, 364, 364, 364, 501: 364, 505: 364, 594: 364, 604: 364, 364, 655: 364, 364, 364, 659: 364, 754: 364, 757: 364}, + {363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 53: 363, 73: 363, 485: 363, 363, 489: 363, 363, 363, 363, 363, 501: 363, 505: 363, 594: 363, 604: 363, 363, 655: 363, 363, 363, 659: 363, 754: 363, 757: 363, 1302: 4665}, // 1980 - {314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 50: 314, 475: 314, 479: 314, 314, 314, 314, 487: 314, 491: 314, 495: 314, 584: 314, 593: 314, 314, 645: 314, 314, 314, 314}, - {312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 16: 312, 50: 312, 107: 312, 312, 111: 312, 475: 312, 479: 312, 312, 312, 312, 487: 312, 491: 312, 495: 312, 508: 312, 533: 312, 584: 312, 593: 312, 312, 645: 312, 312, 312, 312, 650: 312}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 16: 298, 50: 298, 107: 298, 298, 111: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 508: 298, 533: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 650: 298, 768: 3853, 794: 4556}, - {310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 16: 310, 50: 310, 107: 310, 310, 111: 310, 475: 310, 479: 310, 310, 310, 310, 487: 310, 491: 310, 495: 310, 508: 310, 533: 310, 584: 310, 593: 310, 310, 645: 310, 310, 310, 310, 650: 310}, - {309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 16: 309, 50: 309, 107: 309, 309, 111: 309, 475: 309, 479: 309, 309, 309, 309, 487: 309, 491: 309, 495: 309, 508: 309, 533: 309, 584: 309, 593: 309, 309, 645: 309, 309, 309, 309, 650: 309}, + {361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 73: 361, 485: 361, 361, 489: 361, 361, 361, 361, 361, 501: 361, 505: 361, 594: 361, 604: 361, 361, 655: 361, 361, 361, 659: 361}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 485: 294, 3901, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 778: 4662, 790: 3909, 813: 4663}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 485: 294, 3901, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 778: 4659, 790: 3909, 813: 4660}, + {486: 3901, 778: 4657}, + {486: 3901, 778: 4655}, // 1985 - {304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 50: 304, 475: 304, 479: 304, 304, 304, 304, 487: 304, 491: 304, 495: 304, 584: 304, 593: 304, 304, 645: 304, 304, 304, 304}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 768: 3853, 794: 4555}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 768: 3853, 794: 4554}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 768: 3853, 794: 4553}, - {298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 50: 298, 52: 298, 475: 298, 3852, 479: 298, 298, 298, 298, 487: 298, 491: 298, 495: 298, 584: 298, 593: 298, 298, 645: 298, 298, 298, 298, 744: 298, 747: 298, 768: 3853, 794: 4547}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 778: 3902, 804: 4654}, + {486: 3901, 778: 4653}, + {352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 73: 352, 485: 352, 489: 352, 352, 352, 352, 352, 501: 352, 505: 352, 594: 352, 604: 352, 352, 655: 352, 352, 352, 659: 352}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 111: 4634, 4636, 126: 4635, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4633, 900: 4652}, + {486: 4648}, // 1990 - {293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 50: 293, 52: 293, 475: 293, 479: 293, 293, 293, 293, 487: 293, 491: 293, 495: 293, 584: 293, 593: 293, 293, 645: 293, 293, 293, 293, 744: 293, 747: 293, 880: 4548}, - {300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 50: 300, 52: 4550, 475: 300, 479: 300, 300, 300, 300, 487: 300, 491: 300, 495: 300, 584: 300, 593: 300, 300, 645: 300, 300, 300, 300, 744: 4549, 747: 4551, 879: 4552}, - {296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 50: 296, 52: 296, 475: 296, 479: 296, 296, 296, 296, 487: 296, 491: 296, 495: 296, 584: 296, 593: 296, 296, 645: 296, 296, 296, 296, 744: 296, 747: 296}, - {295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 50: 295, 52: 295, 475: 295, 479: 295, 295, 295, 295, 487: 295, 491: 295, 495: 295, 584: 295, 593: 295, 295, 645: 295, 295, 295, 295, 744: 295, 747: 295}, - {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 50: 294, 52: 294, 475: 294, 479: 294, 294, 294, 294, 487: 294, 491: 294, 495: 294, 584: 294, 593: 294, 294, 645: 294, 294, 294, 294, 744: 294, 747: 294}, + {486: 4638}, + {348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 73: 348, 485: 348, 489: 348, 348, 348, 348, 348, 501: 348, 505: 348, 594: 348, 604: 348, 348, 655: 348, 348, 348, 659: 348}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 111: 4634, 4636, 126: 4635, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 4631, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 4630, 691: 4589, 4588, 702: 4632, 790: 3909, 813: 4633, 900: 4629, 1180: 4628}, + {345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 16: 345, 73: 345, 485: 345, 345, 489: 345, 345, 345, 345, 345, 501: 345, 505: 345, 508: 345, 543: 345, 594: 345, 604: 345, 345, 655: 345, 345, 345, 659: 345, 345, 858: 4627}, + {344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 16: 344, 73: 344, 485: 344, 344, 489: 344, 344, 344, 344, 344, 501: 344, 505: 344, 508: 344, 543: 344, 594: 344, 604: 344, 344, 655: 344, 344, 344, 659: 344, 344, 858: 4626}, // 1995 - {292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 292, 50: 292, 52: 292, 475: 292, 479: 292, 292, 292, 292, 487: 292, 491: 292, 495: 292, 584: 292, 593: 292, 292, 645: 292, 292, 292, 292, 744: 292, 747: 292}, - {301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 50: 301, 475: 301, 479: 301, 301, 301, 301, 487: 301, 491: 301, 495: 301, 584: 301, 593: 301, 301, 645: 301, 301, 301, 301}, - {302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 50: 302, 475: 302, 479: 302, 302, 302, 302, 487: 302, 491: 302, 495: 302, 584: 302, 593: 302, 302, 645: 302, 302, 302, 302}, - {303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 50: 303, 475: 303, 479: 303, 303, 303, 303, 487: 303, 491: 303, 495: 303, 584: 303, 593: 303, 303, 645: 303, 303, 303, 303}, - {311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 16: 311, 50: 311, 107: 311, 311, 111: 311, 475: 311, 479: 311, 311, 311, 311, 487: 311, 491: 311, 495: 311, 508: 311, 533: 311, 584: 311, 593: 311, 311, 645: 311, 311, 311, 311, 650: 311}, + {343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 16: 343, 73: 343, 485: 343, 343, 489: 343, 343, 343, 343, 343, 501: 343, 505: 343, 508: 343, 543: 343, 594: 343, 604: 343, 343, 655: 343, 343, 343, 659: 343, 343, 691: 4624, 4623, 858: 4625}, + {508: 4618, 660: 4617, 691: 4620, 4619}, + {338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 16: 338, 73: 338, 111: 338, 338, 126: 338, 485: 338, 338, 489: 338, 338, 338, 338, 338, 501: 338, 505: 338, 508: 338, 543: 338, 594: 338, 604: 338, 338, 655: 338, 338, 338, 659: 338, 338}, + {337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 16: 337, 73: 337, 111: 337, 337, 126: 337, 485: 337, 337, 489: 337, 337, 337, 337, 337, 501: 337, 505: 337, 508: 337, 543: 337, 594: 337, 604: 337, 337, 655: 337, 337, 337, 659: 337, 337}, + {486: 334}, // 2000 - {316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 50: 316, 475: 316, 479: 316, 316, 316, 316, 487: 316, 491: 316, 495: 316, 584: 316, 593: 316, 316, 645: 316, 316, 316, 316}, - {333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 333, 16: 333, 50: 333, 475: 333, 333, 479: 333, 333, 333, 333, 487: 333, 491: 333, 495: 333, 508: 333, 533: 333, 584: 333, 593: 333, 333, 645: 333, 333, 333, 333, 650: 333, 848: 4563}, - {332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, 16: 332, 50: 332, 475: 332, 332, 479: 332, 332, 332, 332, 487: 332, 491: 332, 495: 332, 508: 332, 533: 332, 584: 332, 593: 332, 332, 645: 332, 332, 332, 332, 650: 332, 848: 4562}, - {476: 327}, - {476: 326}, + {328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 53: 328, 73: 328, 485: 328, 328, 489: 328, 328, 328, 328, 328, 501: 328, 505: 328, 594: 328, 604: 328, 328, 655: 328, 328, 328, 659: 328, 754: 328, 757: 328}, + {327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 53: 327, 73: 327, 485: 327, 327, 489: 327, 327, 327, 327, 327, 501: 327, 505: 327, 594: 327, 604: 327, 327, 655: 327, 327, 327, 659: 327, 754: 327, 757: 327}, + {326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 326, 73: 326, 485: 326, 489: 326, 326, 326, 326, 326, 501: 326, 505: 326, 594: 326, 604: 326, 326, 655: 326, 326, 326, 659: 326}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 778: 3902, 804: 4616}, + {324, 324, 324, 324, 324, 324, 324, 324, 324, 324, 324, 324, 324, 324, 324, 73: 324, 485: 324, 489: 324, 324, 324, 324, 324, 501: 324, 505: 324, 594: 324, 604: 324, 324, 655: 324, 324, 324, 659: 324}, // 2005 - {476: 321}, - {476: 322}, - {476: 324}, - {476: 323}, - {476: 320}, + {323, 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, 73: 323, 485: 323, 489: 323, 323, 323, 323, 323, 501: 323, 505: 323, 594: 323, 604: 323, 323, 655: 323, 323, 323, 659: 323}, + {321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 16: 321, 73: 321, 111: 321, 321, 126: 321, 485: 321, 489: 321, 321, 321, 321, 321, 501: 321, 505: 321, 508: 321, 543: 321, 594: 321, 604: 321, 321, 655: 321, 321, 321, 659: 321, 321}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 16: 307, 73: 307, 111: 307, 307, 126: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 508: 307, 543: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 307, 778: 3902, 804: 4615}, + {319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 16: 319, 73: 319, 111: 319, 319, 126: 319, 485: 319, 489: 319, 319, 319, 319, 319, 501: 319, 505: 319, 508: 319, 543: 319, 594: 319, 604: 319, 319, 655: 319, 319, 319, 659: 319, 319}, + {318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 318, 16: 318, 73: 318, 111: 318, 318, 126: 318, 485: 318, 489: 318, 318, 318, 318, 318, 501: 318, 505: 318, 508: 318, 543: 318, 594: 318, 604: 318, 318, 655: 318, 318, 318, 659: 318, 318}, // 2010 - {330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 16: 330, 50: 330, 107: 330, 330, 111: 330, 475: 330, 330, 479: 330, 330, 330, 330, 487: 330, 491: 330, 495: 330, 508: 330, 533: 330, 584: 330, 593: 330, 330, 645: 330, 330, 330, 330, 650: 330}, - {331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 16: 331, 50: 331, 107: 331, 331, 111: 331, 475: 331, 331, 479: 331, 331, 331, 331, 487: 331, 491: 331, 495: 331, 508: 331, 533: 331, 584: 331, 593: 331, 331, 645: 331, 331, 331, 331, 650: 331}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 107: 4575, 4577, 111: 4576, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4574, 888: 4578}, - {337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 50: 337, 475: 337, 479: 337, 337, 337, 337, 487: 337, 491: 337, 495: 337, 584: 337, 593: 337, 337, 645: 337, 337, 337, 337}, - {509: 3865, 848: 4568}, + {313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 73: 313, 485: 313, 489: 313, 313, 313, 313, 313, 501: 313, 505: 313, 594: 313, 604: 313, 313, 655: 313, 313, 313, 659: 313}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 778: 3902, 804: 4614}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 778: 3902, 804: 4613}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 778: 3902, 804: 4612}, + {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 53: 307, 73: 307, 485: 307, 3901, 489: 307, 307, 307, 307, 307, 501: 307, 505: 307, 594: 307, 604: 307, 307, 655: 307, 307, 307, 659: 307, 754: 307, 757: 307, 778: 3902, 804: 4606}, // 2015 - {509: 3864, 848: 4567}, - {313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 50: 313, 475: 313, 479: 313, 313, 313, 313, 487: 313, 491: 313, 495: 313, 584: 313, 593: 313, 313, 645: 313, 313, 313, 313}, - {308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 50: 308, 475: 308, 479: 308, 308, 308, 308, 487: 308, 491: 308, 495: 308, 584: 308, 593: 308, 308, 645: 308, 308, 308, 308}, - {307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, 50: 307, 475: 307, 479: 307, 307, 307, 307, 487: 307, 491: 307, 495: 307, 584: 307, 593: 307, 307, 645: 307, 307, 307, 307}, - {306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 50: 306, 475: 306, 479: 306, 306, 306, 306, 487: 306, 491: 306, 495: 306, 584: 306, 593: 306, 306, 645: 306, 306, 306, 306}, + {302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 53: 302, 73: 302, 485: 302, 489: 302, 302, 302, 302, 302, 501: 302, 505: 302, 594: 302, 604: 302, 302, 655: 302, 302, 302, 659: 302, 754: 302, 757: 302, 892: 4607}, + {309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 53: 4609, 73: 309, 485: 309, 489: 309, 309, 309, 309, 309, 501: 309, 505: 309, 594: 309, 604: 309, 309, 655: 309, 309, 309, 659: 309, 754: 4608, 757: 4610, 891: 4611}, + {305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 53: 305, 73: 305, 485: 305, 489: 305, 305, 305, 305, 305, 501: 305, 505: 305, 594: 305, 604: 305, 305, 655: 305, 305, 305, 659: 305, 754: 305, 757: 305}, + {304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, 53: 304, 73: 304, 485: 304, 489: 304, 304, 304, 304, 304, 501: 304, 505: 304, 594: 304, 604: 304, 304, 655: 304, 304, 304, 659: 304, 754: 304, 757: 304}, + {303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 53: 303, 73: 303, 485: 303, 489: 303, 303, 303, 303, 303, 501: 303, 505: 303, 594: 303, 604: 303, 303, 655: 303, 303, 303, 659: 303, 754: 303, 757: 303}, // 2020 - {305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 50: 305, 475: 305, 479: 305, 305, 305, 305, 487: 305, 491: 305, 495: 305, 584: 305, 593: 305, 305, 645: 305, 305, 305, 305}, - {338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 50: 338, 475: 338, 479: 338, 338, 338, 338, 487: 338, 491: 338, 495: 338, 584: 338, 593: 338, 338, 645: 338, 338, 338, 338}, - {478: 4581, 579: 4582, 583: 4583, 975: 4584, 1159: 4580}, - {9: 4586, 50: 4585}, - {9: 273, 50: 273}, + {301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, 53: 301, 73: 301, 485: 301, 489: 301, 301, 301, 301, 301, 501: 301, 505: 301, 594: 301, 604: 301, 301, 655: 301, 301, 301, 659: 301, 754: 301, 757: 301}, + {310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 73: 310, 485: 310, 489: 310, 310, 310, 310, 310, 501: 310, 505: 310, 594: 310, 604: 310, 310, 655: 310, 310, 310, 659: 310}, + {311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 73: 311, 485: 311, 489: 311, 311, 311, 311, 311, 501: 311, 505: 311, 594: 311, 604: 311, 311, 655: 311, 311, 311, 659: 311}, + {312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 73: 312, 485: 312, 489: 312, 312, 312, 312, 312, 501: 312, 505: 312, 594: 312, 604: 312, 312, 655: 312, 312, 312, 659: 312}, + {320, 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, 320, 16: 320, 73: 320, 111: 320, 320, 126: 320, 485: 320, 489: 320, 320, 320, 320, 320, 501: 320, 505: 320, 508: 320, 543: 320, 594: 320, 604: 320, 320, 655: 320, 320, 320, 659: 320, 320}, // 2025 - {9: 272, 50: 272}, - {9: 271, 50: 271}, - {9: 270, 50: 270}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 107: 4575, 4577, 111: 4576, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4574, 888: 4588}, - {478: 4581, 579: 4582, 583: 4583, 975: 4587}, + {325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 325, 73: 325, 485: 325, 489: 325, 325, 325, 325, 325, 501: 325, 505: 325, 594: 325, 604: 325, 325, 655: 325, 325, 325, 659: 325}, + {342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 16: 342, 73: 342, 485: 342, 342, 489: 342, 342, 342, 342, 342, 501: 342, 505: 342, 508: 342, 543: 342, 594: 342, 604: 342, 342, 655: 342, 342, 342, 659: 342, 342, 858: 4622}, + {341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 16: 341, 73: 341, 485: 341, 341, 489: 341, 341, 341, 341, 341, 501: 341, 505: 341, 508: 341, 543: 341, 594: 341, 604: 341, 341, 655: 341, 341, 341, 659: 341, 341, 858: 4621}, + {486: 336}, + {486: 335}, // 2030 - {9: 269, 50: 269}, - {340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 50: 340, 475: 340, 479: 340, 340, 340, 340, 487: 340, 491: 340, 495: 340, 584: 340, 593: 340, 340, 645: 340, 340, 340, 340}, - {478: 4581, 579: 4582, 583: 4583, 975: 4584, 1159: 4590}, - {9: 4586, 50: 4591}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 107: 4575, 4577, 111: 4576, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4574, 888: 4592}, + {486: 330}, + {486: 331}, + {486: 333}, + {486: 332}, + {486: 329}, // 2035 - {341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 50: 341, 475: 341, 479: 341, 341, 341, 341, 487: 341, 491: 341, 495: 341, 584: 341, 593: 341, 341, 645: 341, 341, 341, 341}, - {342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 50: 342, 475: 342, 479: 342, 342, 342, 342, 487: 342, 491: 342, 495: 342, 584: 342, 593: 342, 342, 645: 342, 342, 342, 342}, - {344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 344, 50: 344, 475: 344, 479: 344, 344, 344, 344, 487: 344, 491: 344, 495: 344, 584: 344, 593: 344, 344, 645: 344, 344, 344, 344}, - {345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345, 50: 345, 475: 345, 479: 345, 345, 345, 345, 487: 345, 491: 345, 495: 345, 584: 345, 593: 345, 345, 645: 345, 345, 345, 345}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4597}, + {339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 16: 339, 73: 339, 111: 339, 339, 126: 339, 485: 339, 339, 489: 339, 339, 339, 339, 339, 501: 339, 505: 339, 508: 339, 543: 339, 594: 339, 604: 339, 339, 655: 339, 339, 339, 659: 339, 339}, + {340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 340, 16: 340, 73: 340, 111: 340, 340, 126: 340, 485: 340, 340, 489: 340, 340, 340, 340, 340, 501: 340, 505: 340, 508: 340, 543: 340, 594: 340, 604: 340, 340, 655: 340, 340, 340, 659: 340, 340}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 111: 4634, 4636, 126: 4635, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4633, 900: 4637}, + {346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 73: 346, 485: 346, 489: 346, 346, 346, 346, 346, 501: 346, 505: 346, 594: 346, 604: 346, 346, 655: 346, 346, 346, 659: 346}, + {519: 3914, 858: 4627}, // 2040 - {346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 346, 50: 346, 475: 346, 479: 346, 346, 346, 346, 487: 346, 491: 346, 495: 346, 584: 346, 593: 346, 346, 645: 346, 346, 346, 346}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4599}, - {347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 50: 347, 475: 347, 479: 347, 347, 347, 347, 487: 347, 491: 347, 495: 347, 584: 347, 593: 347, 347, 645: 347, 347, 347, 347}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4602}, - {348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 50: 348, 475: 348, 479: 348, 348, 348, 348, 487: 348, 491: 348, 495: 348, 584: 348, 593: 348, 348, 645: 348, 348, 348, 348}, + {519: 3913, 858: 4626}, + {322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 73: 322, 485: 322, 489: 322, 322, 322, 322, 322, 501: 322, 505: 322, 594: 322, 604: 322, 322, 655: 322, 322, 322, 659: 322}, + {317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 317, 73: 317, 485: 317, 489: 317, 317, 317, 317, 317, 501: 317, 505: 317, 594: 317, 604: 317, 317, 655: 317, 317, 317, 659: 317}, + {316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 316, 73: 316, 485: 316, 489: 316, 316, 316, 316, 316, 501: 316, 505: 316, 594: 316, 604: 316, 316, 655: 316, 316, 316, 659: 316}, + {315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 73: 315, 485: 315, 489: 315, 315, 315, 315, 315, 501: 315, 505: 315, 594: 315, 604: 315, 315, 655: 315, 315, 315, 659: 315}, // 2045 - {349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 50: 349, 475: 349, 479: 349, 349, 349, 349, 487: 349, 491: 349, 495: 349, 584: 349, 593: 349, 349, 645: 349, 349, 349, 349}, - {285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 16: 3862, 50: 285, 475: 285, 479: 285, 285, 285, 285, 487: 285, 491: 285, 495: 285, 508: 3863, 533: 3859, 584: 285, 593: 285, 285, 645: 285, 285, 285, 285, 650: 3861, 779: 3860, 803: 4605}, - {350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 50: 350, 475: 350, 479: 350, 350, 350, 350, 487: 350, 491: 350, 495: 350, 584: 350, 593: 350, 350, 645: 350, 350, 350, 350}, - {351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 50: 351, 475: 351, 479: 351, 351, 351, 351, 487: 351, 491: 351, 495: 351, 584: 351, 593: 351, 351, 645: 351, 351, 351, 351}, - {353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 50: 353, 52: 353, 475: 353, 353, 479: 353, 353, 353, 353, 487: 353, 491: 353, 495: 353, 584: 353, 593: 353, 353, 645: 353, 353, 353, 353, 744: 353, 747: 353}, + {314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 73: 314, 485: 314, 489: 314, 314, 314, 314, 314, 501: 314, 505: 314, 594: 314, 604: 314, 314, 655: 314, 314, 314, 659: 314}, + {347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 73: 347, 485: 347, 489: 347, 347, 347, 347, 347, 501: 347, 505: 347, 594: 347, 604: 347, 347, 655: 347, 347, 347, 659: 347}, + {487: 4640, 589: 4641, 591: 4642, 985: 4643, 1173: 4639}, + {9: 4645, 73: 4644}, + {9: 282, 73: 282}, // 2050 - {376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 376, 50: 376, 475: 376, 479: 376, 376, 376, 376, 487: 376, 491: 376, 495: 376, 584: 376, 593: 376, 376, 645: 376, 376, 376, 376}, - {293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 50: 293, 52: 293, 475: 293, 479: 293, 293, 293, 293, 487: 293, 491: 293, 495: 293, 584: 293, 593: 293, 293, 645: 293, 293, 293, 293, 744: 293, 747: 293, 880: 4609}, - {377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 50: 377, 52: 4550, 475: 377, 479: 377, 377, 377, 377, 487: 377, 491: 377, 495: 377, 584: 377, 593: 377, 377, 645: 377, 377, 377, 377, 744: 4549, 747: 4551, 879: 4552}, - {293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 50: 293, 52: 293, 475: 293, 479: 293, 293, 293, 293, 487: 293, 491: 293, 495: 293, 584: 293, 593: 293, 293, 645: 293, 293, 293, 293, 744: 293, 747: 293, 880: 4611}, - {378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 50: 378, 52: 4550, 475: 378, 479: 378, 378, 378, 378, 487: 378, 491: 378, 495: 378, 584: 378, 593: 378, 378, 645: 378, 378, 378, 378, 744: 4549, 747: 4551, 879: 4552}, + {9: 281, 73: 281}, + {9: 280, 73: 280}, + {9: 279, 73: 279}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 111: 4634, 4636, 126: 4635, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4633, 900: 4647}, + {487: 4640, 589: 4641, 591: 4642, 985: 4646}, // 2055 - {379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 50: 379, 52: 4550, 475: 379, 479: 379, 379, 379, 379, 487: 379, 491: 379, 495: 379, 584: 379, 593: 379, 379, 645: 379, 379, 379, 379, 744: 4549, 747: 4551, 879: 4552}, - {293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 293, 50: 293, 52: 293, 475: 293, 479: 293, 293, 293, 293, 487: 293, 491: 293, 495: 293, 584: 293, 593: 293, 293, 645: 293, 293, 293, 293, 744: 293, 747: 293, 880: 4614}, - {380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 380, 50: 380, 52: 4550, 475: 380, 479: 380, 380, 380, 380, 487: 380, 491: 380, 495: 380, 584: 380, 593: 380, 380, 645: 380, 380, 380, 380, 744: 4549, 747: 4551, 879: 4552}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 584: 2425, 593: 2425, 2425, 645: 2425, 652: 2425, 664: 4754, 2785, 2786, 2784, 678: 2425, 2425, 1152: 4753}, - {2355, 2355, 2355, 2355, 2355, 2355, 9: 2355, 2355, 2355, 50: 2355, 491: 2355}, + {9: 278, 73: 278}, + {349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 73: 349, 485: 349, 489: 349, 349, 349, 349, 349, 501: 349, 505: 349, 594: 349, 604: 349, 349, 655: 349, 349, 349, 659: 349}, + {487: 4640, 589: 4641, 591: 4642, 985: 4643, 1173: 4649}, + {9: 4645, 73: 4650}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 111: 4634, 4636, 126: 4635, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4633, 900: 4651}, // 2060 - {584: 2332}, - {495: 4752}, - {2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 50: 2322, 475: 2322, 479: 2322, 2322, 2322, 2322, 487: 2322, 491: 2322, 495: 2322, 584: 2322, 593: 2322, 2322, 645: 2322, 2322, 2322, 2322}, - {2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 2321, 50: 2321, 475: 2321, 479: 2321, 2321, 2321, 2321, 487: 2321, 491: 2321, 495: 2321, 584: 2321, 593: 2321, 2321, 645: 2321, 2321, 2321, 2321}, - {584: 4748}, + {350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 73: 350, 485: 350, 489: 350, 350, 350, 350, 350, 501: 350, 505: 350, 594: 350, 604: 350, 350, 655: 350, 350, 350, 659: 350}, + {351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, 73: 351, 485: 351, 489: 351, 351, 351, 351, 351, 501: 351, 505: 351, 594: 351, 604: 351, 351, 655: 351, 351, 351, 659: 351}, + {353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 73: 353, 485: 353, 489: 353, 353, 353, 353, 353, 501: 353, 505: 353, 594: 353, 604: 353, 353, 655: 353, 353, 353, 659: 353}, + {354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, 73: 354, 485: 354, 489: 354, 354, 354, 354, 354, 501: 354, 505: 354, 594: 354, 604: 354, 354, 655: 354, 354, 354, 659: 354}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4656}, // 2065 - {2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 50: 2318, 475: 2318, 479: 2318, 2318, 2318, 2318, 487: 2318, 491: 2318, 495: 2318, 584: 4747, 593: 2318, 2318, 645: 2318, 2318, 2318, 2318}, - {130: 4735, 273: 4737, 364: 4738, 476: 4734, 478: 3265, 488: 4470, 4471, 495: 3256, 511: 3260, 574: 3255, 3257, 3259, 3258, 579: 3263, 583: 3264, 588: 4722, 4719, 591: 4720, 4721, 595: 3262, 716: 4469, 3261, 4732, 904: 4733, 951: 4717, 4718, 4736, 1089: 4730, 1142: 4731, 1213: 4729}, - {482: 4727}, - {657: 4715}, - {478: 4714}, + {355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, 73: 355, 485: 355, 489: 355, 355, 355, 355, 355, 501: 355, 505: 355, 594: 355, 604: 355, 355, 655: 355, 355, 355, 659: 355}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4658}, + {356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 356, 73: 356, 485: 356, 489: 356, 356, 356, 356, 356, 501: 356, 505: 356, 594: 356, 604: 356, 356, 655: 356, 356, 356, 659: 356}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4661}, + {357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 73: 357, 485: 357, 489: 357, 357, 357, 357, 357, 501: 357, 505: 357, 594: 357, 604: 357, 357, 655: 357, 357, 357, 659: 357}, // 2070 - {593: 4705}, - {481: 4698}, - {2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 2310, 50: 2310, 475: 2310, 479: 2310, 2310, 2310, 2310, 487: 2310, 491: 2310, 495: 2310, 584: 2310, 593: 2310, 2310, 645: 2310, 2310, 2310, 2310}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3515, 664: 3517, 2785, 2786, 2784, 742: 3514, 876: 4697}, - {182: 4695, 209: 4696, 482: 4694, 1198: 4693}, + {358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 73: 358, 485: 358, 489: 358, 358, 358, 358, 358, 501: 358, 505: 358, 594: 358, 604: 358, 358, 655: 358, 358, 358, 659: 358}, + {294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 16: 3911, 73: 294, 485: 294, 489: 294, 294, 294, 294, 294, 501: 294, 505: 294, 508: 3912, 543: 3908, 594: 294, 604: 294, 294, 655: 294, 294, 294, 659: 294, 3910, 790: 3909, 813: 4664}, + {359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 359, 73: 359, 485: 359, 489: 359, 359, 359, 359, 359, 501: 359, 505: 359, 594: 359, 604: 359, 359, 655: 359, 359, 359, 659: 359}, + {360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 360, 73: 360, 485: 360, 489: 360, 360, 360, 360, 360, 501: 360, 505: 360, 594: 360, 604: 360, 360, 655: 360, 360, 360, 659: 360}, + {362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 53: 362, 73: 362, 485: 362, 362, 489: 362, 362, 362, 362, 362, 501: 362, 505: 362, 594: 362, 604: 362, 362, 655: 362, 362, 362, 659: 362, 754: 362, 757: 362}, // 2075 - {188: 4692, 250: 4691, 482: 4690, 1320: 4689}, - {2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 50: 2305, 475: 2305, 4683, 479: 2305, 2305, 2305, 2305, 487: 2305, 491: 2305, 495: 2305, 584: 2305, 593: 2305, 2305, 645: 2305, 2305, 2305, 2305, 1188: 4682}, - {314: 4681}, - {2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 50: 2291, 475: 2291, 479: 2291, 2291, 2291, 2291, 487: 2291, 491: 2291, 495: 2291, 584: 2291, 593: 2291, 2291, 645: 2291, 2291, 2291, 2291}, - {2288, 2288, 2288, 2288, 2288, 2288, 4626, 4632, 4620, 2288, 2288, 2288, 4624, 4633, 4631, 50: 2288, 475: 4625, 479: 4115, 4114, 2296, 4623, 487: 4630, 491: 2288, 495: 4619, 584: 2333, 593: 2426, 4617, 645: 4622, 4615, 4637, 4634, 815: 4618, 837: 4627, 915: 4629, 933: 4680, 942: 4628, 961: 4621}, + {385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 385, 73: 385, 485: 385, 489: 385, 385, 385, 385, 385, 501: 385, 505: 385, 594: 385, 604: 385, 385, 655: 385, 385, 385, 659: 385}, + {302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 53: 302, 73: 302, 485: 302, 489: 302, 302, 302, 302, 302, 501: 302, 505: 302, 594: 302, 604: 302, 302, 655: 302, 302, 302, 659: 302, 754: 302, 757: 302, 892: 4668}, + {386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 53: 4609, 73: 386, 485: 386, 489: 386, 386, 386, 386, 386, 501: 386, 505: 386, 594: 386, 604: 386, 386, 655: 386, 386, 386, 659: 386, 754: 4608, 757: 4610, 891: 4611}, + {302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 53: 302, 73: 302, 485: 302, 489: 302, 302, 302, 302, 302, 501: 302, 505: 302, 594: 302, 604: 302, 302, 655: 302, 302, 302, 659: 302, 754: 302, 757: 302, 892: 4670}, + {387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 387, 53: 4609, 73: 387, 485: 387, 489: 387, 387, 387, 387, 387, 501: 387, 505: 387, 594: 387, 604: 387, 387, 655: 387, 387, 387, 659: 387, 754: 4608, 757: 4610, 891: 4611}, // 2080 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4638}, - {2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 2228, 50: 2228, 475: 2228, 4640, 479: 2228, 2228, 2228, 2228, 487: 2228, 491: 2228, 495: 2228, 584: 2228, 593: 2228, 2228, 645: 2228, 2228, 2228, 2228, 651: 2228, 1241: 4639}, - {2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 50: 2278, 475: 2278, 479: 2278, 2278, 2278, 2278, 487: 2278, 491: 2278, 495: 2278, 584: 2278, 593: 2278, 2278, 645: 2278, 2278, 2278, 2278, 651: 4655, 1258: 4656, 4657}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 4641}, - {9: 4653, 50: 4652}, + {388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, 53: 4609, 73: 388, 485: 388, 489: 388, 388, 388, 388, 388, 501: 388, 505: 388, 594: 388, 604: 388, 388, 655: 388, 388, 388, 659: 388, 754: 4608, 757: 4610, 891: 4611}, + {302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 302, 53: 302, 73: 302, 485: 302, 489: 302, 302, 302, 302, 302, 501: 302, 505: 302, 594: 302, 604: 302, 302, 655: 302, 302, 302, 659: 302, 754: 302, 757: 302, 892: 4673}, + {389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 53: 4609, 73: 389, 485: 389, 489: 389, 389, 389, 389, 389, 501: 389, 505: 389, 594: 389, 604: 389, 389, 655: 389, 389, 389, 659: 389, 754: 4608, 757: 4610, 891: 4611}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 594: 2450, 604: 2450, 2450, 655: 2450, 661: 2450, 676: 4813, 2824, 2825, 2823, 688: 2450, 2450, 1166: 4812}, + {2380, 2380, 2380, 2380, 2380, 2380, 9: 2380, 2380, 2380, 73: 2380, 501: 2380}, // 2085 - {9: 2226, 50: 2226}, - {9: 298, 50: 298, 476: 3852, 532: 298, 534: 298, 768: 3853, 794: 4650}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4645}, - {50: 4646, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {9: 1314, 50: 1314, 532: 4649, 534: 4648, 954: 4647}, + {594: 2357}, + {505: 4811}, + {2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 2347, 73: 2347, 485: 2347, 489: 2347, 2347, 2347, 2347, 2347, 501: 2347, 505: 2347, 594: 2347, 604: 2347, 2347, 655: 2347, 2347, 2347, 659: 2347}, + {2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 2346, 73: 2346, 485: 2346, 489: 2346, 2346, 2346, 2346, 2346, 501: 2346, 505: 2346, 594: 2346, 604: 2346, 2346, 655: 2346, 2346, 2346, 659: 2346}, + {594: 4807}, // 2090 - {9: 2223, 50: 2223}, - {1313, 1313, 1313, 1313, 1313, 1313, 9: 1313, 50: 1313, 491: 1313}, - {1312, 1312, 1312, 1312, 1312, 1312, 9: 1312, 50: 1312, 491: 1312}, - {9: 1314, 50: 1314, 532: 4649, 534: 4648, 954: 4651}, - {9: 2224, 50: 2224}, + {2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 2343, 73: 2343, 485: 2343, 489: 2343, 2343, 2343, 2343, 2343, 501: 2343, 505: 2343, 594: 4806, 604: 2343, 2343, 655: 2343, 2343, 2343, 659: 2343}, + {137: 4794, 282: 4796, 373: 4797, 486: 4793, 3314, 498: 4529, 4530, 505: 3305, 521: 3309, 584: 3304, 3306, 3308, 3307, 589: 3312, 591: 3313, 598: 4781, 4778, 601: 4779, 4780, 3311, 726: 4528, 3310, 4791, 915: 4792, 962: 4776, 4777, 4795, 1101: 4789, 1156: 4790, 1226: 4788}, + {490: 4786}, + {667: 4774}, + {487: 4773}, // 2095 - {2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 2227, 50: 2227, 475: 2227, 479: 2227, 2227, 2227, 2227, 487: 2227, 491: 2227, 495: 2227, 584: 2227, 593: 2227, 2227, 645: 2227, 2227, 2227, 2227, 651: 2227}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4654}, - {9: 2225, 50: 2225}, - {213: 4677, 371: 4678, 389: 4679}, - {2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 50: 2277, 475: 2277, 479: 2277, 2277, 2277, 2277, 487: 2277, 491: 2277, 495: 2277, 584: 2277, 593: 2277, 2277, 645: 2277, 2277, 2277, 2277}, + {604: 4764}, + {492: 4757}, + {2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 2335, 73: 2335, 485: 2335, 489: 2335, 2335, 2335, 2335, 2335, 501: 2335, 505: 2335, 594: 2335, 604: 2335, 2335, 655: 2335, 2335, 2335, 659: 2335}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3564, 676: 3566, 2824, 2825, 2823, 752: 3563, 887: 4756}, + {189: 4754, 217: 4755, 490: 4753, 1211: 4752}, // 2100 - {2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 2273, 50: 2273, 475: 4659, 479: 2273, 2273, 2273, 2273, 487: 2273, 491: 2273, 495: 2273, 584: 2273, 593: 2273, 2273, 645: 2273, 2273, 2273, 2273, 1095: 4660, 4661, 1267: 4658}, - {2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 2276, 50: 2276, 475: 2276, 479: 2276, 2276, 2276, 2276, 487: 2276, 491: 2276, 495: 2276, 584: 2276, 593: 2276, 2276, 645: 2276, 2276, 2276, 2276}, - {657: 4675, 743: 4664}, - {2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 2272, 50: 2272, 475: 4673, 479: 2272, 2272, 2272, 2272, 487: 2272, 491: 2272, 495: 2272, 584: 2272, 593: 2272, 2272, 645: 2272, 2272, 2272, 2272, 1096: 4674}, - {2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 2271, 50: 2271, 475: 4662, 479: 2271, 2271, 2271, 2271, 487: 2271, 491: 2271, 495: 2271, 584: 2271, 593: 2271, 2271, 645: 2271, 2271, 2271, 2271, 1095: 4663}, + {195: 4751, 259: 4750, 490: 4749, 1333: 4748}, + {2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 2330, 73: 2330, 485: 2330, 4742, 489: 2330, 2330, 2330, 2330, 2330, 501: 2330, 505: 2330, 594: 2330, 604: 2330, 2330, 655: 2330, 2330, 2330, 659: 2330, 1202: 4741}, + {324: 4740}, + {2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 73: 2316, 485: 2316, 489: 2316, 2316, 2316, 2316, 2316, 501: 2316, 505: 2316, 594: 2316, 604: 2316, 2316, 655: 2316, 2316, 2316, 659: 2316}, + {2313, 2313, 2313, 2313, 2313, 2313, 4685, 4691, 4679, 2313, 2313, 2313, 4683, 4692, 4690, 73: 2313, 485: 4684, 489: 4164, 4682, 4163, 2321, 4689, 501: 2313, 505: 4678, 594: 2358, 604: 2451, 4676, 655: 4681, 4674, 4696, 659: 4693, 826: 4677, 847: 4686, 926: 4688, 944: 4739, 953: 4687, 971: 4680}, // 2105 - {743: 4664}, - {2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 50: 2269, 475: 2269, 479: 2269, 2269, 2269, 2269, 487: 2269, 491: 2269, 495: 2269, 584: 2269, 593: 2269, 2269, 645: 2269, 2269, 2269, 2269}, - {73: 4669, 509: 4668, 673: 4667, 675: 4666, 1119: 4665}, - {2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 2275, 50: 2275, 475: 2275, 479: 2275, 2275, 2275, 2275, 487: 2275, 491: 2275, 495: 2275, 584: 2275, 593: 2275, 2275, 645: 2275, 2275, 2275, 2275}, - {2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 50: 2268, 475: 2268, 479: 2268, 2268, 2268, 2268, 487: 2268, 491: 2268, 495: 2268, 584: 2268, 593: 2268, 2268, 645: 2268, 2268, 2268, 2268}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4697}, + {2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 73: 2253, 485: 2253, 4699, 489: 2253, 2253, 2253, 2253, 2253, 501: 2253, 505: 2253, 594: 2253, 604: 2253, 2253, 655: 2253, 2253, 2253, 659: 2253, 662: 2253, 1254: 4698}, + {2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 73: 2303, 485: 2303, 489: 2303, 2303, 2303, 2303, 2303, 501: 2303, 505: 2303, 594: 2303, 604: 2303, 2303, 655: 2303, 2303, 2303, 659: 2303, 662: 4714, 1271: 4715, 4716}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 4700}, + {9: 4712, 73: 4711}, // 2110 - {2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 2267, 50: 2267, 475: 2267, 479: 2267, 2267, 2267, 2267, 487: 2267, 491: 2267, 495: 2267, 584: 2267, 593: 2267, 2267, 645: 2267, 2267, 2267, 2267}, - {482: 4672, 495: 4671}, - {310: 4670}, - {2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 2265, 50: 2265, 475: 2265, 479: 2265, 2265, 2265, 2265, 487: 2265, 491: 2265, 495: 2265, 584: 2265, 593: 2265, 2265, 645: 2265, 2265, 2265, 2265}, - {2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 2266, 50: 2266, 475: 2266, 479: 2266, 2266, 2266, 2266, 487: 2266, 491: 2266, 495: 2266, 584: 2266, 593: 2266, 2266, 645: 2266, 2266, 2266, 2266}, + {9: 2251, 73: 2251}, + {9: 307, 73: 307, 486: 3901, 542: 307, 555: 307, 778: 3902, 804: 4709}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4704}, + {73: 4705, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {9: 1327, 73: 1327, 542: 4708, 555: 4707, 965: 4706}, // 2115 - {2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 2264, 50: 2264, 475: 2264, 479: 2264, 2264, 2264, 2264, 487: 2264, 491: 2264, 495: 2264, 584: 2264, 593: 2264, 2264, 645: 2264, 2264, 2264, 2264}, - {657: 4675}, - {2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 50: 2270, 475: 2270, 479: 2270, 2270, 2270, 2270, 487: 2270, 491: 2270, 495: 2270, 584: 2270, 593: 2270, 2270, 645: 2270, 2270, 2270, 2270}, - {73: 4669, 509: 4668, 673: 4667, 675: 4666, 1119: 4676}, - {2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 2274, 50: 2274, 475: 2274, 479: 2274, 2274, 2274, 2274, 487: 2274, 491: 2274, 495: 2274, 584: 2274, 593: 2274, 2274, 645: 2274, 2274, 2274, 2274}, + {9: 2248, 73: 2248}, + {1326, 1326, 1326, 1326, 1326, 1326, 9: 1326, 73: 1326, 501: 1326}, + {1325, 1325, 1325, 1325, 1325, 1325, 9: 1325, 73: 1325, 501: 1325}, + {9: 1327, 73: 1327, 542: 4708, 555: 4707, 965: 4710}, + {9: 2249, 73: 2249}, // 2120 - {2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 50: 2281, 475: 2281, 479: 2281, 2281, 2281, 2281, 487: 2281, 491: 2281, 495: 2281, 584: 2281, 593: 2281, 2281, 645: 2281, 2281, 2281, 2281}, - {2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 50: 2280, 475: 2280, 479: 2280, 2280, 2280, 2280, 487: 2280, 491: 2280, 495: 2280, 584: 2280, 593: 2280, 2280, 645: 2280, 2280, 2280, 2280}, - {2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 50: 2279, 475: 2279, 479: 2279, 2279, 2279, 2279, 487: 2279, 491: 2279, 495: 2279, 584: 2279, 593: 2279, 2279, 645: 2279, 2279, 2279, 2279}, - {2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 50: 2290, 475: 2290, 479: 2290, 2290, 2290, 2290, 487: 2290, 491: 2290, 495: 2290, 584: 2290, 593: 2290, 2290, 645: 2290, 2290, 2290, 2290}, - {481: 2295}, + {2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 73: 2252, 485: 2252, 489: 2252, 2252, 2252, 2252, 2252, 501: 2252, 505: 2252, 594: 2252, 604: 2252, 2252, 655: 2252, 2252, 2252, 659: 2252, 662: 2252}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4713}, + {9: 2250, 73: 2250}, + {221: 4736, 380: 4737, 399: 4738}, + {2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 73: 2302, 485: 2302, 489: 2302, 2302, 2302, 2302, 2302, 501: 2302, 505: 2302, 594: 2302, 604: 2302, 2302, 655: 2302, 2302, 2302, 659: 2302}, // 2125 - {2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 50: 2306, 475: 2306, 479: 2306, 2306, 2306, 2306, 487: 2306, 491: 2306, 495: 2306, 584: 2306, 593: 2306, 2306, 645: 2306, 2306, 2306, 2306}, - {511: 2759, 737: 2758, 745: 4684}, - {9: 4686, 50: 4685}, - {2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 50: 2304, 475: 2304, 479: 2304, 2304, 2304, 2304, 487: 2304, 491: 2304, 495: 2304, 584: 2304, 593: 2304, 2304, 645: 2304, 2304, 2304, 2304}, - {511: 2759, 737: 2758, 745: 4687}, + {2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 73: 2298, 485: 4718, 489: 2298, 2298, 2298, 2298, 2298, 501: 2298, 505: 2298, 594: 2298, 604: 2298, 2298, 655: 2298, 2298, 2298, 659: 2298, 1107: 4719, 4720, 1280: 4717}, + {2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 73: 2301, 485: 2301, 489: 2301, 2301, 2301, 2301, 2301, 501: 2301, 505: 2301, 594: 2301, 604: 2301, 2301, 655: 2301, 2301, 2301, 659: 2301}, + {667: 4734, 753: 4723}, + {2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 73: 2297, 485: 4732, 489: 2297, 2297, 2297, 2297, 2297, 501: 2297, 505: 2297, 594: 2297, 604: 2297, 2297, 655: 2297, 2297, 2297, 659: 2297, 1108: 4733}, + {2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 2296, 73: 2296, 485: 4721, 489: 2296, 2296, 2296, 2296, 2296, 501: 2296, 505: 2296, 594: 2296, 604: 2296, 2296, 655: 2296, 2296, 2296, 659: 2296, 1107: 4722}, // 2130 - {50: 4688}, - {2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 2303, 50: 2303, 475: 2303, 479: 2303, 2303, 2303, 2303, 487: 2303, 491: 2303, 495: 2303, 584: 2303, 593: 2303, 2303, 645: 2303, 2303, 2303, 2303}, - {2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 2307, 50: 2307, 475: 2307, 479: 2307, 2307, 2307, 2307, 487: 2307, 491: 2307, 495: 2307, 584: 2307, 593: 2307, 2307, 645: 2307, 2307, 2307, 2307}, - {2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 2302, 50: 2302, 475: 2302, 479: 2302, 2302, 2302, 2302, 487: 2302, 491: 2302, 495: 2302, 584: 2302, 593: 2302, 2302, 645: 2302, 2302, 2302, 2302}, - {2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 2301, 50: 2301, 475: 2301, 479: 2301, 2301, 2301, 2301, 487: 2301, 491: 2301, 495: 2301, 584: 2301, 593: 2301, 2301, 645: 2301, 2301, 2301, 2301}, + {753: 4723}, + {2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 73: 2294, 485: 2294, 489: 2294, 2294, 2294, 2294, 2294, 501: 2294, 505: 2294, 594: 2294, 604: 2294, 2294, 655: 2294, 2294, 2294, 659: 2294}, + {75: 4728, 519: 4727, 683: 4726, 685: 4725, 1131: 4724}, + {2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 73: 2300, 485: 2300, 489: 2300, 2300, 2300, 2300, 2300, 501: 2300, 505: 2300, 594: 2300, 604: 2300, 2300, 655: 2300, 2300, 2300, 659: 2300}, + {2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 73: 2293, 485: 2293, 489: 2293, 2293, 2293, 2293, 2293, 501: 2293, 505: 2293, 594: 2293, 604: 2293, 2293, 655: 2293, 2293, 2293, 659: 2293}, // 2135 - {2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 2300, 50: 2300, 475: 2300, 479: 2300, 2300, 2300, 2300, 487: 2300, 491: 2300, 495: 2300, 584: 2300, 593: 2300, 2300, 645: 2300, 2300, 2300, 2300}, - {2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 2308, 50: 2308, 475: 2308, 479: 2308, 2308, 2308, 2308, 487: 2308, 491: 2308, 495: 2308, 584: 2308, 593: 2308, 2308, 645: 2308, 2308, 2308, 2308}, - {2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 50: 2299, 475: 2299, 479: 2299, 2299, 2299, 2299, 487: 2299, 491: 2299, 495: 2299, 584: 2299, 593: 2299, 2299, 645: 2299, 2299, 2299, 2299}, - {2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 2298, 50: 2298, 475: 2298, 479: 2298, 2298, 2298, 2298, 487: 2298, 491: 2298, 495: 2298, 584: 2298, 593: 2298, 2298, 645: 2298, 2298, 2298, 2298}, - {2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 2297, 50: 2297, 475: 2297, 479: 2297, 2297, 2297, 2297, 487: 2297, 491: 2297, 495: 2297, 584: 2297, 593: 2297, 2297, 645: 2297, 2297, 2297, 2297}, + {2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 73: 2292, 485: 2292, 489: 2292, 2292, 2292, 2292, 2292, 501: 2292, 505: 2292, 594: 2292, 604: 2292, 2292, 655: 2292, 2292, 2292, 659: 2292}, + {490: 4731, 505: 4730}, + {320: 4729}, + {2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 2290, 73: 2290, 485: 2290, 489: 2290, 2290, 2290, 2290, 2290, 501: 2290, 505: 2290, 594: 2290, 604: 2290, 2290, 655: 2290, 2290, 2290, 659: 2290}, + {2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 2291, 73: 2291, 485: 2291, 489: 2291, 2291, 2291, 2291, 2291, 501: 2291, 505: 2291, 594: 2291, 604: 2291, 2291, 655: 2291, 2291, 2291, 659: 2291}, // 2140 - {2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 2309, 50: 2309, 475: 2309, 479: 2309, 2309, 2309, 2309, 487: 2309, 491: 2309, 495: 2309, 584: 2309, 593: 2309, 2309, 645: 2309, 2309, 2309, 2309}, - {476: 4699}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4700}, - {50: 4701, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 2294, 50: 2294, 475: 2294, 479: 2294, 2294, 2294, 2294, 487: 2294, 491: 2294, 495: 2294, 584: 2294, 593: 2294, 2294, 645: 2294, 2294, 2294, 2294, 1321: 4704, 1351: 4703, 4702}, + {2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 2289, 73: 2289, 485: 2289, 489: 2289, 2289, 2289, 2289, 2289, 501: 2289, 505: 2289, 594: 2289, 604: 2289, 2289, 655: 2289, 2289, 2289, 659: 2289}, + {667: 4734}, + {2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 2295, 73: 2295, 485: 2295, 489: 2295, 2295, 2295, 2295, 2295, 501: 2295, 505: 2295, 594: 2295, 604: 2295, 2295, 655: 2295, 2295, 2295, 659: 2295}, + {75: 4728, 519: 4727, 683: 4726, 685: 4725, 1131: 4735}, + {2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 2299, 73: 2299, 485: 2299, 489: 2299, 2299, 2299, 2299, 2299, 501: 2299, 505: 2299, 594: 2299, 604: 2299, 2299, 655: 2299, 2299, 2299, 659: 2299}, // 2145 - {2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 2311, 50: 2311, 475: 2311, 479: 2311, 2311, 2311, 2311, 487: 2311, 491: 2311, 495: 2311, 584: 2311, 593: 2311, 2311, 645: 2311, 2311, 2311, 2311}, - {2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 2293, 50: 2293, 475: 2293, 479: 2293, 2293, 2293, 2293, 487: 2293, 491: 2293, 495: 2293, 584: 2293, 593: 2293, 2293, 645: 2293, 2293, 2293, 2293}, - {2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 2292, 50: 2292, 475: 2292, 479: 2292, 2292, 2292, 2292, 487: 2292, 491: 2292, 495: 2292, 584: 2292, 593: 2292, 2292, 645: 2292, 2292, 2292, 2292}, - {476: 4706}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4707}, + {2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 2306, 73: 2306, 485: 2306, 489: 2306, 2306, 2306, 2306, 2306, 501: 2306, 505: 2306, 594: 2306, 604: 2306, 2306, 655: 2306, 2306, 2306, 659: 2306}, + {2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 2305, 73: 2305, 485: 2305, 489: 2305, 2305, 2305, 2305, 2305, 501: 2305, 505: 2305, 594: 2305, 604: 2305, 2305, 655: 2305, 2305, 2305, 659: 2305}, + {2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 2304, 73: 2304, 485: 2304, 489: 2304, 2304, 2304, 2304, 2304, 501: 2304, 505: 2304, 594: 2304, 604: 2304, 2304, 655: 2304, 2304, 2304, 659: 2304}, + {2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 73: 2315, 485: 2315, 489: 2315, 2315, 2315, 2315, 2315, 501: 2315, 505: 2315, 594: 2315, 604: 2315, 2315, 655: 2315, 2315, 2315, 659: 2315}, + {492: 2320}, // 2150 - {50: 4708, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 50: 2327, 152: 4459, 475: 2327, 479: 4115, 4114, 2327, 2327, 487: 2327, 491: 2327, 495: 2327, 584: 2327, 593: 2327, 2327, 645: 2327, 2327, 2327, 2327, 815: 4709, 939: 4710, 1045: 4711, 1217: 4712}, - {152: 4461, 495: 4713}, - {2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 50: 2326, 475: 2326, 479: 2326, 2326, 2326, 2326, 487: 2326, 491: 2326, 495: 2326, 584: 2326, 593: 2326, 2326, 645: 2326, 2326, 2326, 2326}, - {2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 50: 2324, 475: 2324, 479: 2324, 2324, 2324, 2324, 487: 2324, 491: 2324, 495: 2324, 584: 2324, 593: 2324, 2324, 645: 2324, 2324, 2324, 2324}, + {2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 2331, 73: 2331, 485: 2331, 489: 2331, 2331, 2331, 2331, 2331, 501: 2331, 505: 2331, 594: 2331, 604: 2331, 2331, 655: 2331, 2331, 2331, 659: 2331}, + {521: 2798, 747: 2797, 755: 4743}, + {9: 4745, 73: 4744}, + {2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 2329, 73: 2329, 485: 2329, 489: 2329, 2329, 2329, 2329, 2329, 501: 2329, 505: 2329, 594: 2329, 604: 2329, 2329, 655: 2329, 2329, 2329, 659: 2329}, + {521: 2798, 747: 2797, 755: 4746}, // 2155 - {2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 50: 2312, 475: 2312, 479: 2312, 2312, 2312, 2312, 487: 2312, 491: 2312, 495: 2312, 584: 2312, 593: 2312, 2312, 645: 2312, 2312, 2312, 2312}, - {2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 50: 2325, 475: 2325, 479: 2325, 2325, 2325, 2325, 487: 2325, 491: 2325, 495: 2325, 584: 2325, 593: 2325, 2325, 645: 2325, 2325, 2325, 2325}, - {2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 2313, 50: 2313, 475: 2313, 479: 2313, 2313, 2313, 2313, 487: 2313, 491: 2313, 495: 2313, 584: 2313, 593: 2313, 2313, 645: 2313, 2313, 2313, 2313}, - {588: 4722, 4719, 591: 4720, 4721, 951: 4717, 4718, 4716}, - {2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 2314, 50: 2314, 475: 2314, 479: 2314, 2314, 2314, 2314, 487: 2314, 491: 2314, 495: 2314, 584: 2314, 593: 2314, 2314, 645: 2314, 2314, 2314, 2314}, + {73: 4747}, + {2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 2328, 73: 2328, 485: 2328, 489: 2328, 2328, 2328, 2328, 2328, 501: 2328, 505: 2328, 594: 2328, 604: 2328, 2328, 655: 2328, 2328, 2328, 659: 2328}, + {2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 2332, 73: 2332, 485: 2332, 489: 2332, 2332, 2332, 2332, 2332, 501: 2332, 505: 2332, 594: 2332, 604: 2332, 2332, 655: 2332, 2332, 2332, 659: 2332}, + {2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 2327, 73: 2327, 485: 2327, 489: 2327, 2327, 2327, 2327, 2327, 501: 2327, 505: 2327, 594: 2327, 604: 2327, 2327, 655: 2327, 2327, 2327, 659: 2327}, + {2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 2326, 73: 2326, 485: 2326, 489: 2326, 2326, 2326, 2326, 2326, 501: 2326, 505: 2326, 594: 2326, 604: 2326, 2326, 655: 2326, 2326, 2326, 659: 2326}, // 2160 - {2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 2254, 50: 2254, 475: 2254, 479: 2254, 2254, 2254, 2254, 487: 2254, 491: 2254, 495: 2254, 584: 2254, 593: 2254, 2254, 645: 2254, 2254, 2254, 2254}, - {476: 4723}, - {2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 50: 2245, 475: 2245, 2249, 479: 2245, 2245, 2245, 2245, 487: 2245, 491: 2245, 495: 2245, 584: 2245, 593: 2245, 2245, 645: 2245, 2245, 2245, 2245}, - {2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 2244, 50: 2244, 475: 2244, 2248, 479: 2244, 2244, 2244, 2244, 487: 2244, 491: 2244, 495: 2244, 584: 2244, 593: 2244, 2244, 645: 2244, 2244, 2244, 2244}, - {2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 2243, 50: 2243, 475: 2243, 2247, 479: 2243, 2243, 2243, 2243, 487: 2243, 491: 2243, 495: 2243, 584: 2243, 593: 2243, 2243, 645: 2243, 2243, 2243, 2243}, + {2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 2325, 73: 2325, 485: 2325, 489: 2325, 2325, 2325, 2325, 2325, 501: 2325, 505: 2325, 594: 2325, 604: 2325, 2325, 655: 2325, 2325, 2325, 659: 2325}, + {2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 2333, 73: 2333, 485: 2333, 489: 2333, 2333, 2333, 2333, 2333, 501: 2333, 505: 2333, 594: 2333, 604: 2333, 2333, 655: 2333, 2333, 2333, 659: 2333}, + {2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 2324, 73: 2324, 485: 2324, 489: 2324, 2324, 2324, 2324, 2324, 501: 2324, 505: 2324, 594: 2324, 604: 2324, 2324, 655: 2324, 2324, 2324, 659: 2324}, + {2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 73: 2323, 485: 2323, 489: 2323, 2323, 2323, 2323, 2323, 501: 2323, 505: 2323, 594: 2323, 604: 2323, 2323, 655: 2323, 2323, 2323, 659: 2323}, + {2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 2322, 73: 2322, 485: 2322, 489: 2322, 2322, 2322, 2322, 2322, 501: 2322, 505: 2322, 594: 2322, 604: 2322, 2322, 655: 2322, 2322, 2322, 659: 2322}, // 2165 - {476: 2246}, - {50: 4724, 511: 2759, 737: 4725}, - {2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 2253, 50: 2253, 475: 2253, 479: 2253, 2253, 2253, 2253, 487: 2253, 491: 2253, 495: 2253, 584: 2253, 593: 2253, 2253, 645: 2253, 2253, 2253, 2253}, - {50: 4726}, - {2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 2252, 50: 2252, 475: 2252, 479: 2252, 2252, 2252, 2252, 487: 2252, 491: 2252, 495: 2252, 584: 2252, 593: 2252, 2252, 645: 2252, 2252, 2252, 2252}, + {2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 2334, 73: 2334, 485: 2334, 489: 2334, 2334, 2334, 2334, 2334, 501: 2334, 505: 2334, 594: 2334, 604: 2334, 2334, 655: 2334, 2334, 2334, 659: 2334}, + {486: 4758}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4759}, + {73: 4760, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 73: 2319, 485: 2319, 489: 2319, 2319, 2319, 2319, 2319, 501: 2319, 505: 2319, 594: 2319, 604: 2319, 2319, 655: 2319, 2319, 2319, 659: 2319, 1334: 4763, 1364: 4762, 4761}, // 2170 - {160: 4728}, - {2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 2315, 50: 2315, 475: 2315, 479: 2315, 2315, 2315, 2315, 487: 2315, 491: 2315, 495: 2315, 584: 2315, 593: 2315, 2315, 645: 2315, 2315, 2315, 2315}, - {2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 2316, 50: 2316, 475: 2316, 479: 2316, 2316, 2316, 2316, 487: 2316, 491: 2316, 495: 2316, 584: 2316, 593: 2316, 2316, 645: 2316, 2316, 2316, 2316}, - {2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 2263, 50: 2263, 475: 2263, 479: 2263, 2263, 2263, 2263, 487: 2263, 491: 2263, 495: 2263, 584: 2263, 593: 2263, 2263, 645: 2263, 2263, 2263, 2263}, - {2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 2262, 50: 2262, 475: 2262, 479: 2262, 2262, 2262, 2262, 487: 2262, 491: 2262, 495: 2262, 584: 2262, 593: 2262, 2262, 645: 2262, 2262, 2262, 2262}, + {2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 2336, 73: 2336, 485: 2336, 489: 2336, 2336, 2336, 2336, 2336, 501: 2336, 505: 2336, 594: 2336, 604: 2336, 2336, 655: 2336, 2336, 2336, 659: 2336}, + {2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 2318, 73: 2318, 485: 2318, 489: 2318, 2318, 2318, 2318, 2318, 501: 2318, 505: 2318, 594: 2318, 604: 2318, 2318, 655: 2318, 2318, 2318, 659: 2318}, + {2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 73: 2317, 485: 2317, 489: 2317, 2317, 2317, 2317, 2317, 501: 2317, 505: 2317, 594: 2317, 604: 2317, 2317, 655: 2317, 2317, 2317, 659: 2317}, + {486: 4765}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4766}, // 2175 - {2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 2261, 50: 2261, 475: 2261, 479: 2261, 2261, 2261, 2261, 487: 2261, 491: 2261, 495: 2261, 584: 2261, 593: 2261, 2261, 645: 2261, 2261, 2261, 2261}, - {2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 2260, 50: 2260, 475: 2260, 479: 2260, 2260, 2260, 2260, 487: 2260, 491: 2260, 495: 2260, 584: 2260, 593: 2260, 2260, 645: 2260, 2260, 2260, 2260}, - {130: 4735, 476: 4734, 588: 4722, 4719, 591: 4720, 4721, 904: 4743, 951: 4717, 4718, 4736, 1089: 4744}, - {476: 4739}, - {2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 2255, 50: 2255, 475: 2255, 479: 2255, 2255, 2255, 2255, 487: 2255, 491: 2255, 495: 2255, 584: 2255, 593: 2255, 2255, 645: 2255, 2255, 2255, 2255}, + {73: 4767, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 2352, 73: 2352, 159: 4518, 485: 2352, 489: 4164, 2352, 4163, 2352, 2352, 501: 2352, 505: 2352, 594: 2352, 604: 2352, 2352, 655: 2352, 2352, 2352, 659: 2352, 826: 4768, 950: 4769, 1057: 4770, 1230: 4771}, + {159: 4520, 505: 4772}, + {2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 2351, 73: 2351, 485: 2351, 489: 2351, 2351, 2351, 2351, 2351, 501: 2351, 505: 2351, 594: 2351, 604: 2351, 2351, 655: 2351, 2351, 2351, 659: 2351}, + {2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 2349, 73: 2349, 485: 2349, 489: 2349, 2349, 2349, 2349, 2349, 501: 2349, 505: 2349, 594: 2349, 604: 2349, 2349, 655: 2349, 2349, 2349, 659: 2349}, // 2180 - {160: 4205}, - {476: 4202}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 4740, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 4741}, - {2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 2258, 50: 2258, 475: 2258, 479: 2258, 2258, 2258, 2258, 487: 2258, 491: 2258, 495: 2258, 584: 2258, 593: 2258, 2258, 645: 2258, 2258, 2258, 2258}, - {9: 3616, 50: 4742}, + {2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 2337, 73: 2337, 485: 2337, 489: 2337, 2337, 2337, 2337, 2337, 501: 2337, 505: 2337, 594: 2337, 604: 2337, 2337, 655: 2337, 2337, 2337, 659: 2337}, + {2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 2350, 73: 2350, 485: 2350, 489: 2350, 2350, 2350, 2350, 2350, 501: 2350, 505: 2350, 594: 2350, 604: 2350, 2350, 655: 2350, 2350, 2350, 659: 2350}, + {2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 2338, 73: 2338, 485: 2338, 489: 2338, 2338, 2338, 2338, 2338, 501: 2338, 505: 2338, 594: 2338, 604: 2338, 2338, 655: 2338, 2338, 2338, 659: 2338}, + {598: 4781, 4778, 601: 4779, 4780, 962: 4776, 4777, 4775}, + {2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 2339, 73: 2339, 485: 2339, 489: 2339, 2339, 2339, 2339, 2339, 501: 2339, 505: 2339, 594: 2339, 604: 2339, 2339, 655: 2339, 2339, 2339, 659: 2339}, // 2185 - {2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 2257, 50: 2257, 475: 2257, 479: 2257, 2257, 2257, 2257, 487: 2257, 491: 2257, 495: 2257, 584: 2257, 593: 2257, 2257, 645: 2257, 2257, 2257, 2257}, - {50: 4746}, - {50: 4745}, - {2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 2256, 50: 2256, 475: 2256, 479: 2256, 2256, 2256, 2256, 487: 2256, 491: 2256, 495: 2256, 584: 2256, 593: 2256, 2256, 645: 2256, 2256, 2256, 2256}, - {2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 2259, 50: 2259, 475: 2259, 479: 2259, 2259, 2259, 2259, 487: 2259, 491: 2259, 495: 2259, 584: 2259, 593: 2259, 2259, 645: 2259, 2259, 2259, 2259}, + {2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 2279, 73: 2279, 485: 2279, 489: 2279, 2279, 2279, 2279, 2279, 501: 2279, 505: 2279, 594: 2279, 604: 2279, 2279, 655: 2279, 2279, 2279, 659: 2279}, + {486: 4782}, + {2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 2270, 73: 2270, 485: 2270, 2274, 489: 2270, 2270, 2270, 2270, 2270, 501: 2270, 505: 2270, 594: 2270, 604: 2270, 2270, 655: 2270, 2270, 2270, 659: 2270}, + {2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 2269, 73: 2269, 485: 2269, 2273, 489: 2269, 2269, 2269, 2269, 2269, 501: 2269, 505: 2269, 594: 2269, 604: 2269, 2269, 655: 2269, 2269, 2269, 659: 2269}, + {2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 2268, 73: 2268, 485: 2268, 2272, 489: 2268, 2268, 2268, 2268, 2268, 501: 2268, 505: 2268, 594: 2268, 604: 2268, 2268, 655: 2268, 2268, 2268, 659: 2268}, // 2190 - {2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 2317, 50: 2317, 475: 2317, 479: 2317, 2317, 2317, 2317, 487: 2317, 491: 2317, 495: 2317, 584: 2317, 593: 2317, 2317, 645: 2317, 2317, 2317, 2317}, - {2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 2320, 50: 2320, 86: 4749, 88: 4750, 475: 2320, 479: 2320, 2320, 2320, 2320, 487: 2320, 491: 2320, 495: 2320, 584: 2320, 593: 2320, 2320, 645: 2320, 2320, 2320, 2320, 873: 4751}, - {2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 2452, 19: 2452, 50: 2452, 84: 2452, 2452, 2452, 2452, 2452, 90: 2452, 475: 2452, 477: 2452, 479: 2452, 2452, 2452, 2452, 484: 2452, 487: 2452, 491: 2452, 495: 2452, 500: 2452, 584: 2452, 593: 2452, 2452, 645: 2452, 2452, 2452, 2452}, - {2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 2451, 19: 2451, 50: 2451, 84: 2451, 2451, 2451, 2451, 2451, 90: 2451, 475: 2451, 477: 2451, 479: 2451, 2451, 2451, 2451, 484: 2451, 487: 2451, 491: 2451, 495: 2451, 500: 2451, 584: 2451, 593: 2451, 2451, 645: 2451, 2451, 2451, 2451}, - {2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 2319, 50: 2319, 475: 2319, 479: 2319, 2319, 2319, 2319, 487: 2319, 491: 2319, 495: 2319, 584: 2319, 593: 2319, 2319, 645: 2319, 2319, 2319, 2319}, + {486: 2271}, + {73: 4783, 521: 2798, 747: 4784}, + {2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 2278, 73: 2278, 485: 2278, 489: 2278, 2278, 2278, 2278, 2278, 501: 2278, 505: 2278, 594: 2278, 604: 2278, 2278, 655: 2278, 2278, 2278, 659: 2278}, + {73: 4785}, + {2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 2277, 73: 2277, 485: 2277, 489: 2277, 2277, 2277, 2277, 2277, 501: 2277, 505: 2277, 594: 2277, 604: 2277, 2277, 655: 2277, 2277, 2277, 659: 2277}, // 2195 - {2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 2323, 50: 2323, 475: 2323, 479: 2323, 2323, 2323, 2323, 487: 2323, 491: 2323, 495: 2323, 584: 2323, 593: 2323, 2323, 645: 2323, 2323, 2323, 2323}, - {584: 2424, 593: 2424, 2424, 645: 2424, 652: 2424, 678: 2424, 2424}, - {2423, 2423, 2423, 2423, 2423, 2423, 9: 2423, 491: 2423, 584: 2423, 593: 2423, 2423, 645: 2423, 652: 2423, 678: 2423, 2423}, - {2356, 2356, 2356, 2356, 2356, 2356, 9: 2356, 2356, 2356, 50: 2356, 491: 2356}, - {2482, 2482, 2482, 2482, 2482, 2482, 9: 2482, 491: 2482}, + {167: 4787}, + {2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 2340, 73: 2340, 485: 2340, 489: 2340, 2340, 2340, 2340, 2340, 501: 2340, 505: 2340, 594: 2340, 604: 2340, 2340, 655: 2340, 2340, 2340, 659: 2340}, + {2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 2341, 73: 2341, 485: 2341, 489: 2341, 2341, 2341, 2341, 2341, 501: 2341, 505: 2341, 594: 2341, 604: 2341, 2341, 655: 2341, 2341, 2341, 659: 2341}, + {2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 2288, 73: 2288, 485: 2288, 489: 2288, 2288, 2288, 2288, 2288, 501: 2288, 505: 2288, 594: 2288, 604: 2288, 2288, 655: 2288, 2288, 2288, 659: 2288}, + {2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 2287, 73: 2287, 485: 2287, 489: 2287, 2287, 2287, 2287, 2287, 501: 2287, 505: 2287, 594: 2287, 604: 2287, 2287, 655: 2287, 2287, 2287, 659: 2287}, // 2200 - {2434, 2434, 2434, 2434, 2434, 2434, 9: 2434, 491: 2434}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4759}, - {2433, 2433, 2433, 2433, 2433, 2433, 9: 2433, 491: 2433}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4761}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4482, 853: 4762}, + {2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 2286, 73: 2286, 485: 2286, 489: 2286, 2286, 2286, 2286, 2286, 501: 2286, 505: 2286, 594: 2286, 604: 2286, 2286, 655: 2286, 2286, 2286, 659: 2286}, + {2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 2285, 73: 2285, 485: 2285, 489: 2285, 2285, 2285, 2285, 2285, 501: 2285, 505: 2285, 594: 2285, 604: 2285, 2285, 655: 2285, 2285, 2285, 659: 2285}, + {137: 4794, 486: 4793, 598: 4781, 4778, 601: 4779, 4780, 915: 4802, 962: 4776, 4777, 4795, 1101: 4803}, + {486: 4798}, + {2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 2280, 73: 2280, 485: 2280, 489: 2280, 2280, 2280, 2280, 2280, 501: 2280, 505: 2280, 594: 2280, 604: 2280, 2280, 655: 2280, 2280, 2280, 659: 2280}, // 2205 - {2435, 2435, 2435, 2435, 2435, 2435, 9: 2435, 4757, 4758, 491: 2435, 934: 4763}, - {2483, 2483, 2483, 2483, 2483, 2483, 9: 2483, 491: 2483}, - {2484, 2484, 2484, 2484, 2484, 2484, 9: 2484, 491: 2484}, - {2485, 2485, 2485, 2485, 2485, 2485, 9: 2485, 491: 2485}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4769, 990: 4768, 1177: 4767}, + {167: 4254}, + {486: 4251}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 4799, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 4800}, + {2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 2283, 73: 2283, 485: 2283, 489: 2283, 2283, 2283, 2283, 2283, 501: 2283, 505: 2283, 594: 2283, 604: 2283, 2283, 655: 2283, 2283, 2283, 659: 2283}, + {9: 3665, 73: 4801}, // 2210 - {2486, 2486, 2486, 2486, 2486, 2486, 9: 4771, 491: 2486}, - {1324, 1324, 1324, 1324, 1324, 1324, 9: 1324, 491: 1324}, - {1314, 1314, 1314, 1314, 1314, 1314, 9: 1314, 491: 1314, 532: 4649, 534: 4648, 954: 4770}, - {1322, 1322, 1322, 1322, 1322, 1322, 9: 1322, 491: 1322}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4769, 990: 4772}, + {2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 2282, 73: 2282, 485: 2282, 489: 2282, 2282, 2282, 2282, 2282, 501: 2282, 505: 2282, 594: 2282, 604: 2282, 2282, 655: 2282, 2282, 2282, 659: 2282}, + {73: 4805}, + {73: 4804}, + {2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 2281, 73: 2281, 485: 2281, 489: 2281, 2281, 2281, 2281, 2281, 501: 2281, 505: 2281, 594: 2281, 604: 2281, 2281, 655: 2281, 2281, 2281, 659: 2281}, + {2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 2284, 73: 2284, 485: 2284, 489: 2284, 2284, 2284, 2284, 2284, 501: 2284, 505: 2284, 594: 2284, 604: 2284, 2284, 655: 2284, 2284, 2284, 659: 2284}, // 2215 - {1323, 1323, 1323, 1323, 1323, 1323, 9: 1323, 491: 1323}, - {2: 582, 582, 582, 582, 582, 582, 582, 10: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 51: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 4776, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 654: 582, 816: 4775, 833: 4774}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4777}, - {581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 51: 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 581, 476: 581, 491: 581, 511: 581, 533: 581, 572: 581, 654: 581}, - {580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 51: 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 476: 580, 491: 580, 511: 580, 533: 580, 572: 580, 654: 580}, + {2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 2342, 73: 2342, 485: 2342, 489: 2342, 2342, 2342, 2342, 2342, 501: 2342, 505: 2342, 594: 2342, 604: 2342, 2342, 655: 2342, 2342, 2342, 659: 2342}, + {2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 2345, 73: 2345, 88: 4808, 90: 4809, 485: 2345, 489: 2345, 2345, 2345, 2345, 2345, 501: 2345, 505: 2345, 594: 2345, 604: 2345, 2345, 655: 2345, 2345, 2345, 659: 2345, 884: 4810}, + {2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 2477, 19: 2477, 73: 2477, 86: 2477, 2477, 2477, 2477, 2477, 92: 2477, 485: 2477, 488: 2477, 2477, 2477, 2477, 2477, 2477, 495: 2477, 501: 2477, 505: 2477, 511: 2477, 594: 2477, 604: 2477, 2477, 655: 2477, 2477, 2477, 659: 2477}, + {2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 2476, 19: 2476, 73: 2476, 86: 2476, 2476, 2476, 2476, 2476, 92: 2476, 485: 2476, 488: 2476, 2476, 2476, 2476, 2476, 2476, 495: 2476, 501: 2476, 505: 2476, 511: 2476, 594: 2476, 604: 2476, 2476, 655: 2476, 2476, 2476, 659: 2476}, + {2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 2344, 73: 2344, 485: 2344, 489: 2344, 2344, 2344, 2344, 2344, 501: 2344, 505: 2344, 594: 2344, 604: 2344, 2344, 655: 2344, 2344, 2344, 659: 2344}, // 2220 - {2489, 2489, 2489, 2489, 2489, 2489, 9: 2489, 491: 2489}, - {2458, 2458, 2458, 2458, 2458, 2458, 9: 2458, 20: 2458, 491: 2458}, - {2457, 2457, 2457, 2457, 2457, 2457, 9: 4781, 20: 2457, 491: 2457}, - {2428, 2428, 2428, 2428, 2428, 2428, 9: 2428, 20: 2428, 50: 2428, 103: 2428, 168: 2428, 170: 2428, 477: 2428, 491: 2428, 499: 2428, 652: 2428, 654: 2428}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4782, 2785, 2786, 2784}, + {2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 2348, 73: 2348, 485: 2348, 489: 2348, 2348, 2348, 2348, 2348, 501: 2348, 505: 2348, 594: 2348, 604: 2348, 2348, 655: 2348, 2348, 2348, 659: 2348}, + {594: 2449, 604: 2449, 2449, 655: 2449, 661: 2449, 688: 2449, 2449}, + {2448, 2448, 2448, 2448, 2448, 2448, 9: 2448, 501: 2448, 594: 2448, 604: 2448, 2448, 655: 2448, 661: 2448, 688: 2448, 2448}, + {2381, 2381, 2381, 2381, 2381, 2381, 9: 2381, 2381, 2381, 73: 2381, 501: 2381}, + {2507, 2507, 2507, 2507, 2507, 2507, 9: 2507, 501: 2507}, // 2225 - {2427, 2427, 2427, 2427, 2427, 2427, 9: 2427, 20: 2427, 50: 2427, 103: 2427, 168: 2427, 170: 2427, 477: 2427, 491: 2427, 499: 2427, 652: 2427, 654: 2427}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4785}, - {2490, 2490, 2490, 2490, 2490, 2490, 9: 2490, 491: 2490}, - {20: 4786}, - {2492, 2492, 2492, 2492, 2492, 2492, 9: 2492, 491: 2492}, + {2459, 2459, 2459, 2459, 2459, 2459, 9: 2459, 501: 2459}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4818}, + {2458, 2458, 2458, 2458, 2458, 2458, 9: 2458, 501: 2458}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4820}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4541, 863: 4821}, // 2230 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4789}, - {2491, 2491, 2491, 2491, 2491, 2491, 9: 2491, 491: 2491}, - {20: 4790}, - {2493, 2493, 2493, 2493, 2493, 2493, 9: 2493, 491: 2493}, - {2: 582, 582, 582, 582, 582, 582, 582, 10: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 51: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 4776, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 654: 582, 816: 4775, 833: 4792}, + {2460, 2460, 2460, 2460, 2460, 2460, 9: 2460, 4816, 4817, 501: 2460, 945: 4822}, + {2508, 2508, 2508, 2508, 2508, 2508, 9: 2508, 501: 2508}, + {2509, 2509, 2509, 2509, 2509, 2509, 9: 2509, 501: 2509}, + {2510, 2510, 2510, 2510, 2510, 2510, 9: 2510, 501: 2510}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4828, 1000: 4827, 1191: 4826}, // 2235 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4793}, - {2494, 2494, 2494, 2494, 2494, 2494, 9: 2494, 491: 2494}, - {2: 582, 582, 582, 582, 582, 582, 582, 10: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 51: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 4776, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 654: 582, 816: 4775, 833: 4795}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4796}, - {2495, 2495, 2495, 2495, 2495, 2495, 9: 2495, 491: 2495}, + {2511, 2511, 2511, 2511, 2511, 2511, 9: 4830, 501: 2511}, + {1337, 1337, 1337, 1337, 1337, 1337, 9: 1337, 501: 1337}, + {1327, 1327, 1327, 1327, 1327, 1327, 9: 1327, 501: 1327, 542: 4708, 555: 4707, 965: 4829}, + {1335, 1335, 1335, 1335, 1335, 1335, 9: 1335, 501: 1335}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4828, 1000: 4831}, // 2240 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4798}, - {2496, 2496, 2496, 2496, 2496, 2496, 9: 2496, 491: 2496}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4800, 2785, 2786, 2784}, - {477: 4801}, - {572: 4802}, + {1336, 1336, 1336, 1336, 1336, 1336, 9: 1336, 501: 1336}, + {2: 595, 595, 595, 595, 595, 595, 595, 10: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 74: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 4835, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 664: 595, 827: 4834, 843: 4833}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4836}, + {594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 74: 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 486: 594, 501: 594, 521: 594, 543: 594, 581: 594, 664: 594}, + {593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 74: 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 593, 486: 593, 501: 593, 521: 593, 543: 593, 581: 593, 664: 593}, // 2245 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 4803}, - {2456, 2456, 2456, 2456, 2456, 2456, 9: 2456, 227: 4807, 477: 4806, 491: 2456, 1362: 4805, 4804}, - {2497, 2497, 2497, 2497, 2497, 2497, 9: 2497, 491: 2497}, - {2455, 2455, 2455, 2455, 2455, 2455, 9: 2455, 491: 2455}, - {203: 4809}, + {2514, 2514, 2514, 2514, 2514, 2514, 9: 2514, 501: 2514}, + {2483, 2483, 2483, 2483, 2483, 2483, 9: 2483, 20: 2483, 501: 2483}, + {2482, 2482, 2482, 2482, 2482, 2482, 9: 4840, 20: 2482, 501: 2482}, + {2453, 2453, 2453, 2453, 2453, 2453, 9: 2453, 20: 2453, 73: 2453, 105: 2453, 175: 2453, 177: 2453, 488: 2453, 501: 2453, 510: 2453, 661: 2453, 664: 2453}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4841, 2824, 2825, 2823}, // 2250 - {203: 4808}, - {2453, 2453, 2453, 2453, 2453, 2453, 9: 2453, 491: 2453}, - {2454, 2454, 2454, 2454, 2454, 2454, 9: 2454, 491: 2454}, - {154: 4811}, - {159: 4812}, + {2452, 2452, 2452, 2452, 2452, 2452, 9: 2452, 20: 2452, 73: 2452, 105: 2452, 175: 2452, 177: 2452, 488: 2452, 501: 2452, 510: 2452, 661: 2452, 664: 2452}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4844}, + {2515, 2515, 2515, 2515, 2515, 2515, 9: 2515, 501: 2515}, + {20: 4845}, + {2517, 2517, 2517, 2517, 2517, 2517, 9: 2517, 501: 2517}, // 2255 - {476: 4813}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4814}, - {50: 4815, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {1877, 1877, 1877, 1877, 1877, 1877, 9: 1877, 491: 1877, 567: 4478, 784: 4816}, - {2499, 2499, 2499, 2499, 2499, 2499, 9: 2499, 491: 2499}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4848}, + {2516, 2516, 2516, 2516, 2516, 2516, 9: 2516, 501: 2516}, + {20: 4849}, + {2518, 2518, 2518, 2518, 2518, 2518, 9: 2518, 501: 2518}, + {2: 595, 595, 595, 595, 595, 595, 595, 10: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 74: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 4835, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 664: 595, 827: 4834, 843: 4851}, // 2260 - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4835}, - {584: 4834}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4832}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4830}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4828}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4852}, + {2519, 2519, 2519, 2519, 2519, 2519, 9: 2519, 501: 2519}, + {2: 595, 595, 595, 595, 595, 595, 595, 10: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 74: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 4835, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 664: 595, 827: 4834, 843: 4854}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4855}, + {2520, 2520, 2520, 2520, 2520, 2520, 9: 2520, 501: 2520}, // 2265 - {584: 4825}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4824, 2785, 2786, 2784}, - {2464, 2464, 2464, 2464, 2464, 2464, 9: 2464, 491: 2464}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 4826}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4754, 2785, 2786, 2784, 1152: 4827}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4857}, + {2521, 2521, 2521, 2521, 2521, 2521, 9: 2521, 501: 2521}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4859, 2824, 2825, 2823}, + {488: 4860}, + {581: 4861}, // 2270 - {2487, 2487, 2487, 2487, 2487, 2487, 9: 2487, 491: 2487}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4829, 2785, 2786, 2784}, - {2488, 2488, 2488, 2488, 2488, 2488, 9: 2488, 491: 2488}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4831, 2785, 2786, 2784}, - {2498, 2498, 2498, 2498, 2498, 2498, 9: 2498, 491: 2498}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 4862}, + {2481, 2481, 2481, 2481, 2481, 2481, 9: 2481, 235: 4866, 488: 4865, 501: 2481, 1375: 4864, 4863}, + {2522, 2522, 2522, 2522, 2522, 2522, 9: 2522, 501: 2522}, + {2480, 2480, 2480, 2480, 2480, 2480, 9: 2480, 501: 2480}, + {211: 4868}, // 2275 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 4833}, - {2500, 2500, 2500, 2500, 2500, 2500, 9: 4781, 491: 2500}, - {2501, 2501, 2501, 2501, 2501, 2501, 9: 2501, 491: 2501}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4836}, - {2069, 2069, 2069, 2069, 2069, 2069, 9: 2069, 491: 2069, 673: 4839, 675: 4838, 916: 4837}, + {211: 4867}, + {2478, 2478, 2478, 2478, 2478, 2478, 9: 2478, 501: 2478}, + {2479, 2479, 2479, 2479, 2479, 2479, 9: 2479, 501: 2479}, + {161: 4870}, + {166: 4871}, // 2280 - {2502, 2502, 2502, 2502, 2502, 2502, 9: 2502, 491: 2502}, - {2068, 2068, 2068, 2068, 2068, 2068, 9: 2068, 491: 2068}, - {2067, 2067, 2067, 2067, 2067, 2067, 9: 2067, 491: 2067}, - {141: 4776, 511: 582, 816: 4775, 833: 4841}, - {511: 2759, 737: 4842}, + {486: 4872}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 4873}, + {73: 4874, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {1900, 1900, 1900, 1900, 1900, 1900, 9: 1900, 501: 1900, 577: 4537, 792: 4875}, + {2524, 2524, 2524, 2524, 2524, 2524, 9: 2524, 501: 2524}, // 2285 - {2503, 2503, 2503, 2503, 2503, 2503, 9: 2503, 491: 2503}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 654: 4778, 664: 4780, 2785, 2786, 2784, 791: 4779, 836: 4844}, - {2504, 2504, 2504, 2504, 2504, 2504, 9: 2504, 491: 2504}, - {154: 4846}, - {159: 4847}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4894}, + {594: 4893}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4891}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4889}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4887}, // 2290 - {476: 4848}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4849}, - {50: 4850, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {582, 582, 582, 582, 582, 582, 9: 582, 141: 4776, 491: 582, 816: 4775, 833: 4851}, - {2508, 2508, 2508, 2508, 2508, 2508, 9: 2508, 491: 2508}, + {594: 4884}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4883, 2824, 2825, 2823}, + {2489, 2489, 2489, 2489, 2489, 2489, 9: 2489, 501: 2489}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 4885}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4813, 2824, 2825, 2823, 1166: 4886}, // 2295 - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 476: 1875, 567: 4870, 790: 4984}, - {2511, 2511, 2511, 2511, 2511, 2511, 9: 2511, 491: 2511}, - {1875, 1875, 1875, 1875, 1875, 1875, 9: 1875, 92: 1875, 141: 1875, 476: 1875, 491: 1875, 567: 4870, 790: 4938, 816: 1875}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 4929}, - {584: 4436, 593: 4862, 4857, 645: 4860, 652: 4437, 678: 4861, 4858, 832: 4859, 1206: 4863}, + {2512, 2512, 2512, 2512, 2512, 2512, 9: 2512, 501: 2512}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4888, 2824, 2825, 2823}, + {2513, 2513, 2513, 2513, 2513, 2513, 9: 2513, 501: 2513}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4890, 2824, 2825, 2823}, + {2523, 2523, 2523, 2523, 2523, 2523, 9: 2523, 501: 2523}, // 2300 - {584: 4923}, - {2: 2439, 2439, 2439, 2439, 2439, 2439, 2439, 10: 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 51: 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 476: 2439, 584: 4436, 652: 4437, 832: 4879, 1074: 4917}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 476: 1875, 484: 1875, 567: 4870, 790: 4911}, - {2: 2439, 2439, 2439, 2439, 2439, 2439, 2439, 10: 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 51: 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 476: 2439, 484: 2439, 584: 4436, 652: 4437, 832: 4879, 1074: 4880}, - {584: 4868}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 4892}, + {2525, 2525, 2525, 2525, 2525, 2525, 9: 4840, 501: 2525}, + {2526, 2526, 2526, 2526, 2526, 2526, 9: 2526, 501: 2526}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4895}, + {2093, 2093, 2093, 2093, 2093, 2093, 9: 2093, 501: 2093, 683: 4898, 685: 4897, 927: 4896}, // 2305 - {476: 4864}, - {453, 453, 453, 453, 453, 453, 9: 453, 50: 453, 491: 453}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 4865}, - {50: 4866, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2327, 2327, 2327, 2327, 2327, 2327, 9: 2327, 50: 2327, 152: 4459, 479: 4115, 4114, 491: 2327, 815: 4460, 939: 4710, 1045: 4867}, + {2527, 2527, 2527, 2527, 2527, 2527, 9: 2527, 501: 2527}, + {2092, 2092, 2092, 2092, 2092, 2092, 9: 2092, 501: 2092}, + {2091, 2091, 2091, 2091, 2091, 2091, 9: 2091, 501: 2091}, + {148: 4835, 521: 595, 827: 4834, 843: 4900}, + {521: 2798, 747: 4901}, // 2310 - {2282, 2282, 2282, 2282, 2282, 2282, 9: 2282, 50: 2282, 491: 2282}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 476: 1875, 567: 4870, 790: 4869}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 1871, 664: 4874, 2785, 2786, 2784, 882: 4873}, - {479: 4115, 4114, 815: 4871}, - {586: 4872}, + {2528, 2528, 2528, 2528, 2528, 2528, 9: 2528, 501: 2528}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 664: 4837, 676: 4839, 2824, 2825, 2823, 801: 4838, 846: 4903}, + {2529, 2529, 2529, 2529, 2529, 2529, 9: 2529, 501: 2529}, + {161: 4905}, + {166: 4906}, // 2315 - {1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 51: 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 476: 1874, 478: 1874, 484: 1874, 491: 1874, 573: 1874, 816: 1874}, - {476: 4875}, - {476: 1870}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 4876}, - {9: 4653, 50: 4877}, + {486: 4907}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 4908}, + {73: 4909, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {595, 595, 595, 595, 595, 595, 9: 595, 148: 4835, 501: 595, 827: 4834, 843: 4910}, + {2533, 2533, 2533, 2533, 2533, 2533, 9: 2533, 501: 2533}, // 2320 - {647: 4637, 915: 4878}, - {2283, 2283, 2283, 2283, 2283, 2283, 9: 2283, 50: 2283, 491: 2283}, - {2: 2438, 2438, 2438, 2438, 2438, 2438, 2438, 10: 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 51: 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 2438, 476: 2438, 484: 2438}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 1871, 484: 1871, 664: 4882, 2785, 2786, 2784, 882: 4883, 947: 4881}, - {476: 4891}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 486: 1898, 577: 4929, 797: 5043}, + {2536, 2536, 2536, 2536, 2536, 2536, 9: 2536, 501: 2536}, + {1898, 1898, 1898, 1898, 1898, 1898, 9: 1898, 94: 1898, 148: 1898, 486: 1898, 501: 1898, 577: 4929, 797: 4997, 827: 1898}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 4988}, + {594: 4495, 604: 4921, 4916, 655: 4919, 661: 4496, 688: 4920, 4917, 842: 4918, 1219: 4922}, // 2325 - {85: 4889, 476: 1870, 484: 1870}, - {476: 1861, 484: 4884}, - {146: 4887, 179: 4886, 195: 4888, 910: 4885}, - {476: 1860}, - {1854, 1854, 1854, 1854, 1854, 1854, 1854, 9: 1854, 19: 1854, 50: 1854, 84: 1854, 1854, 1854, 1854, 1854, 90: 1854, 475: 1854, 1854, 1854, 484: 1854, 491: 1854, 500: 1854}, + {594: 4982}, + {2: 2464, 2464, 2464, 2464, 2464, 2464, 2464, 10: 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 74: 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 486: 2464, 594: 4495, 661: 4496, 842: 4938, 1086: 4976}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 486: 1898, 495: 1898, 577: 4929, 797: 4970}, + {2: 2464, 2464, 2464, 2464, 2464, 2464, 2464, 10: 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 74: 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 2464, 486: 2464, 495: 2464, 594: 4495, 661: 4496, 842: 4938, 1086: 4939}, + {594: 4927}, // 2330 - {1853, 1853, 1853, 1853, 1853, 1853, 1853, 9: 1853, 19: 1853, 50: 1853, 84: 1853, 1853, 1853, 1853, 1853, 90: 1853, 475: 1853, 1853, 1853, 484: 1853, 491: 1853, 500: 1853}, - {1852, 1852, 1852, 1852, 1852, 1852, 1852, 9: 1852, 19: 1852, 50: 1852, 84: 1852, 1852, 1852, 1852, 1852, 90: 1852, 475: 1852, 1852, 1852, 484: 1852, 491: 1852, 500: 1852}, - {146: 4887, 179: 4886, 195: 4888, 910: 4890}, - {476: 1859}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 4892}, + {486: 4923}, + {464, 464, 464, 464, 464, 464, 9: 464, 73: 464, 501: 464}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 4924}, + {73: 4925, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2352, 2352, 2352, 2352, 2352, 2352, 9: 2352, 73: 2352, 159: 4518, 489: 4164, 491: 4163, 501: 2352, 826: 4519, 950: 4769, 1057: 4926}, // 2335 - {9: 4653, 50: 4893}, - {1869, 1869, 1869, 1869, 1869, 1869, 1869, 9: 1869, 19: 1869, 50: 1869, 85: 1869, 1869, 1869, 1869, 90: 1869, 477: 1869, 484: 1869, 491: 1869, 884: 4894}, - {2284, 2284, 2284, 2284, 2284, 2284, 4899, 9: 2284, 19: 4896, 50: 2284, 85: 4903, 4749, 4456, 4750, 90: 4455, 477: 4898, 484: 4902, 491: 2284, 860: 4900, 862: 4897, 873: 4901, 883: 4895}, - {1868, 1868, 1868, 1868, 1868, 1868, 1868, 9: 1868, 19: 1868, 50: 1868, 84: 1868, 1868, 1868, 1868, 1868, 90: 1868, 477: 1868, 484: 1868, 491: 1868, 500: 1868}, - {502: 4307, 511: 2064, 741: 4909}, + {2307, 2307, 2307, 2307, 2307, 2307, 9: 2307, 73: 2307, 501: 2307}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 486: 1898, 577: 4929, 797: 4928}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 1894, 676: 4933, 2824, 2825, 2823, 894: 4932}, + {489: 4164, 491: 4163, 826: 4930}, + {596: 4931}, // 2340 - {1866, 1866, 1866, 1866, 1866, 1866, 1866, 9: 1866, 19: 1866, 50: 1866, 84: 1866, 1866, 1866, 1866, 1866, 90: 1866, 477: 1866, 484: 1866, 491: 1866, 500: 1866}, - {370: 4907}, - {478: 4906}, - {1863, 1863, 1863, 1863, 1863, 1863, 1863, 9: 1863, 19: 1863, 50: 1863, 84: 1863, 1863, 1863, 1863, 1863, 90: 1863, 477: 1863, 484: 1863, 491: 1863, 500: 1863}, - {1862, 1862, 1862, 1862, 1862, 1862, 1862, 9: 1862, 19: 1862, 50: 1862, 84: 1862, 1862, 1862, 1862, 1862, 90: 1862, 477: 1862, 484: 1862, 491: 1862, 500: 1862}, + {1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 74: 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 1897, 486: 1897, 1897, 495: 1897, 501: 1897, 583: 1897, 827: 1897}, + {486: 4934}, + {486: 1893}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 4935}, + {9: 4712, 73: 4936}, // 2345 - {146: 4887, 179: 4886, 195: 4888, 910: 4905}, - {146: 4887, 179: 4886, 195: 4888, 910: 4904}, - {1855, 1855, 1855, 1855, 1855, 1855, 1855, 9: 1855, 19: 1855, 50: 1855, 84: 1855, 1855, 1855, 1855, 1855, 90: 1855, 475: 1855, 477: 1855, 484: 1855, 491: 1855, 500: 1855}, - {1856, 1856, 1856, 1856, 1856, 1856, 1856, 9: 1856, 19: 1856, 50: 1856, 84: 1856, 1856, 1856, 1856, 1856, 90: 1856, 475: 1856, 477: 1856, 484: 1856, 491: 1856, 500: 1856}, - {1864, 1864, 1864, 1864, 1864, 1864, 1864, 9: 1864, 19: 1864, 50: 1864, 84: 1864, 1864, 1864, 1864, 1864, 90: 1864, 477: 1864, 484: 1864, 491: 1864, 500: 1864}, + {657: 4696, 926: 4937}, + {2308, 2308, 2308, 2308, 2308, 2308, 9: 2308, 73: 2308, 501: 2308}, + {2: 2463, 2463, 2463, 2463, 2463, 2463, 2463, 10: 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 74: 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 2463, 486: 2463, 495: 2463}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 1894, 495: 1894, 676: 4941, 2824, 2825, 2823, 894: 4942, 958: 4940}, + {486: 4950}, // 2350 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4908, 2785, 2786, 2784}, - {1865, 1865, 1865, 1865, 1865, 1865, 1865, 9: 1865, 19: 1865, 50: 1865, 84: 1865, 1865, 1865, 1865, 1865, 90: 1865, 477: 1865, 484: 1865, 491: 1865, 500: 1865}, - {511: 2759, 737: 2758, 745: 4910}, - {1867, 1867, 1867, 1867, 1867, 1867, 1867, 9: 1867, 19: 1867, 50: 1867, 84: 1867, 1867, 1867, 1867, 1867, 90: 1867, 477: 1867, 484: 1867, 491: 1867, 500: 1867}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 1871, 484: 1871, 664: 4882, 2785, 2786, 2784, 882: 4883, 947: 4912}, + {87: 4948, 486: 1893, 495: 1893}, + {486: 1884, 495: 4943}, + {153: 4946, 186: 4945, 203: 4947, 921: 4944}, + {486: 1883}, + {1877, 1877, 1877, 1877, 1877, 1877, 1877, 9: 1877, 19: 1877, 73: 1877, 86: 1877, 1877, 1877, 1877, 1877, 92: 1877, 485: 1877, 1877, 488: 1877, 495: 1877, 501: 1877, 511: 1877}, // 2355 - {476: 4913}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 4914}, - {9: 4653, 50: 4915}, - {1869, 1869, 1869, 1869, 1869, 1869, 1869, 9: 1869, 19: 1869, 50: 1869, 85: 1869, 1869, 1869, 1869, 90: 1869, 477: 1869, 484: 1869, 491: 1869, 884: 4916}, - {2285, 2285, 2285, 2285, 2285, 2285, 4899, 9: 2285, 19: 4896, 50: 2285, 85: 4903, 4749, 4456, 4750, 90: 4455, 477: 4898, 484: 4902, 491: 2285, 860: 4900, 862: 4897, 873: 4901, 883: 4895}, + {1876, 1876, 1876, 1876, 1876, 1876, 1876, 9: 1876, 19: 1876, 73: 1876, 86: 1876, 1876, 1876, 1876, 1876, 92: 1876, 485: 1876, 1876, 488: 1876, 495: 1876, 501: 1876, 511: 1876}, + {1875, 1875, 1875, 1875, 1875, 1875, 1875, 9: 1875, 19: 1875, 73: 1875, 86: 1875, 1875, 1875, 1875, 1875, 92: 1875, 485: 1875, 1875, 488: 1875, 495: 1875, 501: 1875, 511: 1875}, + {153: 4946, 186: 4945, 203: 4947, 921: 4949}, + {486: 1882}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 4951}, // 2360 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 1871, 664: 4874, 2785, 2786, 2784, 882: 4918}, - {476: 4919}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 4920}, - {9: 4653, 50: 4921}, - {1869, 1869, 1869, 1869, 1869, 1869, 1869, 9: 1869, 19: 1869, 50: 1869, 85: 1869, 1869, 1869, 1869, 90: 1869, 477: 1869, 484: 1869, 491: 1869, 884: 4922}, + {9: 4712, 73: 4952}, + {1892, 1892, 1892, 1892, 1892, 1892, 1892, 9: 1892, 19: 1892, 73: 1892, 87: 1892, 1892, 1892, 1892, 92: 1892, 488: 1892, 495: 1892, 501: 1892, 896: 4953}, + {2309, 2309, 2309, 2309, 2309, 2309, 4958, 9: 2309, 19: 4955, 73: 2309, 87: 4962, 4808, 4515, 4809, 92: 4514, 488: 4957, 495: 4961, 501: 2309, 870: 4959, 872: 4956, 884: 4960, 895: 4954}, + {1891, 1891, 1891, 1891, 1891, 1891, 1891, 9: 1891, 19: 1891, 73: 1891, 86: 1891, 1891, 1891, 1891, 1891, 92: 1891, 488: 1891, 495: 1891, 501: 1891, 511: 1891}, + {512: 4358, 521: 2088, 750: 4968}, // 2365 - {2286, 2286, 2286, 2286, 2286, 2286, 4899, 9: 2286, 19: 4896, 50: 2286, 85: 4903, 4749, 4456, 4750, 90: 4455, 477: 4898, 484: 4902, 491: 2286, 860: 4900, 862: 4897, 873: 4901, 883: 4895}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 1871, 484: 1871, 664: 4882, 2785, 2786, 2784, 882: 4883, 947: 4924}, - {476: 4925}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 4926}, - {9: 4653, 50: 4927}, + {1889, 1889, 1889, 1889, 1889, 1889, 1889, 9: 1889, 19: 1889, 73: 1889, 86: 1889, 1889, 1889, 1889, 1889, 92: 1889, 488: 1889, 495: 1889, 501: 1889, 511: 1889}, + {379: 4966}, + {487: 4965}, + {1886, 1886, 1886, 1886, 1886, 1886, 1886, 9: 1886, 19: 1886, 73: 1886, 86: 1886, 1886, 1886, 1886, 1886, 92: 1886, 488: 1886, 495: 1886, 501: 1886, 511: 1886}, + {1885, 1885, 1885, 1885, 1885, 1885, 1885, 9: 1885, 19: 1885, 73: 1885, 86: 1885, 1885, 1885, 1885, 1885, 92: 1885, 488: 1885, 495: 1885, 501: 1885, 511: 1885}, // 2370 - {1869, 1869, 1869, 1869, 1869, 1869, 1869, 9: 1869, 19: 1869, 50: 1869, 85: 1869, 1869, 1869, 1869, 90: 1869, 477: 1869, 484: 1869, 491: 1869, 884: 4928}, - {2287, 2287, 2287, 2287, 2287, 2287, 4899, 9: 2287, 19: 4896, 50: 2287, 85: 4903, 4749, 4456, 4750, 90: 4455, 477: 4898, 484: 4902, 491: 2287, 860: 4900, 862: 4897, 873: 4901, 883: 4895}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4930, 2785, 2786, 2784}, - {236: 4932, 244: 4934, 247: 4933, 1148: 4931}, - {476: 4935}, + {153: 4946, 186: 4945, 203: 4947, 921: 4964}, + {153: 4946, 186: 4945, 203: 4947, 921: 4963}, + {1878, 1878, 1878, 1878, 1878, 1878, 1878, 9: 1878, 19: 1878, 73: 1878, 86: 1878, 1878, 1878, 1878, 1878, 92: 1878, 485: 1878, 488: 1878, 495: 1878, 501: 1878, 511: 1878}, + {1879, 1879, 1879, 1879, 1879, 1879, 1879, 9: 1879, 19: 1879, 73: 1879, 86: 1879, 1879, 1879, 1879, 1879, 92: 1879, 485: 1879, 488: 1879, 495: 1879, 501: 1879, 511: 1879}, + {1887, 1887, 1887, 1887, 1887, 1887, 1887, 9: 1887, 19: 1887, 73: 1887, 86: 1887, 1887, 1887, 1887, 1887, 92: 1887, 488: 1887, 495: 1887, 501: 1887, 511: 1887}, // 2375 - {50: 2236, 476: 2236}, - {50: 2235, 476: 2235}, - {50: 2234, 476: 2234}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 4936}, - {9: 4172, 50: 4937}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4967, 2824, 2825, 2823}, + {1888, 1888, 1888, 1888, 1888, 1888, 1888, 9: 1888, 19: 1888, 73: 1888, 86: 1888, 1888, 1888, 1888, 1888, 92: 1888, 488: 1888, 495: 1888, 501: 1888, 511: 1888}, + {521: 2798, 747: 2797, 755: 4969}, + {1890, 1890, 1890, 1890, 1890, 1890, 1890, 9: 1890, 19: 1890, 73: 1890, 86: 1890, 1890, 1890, 1890, 1890, 92: 1890, 488: 1890, 495: 1890, 501: 1890, 511: 1890}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 1894, 495: 1894, 676: 4941, 2824, 2825, 2823, 894: 4942, 958: 4971}, // 2380 - {2507, 2507, 2507, 2507, 2507, 2507, 9: 2507, 491: 2507}, - {582, 582, 582, 582, 582, 582, 9: 582, 92: 582, 141: 4776, 476: 582, 491: 582, 816: 4775, 833: 4939}, - {2159, 2159, 2159, 2159, 2159, 2159, 9: 2159, 92: 4941, 476: 4942, 491: 2159, 1106: 4940}, - {2510, 2510, 2510, 2510, 2510, 2510, 9: 2510, 491: 2510}, - {511: 2759, 737: 4983}, + {486: 4972}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 4973}, + {9: 4712, 73: 4974}, + {1892, 1892, 1892, 1892, 1892, 1892, 1892, 9: 1892, 19: 1892, 73: 1892, 87: 1892, 1892, 1892, 1892, 92: 1892, 488: 1892, 495: 1892, 501: 1892, 896: 4975}, + {2310, 2310, 2310, 2310, 2310, 2310, 4958, 9: 2310, 19: 4955, 73: 2310, 87: 4962, 4808, 4515, 4809, 92: 4514, 488: 4957, 495: 4961, 501: 2310, 870: 4959, 872: 4956, 884: 4960, 895: 4954}, // 2385 - {491: 4945, 957: 4944, 1105: 4943}, - {9: 4981, 50: 4980}, - {9: 2157, 50: 2157}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4946, 2785, 2786, 2784}, - {6: 2136, 2136, 9: 2136, 18: 2136, 20: 2136, 22: 2136, 2136, 2136, 2136, 2136, 2136, 50: 2136, 151: 4951, 350: 4950, 476: 2136, 482: 4949, 498: 4948, 652: 2136, 1283: 4947}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 1894, 676: 4933, 2824, 2825, 2823, 894: 4977}, + {486: 4978}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 4979}, + {9: 4712, 73: 4980}, + {1892, 1892, 1892, 1892, 1892, 1892, 1892, 9: 1892, 19: 1892, 73: 1892, 87: 1892, 1892, 1892, 1892, 92: 1892, 488: 1892, 495: 1892, 501: 1892, 896: 4981}, // 2390 - {6: 2149, 2149, 9: 2149, 18: 2149, 20: 2149, 22: 2149, 2149, 2149, 2149, 2149, 2149, 50: 2149, 476: 2149, 652: 2149, 956: 4967}, - {154: 4952, 547: 4953}, - {6: 2133, 2133, 9: 2133, 18: 2133, 20: 2133, 22: 2133, 2133, 2133, 2133, 2133, 2133, 50: 2133, 476: 2133, 652: 2133}, - {6: 2131, 2131, 9: 2131, 18: 2131, 20: 2131, 22: 2131, 2131, 2131, 2131, 2131, 2131, 50: 2131, 476: 2131, 652: 2131}, - {6: 2130, 2130, 9: 2130, 18: 2130, 20: 2130, 22: 2130, 2130, 2130, 2130, 2130, 2130, 50: 2130, 476: 2130, 652: 2130}, + {2311, 2311, 2311, 2311, 2311, 2311, 4958, 9: 2311, 19: 4955, 73: 2311, 87: 4962, 4808, 4515, 4809, 92: 4514, 488: 4957, 495: 4961, 501: 2311, 870: 4959, 872: 4956, 884: 4960, 895: 4954}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 1894, 495: 1894, 676: 4941, 2824, 2825, 2823, 894: 4942, 958: 4983}, + {486: 4984}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 4985}, + {9: 4712, 73: 4986}, // 2395 - {159: 4962}, - {476: 4954}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 658: 4956, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4957, 950: 4958, 1087: 4955}, - {9: 4960, 50: 4959}, - {9: 1951, 50: 1951}, + {1892, 1892, 1892, 1892, 1892, 1892, 1892, 9: 1892, 19: 1892, 73: 1892, 87: 1892, 1892, 1892, 1892, 92: 1892, 488: 1892, 495: 1892, 501: 1892, 896: 4987}, + {2312, 2312, 2312, 2312, 2312, 2312, 4958, 9: 2312, 19: 4955, 73: 2312, 87: 4962, 4808, 4515, 4809, 92: 4514, 488: 4957, 495: 4961, 501: 2312, 870: 4959, 872: 4956, 884: 4960, 895: 4954}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4989, 2824, 2825, 2823}, + {245: 4991, 253: 4993, 255: 4992, 1162: 4990}, + {486: 4994}, // 2400 - {9: 1950, 50: 1950, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {9: 1938, 50: 1938}, - {6: 2132, 2132, 9: 2132, 18: 2132, 20: 2132, 22: 2132, 2132, 2132, 2132, 2132, 2132, 50: 2132, 476: 2132, 652: 2132}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 658: 4956, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4957, 950: 4961}, - {9: 1937, 50: 1937}, + {73: 2261, 486: 2261}, + {73: 2260, 486: 2260}, + {73: 2259, 486: 2259}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 4995}, + {9: 4221, 73: 4996}, // 2405 - {476: 4964, 658: 4963}, - {6: 2135, 2135, 9: 2135, 18: 2135, 20: 2135, 22: 2135, 2135, 2135, 2135, 2135, 2135, 50: 2135, 476: 2135, 652: 2135}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 658: 4956, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 4957, 950: 4958, 1087: 4965}, - {9: 4960, 50: 4966}, - {6: 2134, 2134, 9: 2134, 18: 2134, 20: 2134, 22: 2134, 2134, 2134, 2134, 2134, 2134, 50: 2134, 476: 2134, 652: 2134}, + {2532, 2532, 2532, 2532, 2532, 2532, 9: 2532, 501: 2532}, + {595, 595, 595, 595, 595, 595, 9: 595, 94: 595, 148: 4835, 486: 595, 501: 595, 827: 4834, 843: 4998}, + {2183, 2183, 2183, 2183, 2183, 2183, 9: 2183, 94: 5000, 486: 5001, 501: 2183, 1118: 4999}, + {2535, 2535, 2535, 2535, 2535, 2535, 9: 2535, 501: 2535}, + {521: 2798, 747: 5042}, // 2410 - {6: 4267, 4971, 9: 2154, 18: 4223, 20: 4275, 22: 4268, 4271, 4270, 4273, 4274, 4276, 50: 2154, 476: 4969, 652: 4272, 785: 4277, 818: 4970, 1326: 4968}, - {9: 2155, 50: 2155}, - {91: 4974, 1150: 4973, 1325: 4972}, - {2148, 2148, 6: 2148, 2148, 9: 2148, 18: 2148, 20: 2148, 22: 2148, 2148, 2148, 2148, 2148, 2148, 50: 2148, 476: 2148, 652: 2148}, - {22: 4407}, + {501: 5004, 968: 5003, 1117: 5002}, + {9: 5040, 73: 5039}, + {9: 2181, 73: 2181}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5005, 2824, 2825, 2823}, + {6: 2160, 2160, 9: 2160, 18: 2160, 20: 2160, 22: 2160, 2160, 2160, 2160, 2160, 2160, 73: 2160, 158: 5010, 222: 5009, 486: 2160, 490: 5008, 509: 5007, 661: 2160, 1296: 5006}, // 2415 - {9: 4978, 50: 4977}, - {9: 2152, 50: 2152}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4975, 2785, 2786, 2784}, - {6: 2149, 2149, 9: 2149, 18: 2149, 20: 2149, 22: 2149, 2149, 2149, 2149, 2149, 2149, 50: 2149, 652: 2149, 956: 4976}, - {6: 4267, 4971, 9: 2150, 18: 4223, 20: 4275, 22: 4268, 4271, 4270, 4273, 4274, 4276, 50: 2150, 652: 4272, 785: 4277, 818: 4970}, + {6: 2173, 2173, 9: 2173, 18: 2173, 20: 2173, 22: 2173, 2173, 2173, 2173, 2173, 2173, 73: 2173, 486: 2173, 661: 2173, 967: 5026}, + {161: 5011, 557: 5012}, + {6: 2157, 2157, 9: 2157, 18: 2157, 20: 2157, 22: 2157, 2157, 2157, 2157, 2157, 2157, 73: 2157, 486: 2157, 661: 2157}, + {6: 2155, 2155, 9: 2155, 18: 2155, 20: 2155, 22: 2155, 2155, 2155, 2155, 2155, 2155, 73: 2155, 486: 2155, 661: 2155}, + {6: 2154, 2154, 9: 2154, 18: 2154, 20: 2154, 22: 2154, 2154, 2154, 2154, 2154, 2154, 73: 2154, 486: 2154, 661: 2154}, // 2420 - {9: 2153, 50: 2153}, - {91: 4974, 1150: 4979}, - {9: 2151, 50: 2151}, - {2158, 2158, 2158, 2158, 2158, 2158, 9: 2158, 475: 2158, 2158, 2158, 481: 2158, 491: 2158, 2158, 498: 2158, 507: 2158, 572: 2158, 649: 2158}, - {491: 4945, 957: 4982}, + {166: 5021}, + {486: 5013}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 668: 5015, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5016, 961: 5017, 1099: 5014}, + {9: 5019, 73: 5018}, + {9: 1974, 73: 1974}, // 2425 - {9: 2156, 50: 2156}, - {2509, 2509, 2509, 2509, 2509, 2509, 9: 2509, 491: 2509}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4986, 664: 4169, 2785, 2786, 2784, 748: 4482, 853: 4985}, - {2435, 2435, 2435, 2435, 2435, 2435, 9: 2435, 4757, 4758, 491: 2435, 934: 4994}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 584: 2426, 593: 2426, 2426, 645: 2426, 4615, 652: 2426, 664: 4169, 2785, 2786, 2784, 678: 2426, 2426, 748: 4482, 837: 4856, 853: 4988, 908: 4989, 973: 4990, 1153: 4987}, + {9: 1973, 73: 1973, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {9: 1961, 73: 1961}, + {6: 2156, 2156, 9: 2156, 18: 2156, 20: 2156, 22: 2156, 2156, 2156, 2156, 2156, 2156, 73: 2156, 486: 2156, 661: 2156}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 668: 5015, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5016, 961: 5020}, + {9: 1960, 73: 1960}, // 2430 - {9: 4992, 50: 4991}, - {9: 450, 50: 450}, - {9: 449, 50: 449}, - {9: 448, 50: 448}, - {2512, 2512, 2512, 2512, 2512, 2512, 9: 2512, 491: 2512}, + {486: 5023, 668: 5022}, + {6: 2159, 2159, 9: 2159, 18: 2159, 20: 2159, 22: 2159, 2159, 2159, 2159, 2159, 2159, 73: 2159, 486: 2159, 661: 2159}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 668: 5015, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5016, 961: 5017, 1099: 5024}, + {9: 5019, 73: 5025}, + {6: 2158, 2158, 9: 2158, 18: 2158, 20: 2158, 22: 2158, 2158, 2158, 2158, 2158, 2158, 73: 2158, 486: 2158, 661: 2158}, // 2435 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 584: 2426, 593: 2426, 2426, 645: 2426, 4615, 652: 2426, 664: 4169, 2785, 2786, 2784, 678: 2426, 2426, 748: 4482, 837: 4856, 853: 4988, 908: 4989, 973: 4993}, - {9: 447, 50: 447}, - {2513, 2513, 2513, 2513, 2513, 2513, 9: 2513, 491: 2513}, - {16: 3862, 508: 3863, 650: 3861, 779: 4996}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 482: 4998, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 4997}, + {6: 4316, 5030, 9: 2178, 18: 4272, 20: 4324, 22: 4317, 4320, 4319, 4322, 4323, 4325, 73: 2178, 486: 5028, 661: 4321, 795: 4326, 829: 5029, 1339: 5027}, + {9: 2179, 73: 2179}, + {93: 5033, 1164: 5032, 1338: 5031}, + {2172, 2172, 6: 2172, 2172, 9: 2172, 18: 2172, 20: 2172, 22: 2172, 2172, 2172, 2172, 2172, 2172, 73: 2172, 486: 2172, 661: 2172}, + {22: 4466}, // 2440 - {277, 277, 277, 277, 277, 277, 9: 277, 487: 5000, 491: 277, 1097: 5002}, - {277, 277, 277, 277, 277, 277, 9: 277, 487: 5000, 491: 277, 1097: 4999}, - {2514, 2514, 2514, 2514, 2514, 2514, 9: 2514, 491: 2514}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3515, 664: 3517, 2785, 2786, 2784, 742: 3514, 876: 5001}, - {276, 276, 276, 276, 276, 276, 9: 276, 491: 276}, + {9: 5037, 73: 5036}, + {9: 2176, 73: 2176}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5034, 2824, 2825, 2823}, + {6: 2173, 2173, 9: 2173, 18: 2173, 20: 2173, 22: 2173, 2173, 2173, 2173, 2173, 2173, 73: 2173, 661: 2173, 967: 5035}, + {6: 4316, 5030, 9: 2174, 18: 4272, 20: 4324, 22: 4317, 4320, 4319, 4322, 4323, 4325, 73: 2174, 661: 4321, 795: 4326, 829: 5029}, // 2445 - {2515, 2515, 2515, 2515, 2515, 2515, 9: 2515, 491: 2515}, - {193: 5004}, - {511: 2759, 737: 2758, 745: 5005}, - {2519, 2519, 2519, 2519, 2519, 2519, 9: 2519, 186: 5006, 491: 2519, 1084: 5007}, - {270: 5008}, + {9: 2177, 73: 2177}, + {93: 5033, 1164: 5038}, + {9: 2175, 73: 2175}, + {2182, 2182, 2182, 2182, 2182, 2182, 9: 2182, 485: 2182, 2182, 488: 2182, 492: 2182, 501: 2182, 2182, 509: 2182, 517: 2182, 581: 2182, 658: 2182}, + {501: 5004, 968: 5041}, // 2450 - {2516, 2516, 2516, 2516, 2516, 2516, 9: 2516, 491: 2516}, - {478: 5010, 1322: 5009}, - {2518, 2518, 2518, 2518, 2518, 2518, 9: 5011, 16: 2518, 18: 2518, 21: 2518, 482: 2518, 487: 2518, 491: 2518, 508: 2518, 2518, 650: 2518}, - {275, 275, 275, 275, 275, 275, 9: 275, 16: 275, 18: 275, 21: 275, 482: 275, 487: 275, 491: 275, 508: 275, 275, 650: 275}, - {478: 5012}, + {9: 2180, 73: 2180}, + {2534, 2534, 2534, 2534, 2534, 2534, 9: 2534, 501: 2534}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5045, 676: 4218, 2824, 2825, 2823, 758: 4541, 863: 5044}, + {2460, 2460, 2460, 2460, 2460, 2460, 9: 2460, 4816, 4817, 501: 2460, 945: 5053}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 594: 2451, 604: 2451, 2451, 655: 2451, 4674, 661: 2451, 676: 4218, 2824, 2825, 2823, 688: 2451, 2451, 758: 4541, 847: 4915, 863: 5047, 919: 5048, 983: 5049, 1167: 5046}, // 2455 - {274, 274, 274, 274, 274, 274, 9: 274, 16: 274, 18: 274, 21: 274, 482: 274, 487: 274, 491: 274, 508: 274, 274, 650: 274}, - {8: 409, 29: 409}, - {403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 15: 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 475: 403, 403, 403, 481: 403, 403, 403, 487: 403, 491: 403, 403, 498: 403, 506: 403, 403, 403, 572: 403, 649: 403, 403, 652: 403}, - {6: 4267, 4269, 410, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 482: 4266, 4303, 487: 2193, 506: 5013, 508: 2193, 650: 2193, 652: 4272, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 5016}, - {402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 15: 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 475: 402, 402, 402, 481: 402, 402, 402, 487: 402, 491: 402, 402, 498: 402, 506: 402, 402, 402, 572: 402, 649: 402, 402, 652: 402}, + {9: 5051, 73: 5050}, + {9: 461, 73: 461}, + {9: 460, 73: 460}, + {9: 459, 73: 459}, + {2537, 2537, 2537, 2537, 2537, 2537, 9: 2537, 501: 2537}, // 2460 - {478: 5019, 482: 5018}, - {2528, 2528, 2528, 2528, 2528, 2528, 9: 2528, 491: 2528}, - {2527, 2527, 2527, 2527, 2527, 2527, 9: 2527, 491: 2527}, - {478: 5022, 482: 5021}, - {2530, 2530, 2530, 2530, 2530, 2530, 9: 2530, 491: 2530}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 594: 2451, 604: 2451, 2451, 655: 2451, 4674, 661: 2451, 676: 4218, 2824, 2825, 2823, 688: 2451, 2451, 758: 4541, 847: 4915, 863: 5047, 919: 5048, 983: 5052}, + {9: 458, 73: 458}, + {2538, 2538, 2538, 2538, 2538, 2538, 9: 2538, 501: 2538}, + {16: 3911, 508: 3912, 660: 3910, 790: 5055}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 490: 5057, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 5056}, // 2465 - {2529, 2529, 2529, 2529, 2529, 2529, 9: 2529, 491: 2529}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 482: 2064, 502: 4307, 509: 5025, 741: 5024}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5027, 482: 5029, 664: 5030, 2785, 2786, 2784, 890: 5028}, - {482: 5026}, - {2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 15: 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 2531, 50: 2531, 475: 2531, 2531, 2531, 481: 2531, 2531, 2531, 487: 2531, 491: 2531, 2531, 498: 2531, 506: 2531, 2531, 2531, 2531, 572: 2531, 649: 2531, 2531, 652: 2531}, + {286, 286, 286, 286, 286, 286, 9: 286, 493: 5059, 501: 286, 1109: 5061}, + {286, 286, 286, 286, 286, 286, 9: 286, 493: 5059, 501: 286, 1109: 5058}, + {2539, 2539, 2539, 2539, 2539, 2539, 9: 2539, 501: 2539}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3564, 676: 3566, 2824, 2825, 2823, 752: 3563, 887: 5060}, + {285, 285, 285, 285, 285, 285, 9: 285, 501: 285}, // 2470 - {2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 15: 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 2534, 50: 2534, 475: 2534, 2534, 2534, 481: 2534, 2534, 2534, 487: 2534, 491: 2534, 2534, 498: 2534, 506: 2534, 2534, 2534, 2534, 572: 2534, 649: 2534, 2534, 652: 2534}, - {2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 15: 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 2533, 50: 2533, 475: 2533, 2533, 2533, 481: 2533, 2533, 2533, 487: 2533, 491: 2533, 2533, 498: 2533, 506: 2533, 2533, 2533, 2533, 572: 2533, 649: 2533, 2533, 652: 2533}, - {2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 15: 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 2532, 50: 2532, 475: 2532, 2532, 2532, 481: 2532, 2532, 2532, 487: 2532, 491: 2532, 2532, 498: 2532, 506: 2532, 2532, 2532, 2532, 572: 2532, 649: 2532, 2532, 652: 2532}, - {2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 15: 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 50: 2209, 89: 2209, 93: 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 2209, 475: 2209, 2209, 2209, 481: 2209, 2209, 2209, 487: 2209, 491: 2209, 2209, 498: 2209, 506: 2209, 2209, 2209, 2209, 572: 2209, 649: 2209, 2209, 652: 2209}, - {193: 5036}, + {2540, 2540, 2540, 2540, 2540, 2540, 9: 2540, 501: 2540}, + {201: 5063}, + {521: 2798, 747: 2797, 755: 5064}, + {2544, 2544, 2544, 2544, 2544, 2544, 9: 2544, 193: 5065, 501: 2544, 1096: 5066}, + {279: 5067}, // 2475 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 5033}, - {2550, 2550, 9: 4781, 170: 5034}, - {193: 5035}, - {2549, 2549}, - {2551, 2551}, + {2541, 2541, 2541, 2541, 2541, 2541, 9: 2541, 501: 2541}, + {487: 5069, 1335: 5068}, + {2543, 2543, 2543, 2543, 2543, 2543, 9: 5070, 16: 2543, 18: 2543, 21: 2543, 490: 2543, 493: 2543, 501: 2543, 508: 2543, 519: 2543, 660: 2543}, + {284, 284, 284, 284, 284, 284, 9: 284, 16: 284, 18: 284, 21: 284, 490: 284, 493: 284, 501: 284, 508: 284, 519: 284, 660: 284}, + {487: 5071}, // 2480 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 5038}, - {2383, 2383, 9: 4781, 477: 5041, 652: 5040, 808: 5039}, - {2554, 2554}, - {922, 922, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 922, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 477: 922, 594: 5058, 664: 5057, 2785, 2786, 2784, 861: 5056}, - {511: 5046, 576: 3451, 3450, 737: 5044, 824: 5045, 996: 5043, 1182: 5042}, + {283, 283, 283, 283, 283, 283, 9: 283, 16: 283, 18: 283, 21: 283, 490: 283, 493: 283, 501: 283, 508: 283, 519: 283, 660: 283}, + {8: 418, 29: 418}, + {412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 15: 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, 485: 412, 412, 488: 412, 490: 412, 492: 412, 412, 412, 501: 412, 412, 508: 412, 412, 517: 412, 412, 581: 412, 658: 412, 660: 412, 412}, + {6: 4316, 4318, 419, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 490: 4315, 493: 2217, 4352, 508: 2217, 518: 5072, 660: 2217, 4321, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 5075}, + {411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 15: 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 485: 411, 411, 488: 411, 490: 411, 492: 411, 411, 411, 501: 411, 411, 508: 411, 411, 517: 411, 411, 581: 411, 658: 411, 660: 411, 411}, // 2485 - {2382, 2382, 9: 5054}, - {2381, 2381, 9: 2381}, - {235: 5048, 239: 5050, 286: 5051, 304: 5049}, - {197: 5047}, - {197: 2239, 235: 1990, 239: 1990, 286: 1990, 304: 1990}, + {487: 5078, 490: 5077}, + {2554, 2554, 2554, 2554, 2554, 2554, 9: 2554, 501: 2554}, + {2553, 2553, 2553, 2553, 2553, 2553, 9: 2553, 501: 2553}, + {487: 5081, 490: 5080}, + {2556, 2556, 2556, 2556, 2556, 2556, 9: 2556, 501: 2556}, // 2490 - {2374, 2374, 9: 2374}, - {2379, 2379, 9: 2379}, - {2378, 2378, 9: 2378}, - {335: 5052, 409: 5053}, - {2375, 2375, 9: 2375}, + {2555, 2555, 2555, 2555, 2555, 2555, 9: 2555, 501: 2555}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 490: 2088, 512: 4358, 519: 5084, 750: 5083}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5086, 490: 5088, 676: 5089, 2824, 2825, 2823, 875: 5087}, + {490: 5085}, + {2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 15: 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 2557, 73: 2557, 485: 2557, 2557, 488: 2557, 490: 2557, 492: 2557, 2557, 2557, 501: 2557, 2557, 508: 2557, 2557, 517: 2557, 2557, 2557, 581: 2557, 658: 2557, 660: 2557, 2557}, // 2495 - {2377, 2377, 9: 2377}, - {2376, 2376, 9: 2376}, - {511: 5046, 576: 3451, 3450, 737: 5044, 824: 5045, 996: 5055}, - {2380, 2380, 9: 2380}, - {2383, 2383, 9: 5060, 477: 5041, 808: 5059}, + {2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 15: 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 2560, 73: 2560, 485: 2560, 2560, 488: 2560, 490: 2560, 492: 2560, 2560, 2560, 501: 2560, 2560, 508: 2560, 2560, 517: 2560, 2560, 2560, 581: 2560, 658: 2560, 660: 2560, 2560}, + {2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 15: 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 2559, 73: 2559, 485: 2559, 2559, 488: 2559, 490: 2559, 492: 2559, 2559, 2559, 501: 2559, 2559, 508: 2559, 2559, 517: 2559, 2559, 2559, 581: 2559, 658: 2559, 660: 2559, 2559}, + {2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 15: 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 2558, 73: 2558, 485: 2558, 2558, 488: 2558, 490: 2558, 492: 2558, 2558, 2558, 501: 2558, 2558, 508: 2558, 2558, 517: 2558, 2558, 2558, 581: 2558, 658: 2558, 660: 2558, 2558}, + {2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 15: 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 73: 2234, 91: 2234, 95: 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 485: 2234, 2234, 488: 2234, 490: 2234, 492: 2234, 2234, 2234, 501: 2234, 2234, 508: 2234, 2234, 517: 2234, 2234, 2234, 581: 2234, 658: 2234, 660: 2234, 2234}, + {201: 5095}, // 2500 - {921, 921, 9: 921, 50: 921, 477: 921}, - {919, 919, 9: 919, 50: 919, 477: 919}, - {2553, 2553}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 594: 5062, 664: 5061, 2785, 2786, 2784}, - {920, 920, 9: 920, 50: 920, 477: 920}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 5092}, + {2584, 2584, 9: 4840, 177: 5093}, + {201: 5094}, + {2583, 2583}, + {2585, 2585}, // 2505 - {918, 918, 9: 918, 50: 918, 477: 918}, - {2555, 2555}, - {2526, 2526}, - {372: 5175}, - {491: 5167}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 5097}, + {2408, 2408, 9: 4840, 488: 5100, 661: 5099, 818: 5098}, + {2588, 2588}, + {935, 935, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 935, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 488: 935, 605: 5117, 676: 5116, 2824, 2825, 2823, 871: 5115}, + {521: 5105, 586: 3500, 3499, 747: 5103, 834: 5104, 1007: 5102, 1196: 5101}, // 2510 - {658: 5160}, - {10: 5153}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 663: 5071, 5070, 2785, 2786, 2784}, - {2149, 2149, 6: 2149, 2149, 18: 2149, 20: 2149, 22: 2149, 2149, 2149, 2149, 2149, 2149, 205: 4224, 652: 2149, 931: 5151, 956: 5152}, - {146: 2167, 359: 5076, 398: 5077, 530: 5075, 584: 2167, 1079: 5078, 5073, 1151: 5074, 1285: 5072}, + {2407, 2407, 9: 5113}, + {2406, 2406, 9: 2406}, + {243: 5107, 248: 5109, 295: 5110, 314: 5108}, + {205: 5106}, + {205: 2264, 243: 2013, 248: 2013, 295: 2013, 314: 2013}, // 2515 - {2161, 2161, 91: 2161, 5141, 475: 2161, 2161, 2161, 481: 2161, 492: 2161, 498: 2161, 507: 2161, 572: 2161, 649: 2161, 1286: 5140}, - {146: 5128, 584: 5127}, - {2185, 2185, 91: 2185, 2185, 475: 2185, 2185, 2185, 481: 2185, 492: 2185, 498: 2185, 507: 2185, 572: 2185, 649: 2185}, - {103: 3970, 112: 3969, 476: 5091, 839: 5092}, - {103: 3970, 112: 3969, 476: 5084, 839: 5085}, + {2399, 2399, 9: 2399}, + {2404, 2404, 9: 2404}, + {2403, 2403, 9: 2403}, + {344: 5111, 419: 5112}, + {2400, 2400, 9: 2400}, // 2520 - {2178, 2178, 91: 2178, 2178, 475: 2178, 2178, 2178, 481: 2178, 492: 2178, 496: 5080, 498: 2178, 507: 2178, 572: 2178, 581: 5079, 649: 2178}, - {146: 2166, 584: 2166}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5082}, - {511: 2759, 737: 2758, 745: 5081}, - {2179, 2179, 91: 2179, 2179, 475: 2179, 2179, 2179, 481: 2179, 492: 2179, 498: 2179, 507: 2179, 572: 2179, 649: 2179}, + {2402, 2402, 9: 2402}, + {2401, 2401, 9: 2401}, + {521: 5105, 586: 3500, 3499, 747: 5103, 834: 5104, 1007: 5114}, + {2405, 2405, 9: 2405}, + {2408, 2408, 9: 5119, 488: 5100, 818: 5118}, // 2525 - {105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 510: 3371, 512: 3369, 3370, 3368, 3366, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 738: 3367, 3365, 800: 3470, 820: 5083}, - {2180, 2180, 91: 2180, 2180, 475: 2180, 2180, 2180, 481: 2180, 492: 2180, 498: 2180, 507: 2180, 572: 2180, 649: 2180}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5089}, - {476: 5086}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 5087}, + {934, 934, 9: 934, 73: 934, 488: 934}, + {932, 932, 9: 932, 73: 932, 488: 932}, + {2587, 2587}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 605: 5121, 676: 5120, 2824, 2825, 2823}, + {933, 933, 9: 933, 73: 933, 488: 933}, // 2530 - {9: 4172, 50: 5088}, - {2181, 2181, 91: 2181, 2181, 475: 2181, 2181, 2181, 481: 2181, 492: 2181, 498: 2181, 507: 2181, 572: 2181, 649: 2181}, - {50: 5090, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2182, 2182, 91: 2182, 2182, 475: 2182, 2182, 2182, 481: 2182, 492: 2182, 498: 2182, 507: 2182, 572: 2182, 649: 2182}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5124}, + {931, 931, 9: 931, 73: 931, 488: 931}, + {2589, 2589}, + {2552, 2552}, + {32: 5235, 381: 5234}, + {501: 5226}, // 2535 - {476: 5093}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 5094}, - {9: 4172, 50: 5095}, - {2177, 2177, 91: 2177, 2177, 475: 2177, 2177, 2177, 481: 2177, 492: 2177, 498: 2177, 507: 2177, 572: 2177, 581: 5097, 649: 2177, 1107: 5096}, - {2183, 2183, 91: 2183, 2183, 475: 2183, 2183, 2183, 481: 2183, 492: 2183, 498: 2183, 507: 2183, 572: 2183, 649: 2183}, + {668: 5219}, + {10: 5212}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 673: 5130, 676: 5129, 2824, 2825, 2823}, + {2173, 2173, 6: 2173, 2173, 18: 2173, 20: 2173, 22: 2173, 2173, 2173, 2173, 2173, 2173, 213: 4273, 661: 2173, 942: 5210, 967: 5211}, + {153: 2191, 367: 5135, 408: 5136, 540: 5134, 594: 2191, 1091: 5137, 5132, 1165: 5133, 1298: 5131}, // 2540 - {476: 5098}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5100, 1246: 5099}, - {50: 5102}, - {50: 2175, 105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 488: 3712, 3713, 3718, 523: 3714, 535: 3480, 3477, 3479, 3478, 3474, 3476, 3475, 3472, 3473, 3471, 3481, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711, 800: 3470, 820: 5101}, - {50: 2174}, + {2185, 2185, 93: 2185, 5200, 485: 2185, 2185, 488: 2185, 492: 2185, 502: 2185, 509: 2185, 517: 2185, 581: 2185, 658: 2185, 1299: 5199}, + {153: 5187, 594: 5186}, + {2209, 2209, 93: 2209, 2209, 485: 2209, 2209, 488: 2209, 492: 2209, 502: 2209, 509: 2209, 517: 2209, 581: 2209, 658: 2209}, + {105: 4019, 128: 4018, 486: 5150, 849: 5151}, + {105: 4019, 128: 4018, 486: 5143, 849: 5144}, // 2545 - {2169, 2169, 10: 5104, 91: 2169, 2169, 475: 2169, 2169, 2169, 481: 2169, 492: 2169, 495: 2169, 498: 2169, 507: 2169, 572: 2169, 649: 2169, 658: 2169, 1224: 5103}, - {2173, 2173, 91: 2173, 2173, 475: 2173, 2173, 2173, 481: 2173, 492: 2173, 495: 5119, 498: 2173, 507: 2173, 572: 2173, 649: 2173, 658: 2173, 1264: 5118}, - {491: 5105}, - {154: 5106}, - {159: 5107}, + {2202, 2202, 93: 2202, 2202, 485: 2202, 2202, 488: 2202, 492: 2202, 502: 2202, 506: 5139, 509: 2202, 517: 2202, 581: 2202, 592: 5138, 658: 2202}, + {153: 2190, 594: 2190}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5141}, + {521: 2798, 747: 2797, 755: 5140}, + {2203, 2203, 93: 2203, 2203, 485: 2203, 2203, 488: 2203, 492: 2203, 502: 2203, 509: 2203, 517: 2203, 581: 2203, 658: 2203}, // 2550 - {476: 5108}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5109}, - {50: 5110, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {185: 5111}, - {491: 5112}, + {107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 520: 3420, 522: 3418, 3419, 3417, 3415, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 748: 3416, 3414, 805: 3519, 820: 5142}, + {2204, 2204, 93: 2204, 2204, 485: 2204, 2204, 488: 2204, 492: 2204, 502: 2204, 509: 2204, 517: 2204, 581: 2204, 658: 2204}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5148}, + {486: 5145}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 5146}, // 2555 - {154: 5113}, - {159: 5114}, - {476: 5115}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5116}, - {50: 5117, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, + {9: 4221, 73: 5147}, + {2205, 2205, 93: 2205, 2205, 485: 2205, 2205, 488: 2205, 492: 2205, 502: 2205, 509: 2205, 517: 2205, 581: 2205, 658: 2205}, + {73: 5149, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2206, 2206, 93: 2206, 2206, 485: 2206, 2206, 488: 2206, 492: 2206, 502: 2206, 509: 2206, 517: 2206, 581: 2206, 658: 2206}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5183}, // 2560 - {2168, 2168, 91: 2168, 2168, 475: 2168, 2168, 2168, 481: 2168, 492: 2168, 495: 2168, 498: 2168, 507: 2168, 572: 2168, 649: 2168, 658: 2168}, - {2171, 2171, 91: 2171, 2171, 475: 2171, 2171, 2171, 481: 2171, 492: 2171, 498: 2171, 507: 2171, 572: 2171, 649: 2171, 658: 5122, 1262: 5121}, - {491: 5120}, - {2172, 2172, 91: 2172, 2172, 475: 2172, 2172, 2172, 481: 2172, 492: 2172, 498: 2172, 507: 2172, 572: 2172, 649: 2172, 658: 2172}, - {2176, 2176, 91: 2176, 2176, 475: 2176, 2176, 2176, 481: 2176, 492: 2176, 498: 2176, 507: 2176, 572: 2176, 649: 2176}, + {486: 5152}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 5153}, + {9: 4221, 73: 5154}, + {2201, 2201, 93: 2201, 2201, 485: 2201, 2201, 488: 2201, 492: 2201, 502: 2201, 509: 2201, 517: 2201, 581: 2201, 592: 5156, 658: 2201, 1119: 5155}, + {2207, 2207, 93: 2207, 2207, 485: 2207, 2207, 488: 2207, 492: 2207, 502: 2207, 509: 2207, 517: 2207, 581: 2207, 658: 2207}, // 2565 - {491: 5123}, - {2170, 2170, 91: 2170, 2170, 475: 2170, 2170, 2170, 481: 2170, 492: 2170, 498: 2170, 507: 2170, 572: 2170, 649: 2170}, - {50: 5125, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2177, 2177, 91: 2177, 2177, 475: 2177, 2177, 2177, 481: 2177, 492: 2177, 498: 2177, 507: 2177, 572: 2177, 581: 5097, 649: 2177, 1107: 5126}, - {2184, 2184, 91: 2184, 2184, 475: 2184, 2184, 2184, 481: 2184, 492: 2184, 498: 2184, 507: 2184, 572: 2184, 649: 2184}, + {486: 5157}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5159, 1259: 5158}, + {73: 5161}, + {73: 2199, 107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 498: 3761, 3762, 3767, 533: 3763, 544: 3529, 3526, 3528, 3527, 3523, 3525, 3524, 3521, 3522, 3520, 3530, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760, 805: 3519, 820: 5160}, + {73: 2198}, // 2570 - {84: 5133, 476: 2187, 1284: 5132}, - {476: 5129}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5130}, - {50: 5131, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2188, 2188, 91: 2188, 2188, 224: 2188, 475: 2188, 2188, 2188, 481: 2188, 492: 2188, 498: 2188, 507: 2188, 572: 2188, 649: 2188}, + {2193, 2193, 10: 5163, 93: 2193, 2193, 485: 2193, 2193, 488: 2193, 492: 2193, 502: 2193, 505: 2193, 509: 2193, 517: 2193, 581: 2193, 658: 2193, 668: 2193, 1237: 5162}, + {2197, 2197, 93: 2197, 2197, 485: 2197, 2197, 488: 2197, 492: 2197, 502: 2197, 505: 5178, 509: 2197, 517: 2197, 581: 2197, 658: 2197, 668: 2197, 1277: 5177}, + {501: 5164}, + {161: 5165}, + {166: 5166}, // 2575 - {476: 5136}, - {502: 5134}, - {511: 2759, 737: 5135}, - {476: 2186}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 2349, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 5137, 1005: 5138}, + {486: 5167}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5168}, + {73: 5169, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {192: 5170}, + {501: 5171}, // 2580 - {9: 4172, 50: 2348}, - {50: 5139}, - {2189, 2189, 91: 2189, 2189, 224: 2189, 475: 2189, 2189, 2189, 481: 2189, 492: 2189, 498: 2189, 507: 2189, 572: 2189, 649: 2189}, - {2165, 2165, 91: 5144, 475: 2165, 2165, 2165, 481: 2165, 492: 2165, 498: 2165, 507: 2165, 572: 2165, 649: 2165, 1328: 5143}, - {511: 2759, 737: 2758, 745: 5142}, + {161: 5172}, + {166: 5173}, + {486: 5174}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5175}, + {73: 5176, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, // 2585 - {2160, 2160, 91: 2160, 475: 2160, 2160, 2160, 481: 2160, 492: 2160, 498: 2160, 507: 2160, 572: 2160, 649: 2160}, - {2159, 2159, 475: 2159, 4942, 2159, 481: 2159, 492: 2159, 498: 2159, 507: 2159, 572: 2159, 649: 2159, 1106: 5150}, - {663: 5145}, - {146: 2167, 584: 2167, 1079: 5078, 5073, 1151: 5146}, - {2163, 2163, 224: 5148, 475: 2163, 2163, 2163, 481: 2163, 492: 2163, 498: 2163, 507: 2163, 572: 2163, 649: 2163, 1327: 5147}, + {2192, 2192, 93: 2192, 2192, 485: 2192, 2192, 488: 2192, 492: 2192, 502: 2192, 505: 2192, 509: 2192, 517: 2192, 581: 2192, 658: 2192, 668: 2192}, + {2195, 2195, 93: 2195, 2195, 485: 2195, 2195, 488: 2195, 492: 2195, 502: 2195, 509: 2195, 517: 2195, 581: 2195, 658: 2195, 668: 5181, 1275: 5180}, + {501: 5179}, + {2196, 2196, 93: 2196, 2196, 485: 2196, 2196, 488: 2196, 492: 2196, 502: 2196, 509: 2196, 517: 2196, 581: 2196, 658: 2196, 668: 2196}, + {2200, 2200, 93: 2200, 2200, 485: 2200, 2200, 488: 2200, 492: 2200, 502: 2200, 509: 2200, 517: 2200, 581: 2200, 658: 2200}, // 2590 - {2164, 2164, 475: 2164, 2164, 2164, 481: 2164, 492: 2164, 498: 2164, 507: 2164, 572: 2164, 649: 2164}, - {511: 2759, 737: 2758, 745: 5149}, - {2162, 2162, 475: 2162, 2162, 2162, 481: 2162, 492: 2162, 498: 2162, 507: 2162, 572: 2162, 649: 2162}, - {2190, 2190, 475: 2190, 2190, 2190, 481: 2190, 492: 2190, 498: 2190, 507: 2190, 572: 2190, 649: 2190}, - {2521, 2521}, + {501: 5182}, + {2194, 2194, 93: 2194, 2194, 485: 2194, 2194, 488: 2194, 492: 2194, 502: 2194, 509: 2194, 517: 2194, 581: 2194, 658: 2194}, + {73: 5184, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2201, 2201, 93: 2201, 2201, 485: 2201, 2201, 488: 2201, 492: 2201, 502: 2201, 509: 2201, 517: 2201, 581: 2201, 592: 5156, 658: 2201, 1119: 5185}, + {2208, 2208, 93: 2208, 2208, 485: 2208, 2208, 488: 2208, 492: 2208, 502: 2208, 509: 2208, 517: 2208, 581: 2208, 658: 2208}, // 2595 - {2520, 2520, 6: 4267, 4971, 18: 4223, 20: 4275, 22: 4268, 4271, 4270, 4273, 4274, 4276, 652: 4272, 785: 4277, 818: 4970}, - {491: 5154}, - {154: 5155}, - {159: 5156}, - {476: 5157}, + {86: 5192, 486: 2211, 1297: 5191}, + {486: 5188}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5189}, + {73: 5190, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2212, 2212, 93: 2212, 2212, 232: 2212, 485: 2212, 2212, 488: 2212, 492: 2212, 502: 2212, 509: 2212, 517: 2212, 581: 2212, 658: 2212}, // 2600 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5158}, - {50: 5159, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2522, 2522}, - {491: 5161}, - {154: 5162}, + {486: 5195}, + {512: 5193}, + {521: 2798, 747: 5194}, + {486: 2210}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 2374, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 5196, 1016: 5197}, // 2605 - {159: 5163}, - {476: 5164}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 5165}, - {50: 5166, 488: 3712, 3713, 3718, 523: 3714, 550: 3715, 3716, 3709, 3719, 3708, 3717, 3710, 3711}, - {2523, 2523}, + {9: 4221, 73: 2373}, + {73: 5198}, + {2213, 2213, 93: 2213, 2213, 232: 2213, 485: 2213, 2213, 488: 2213, 492: 2213, 502: 2213, 509: 2213, 517: 2213, 581: 2213, 658: 2213}, + {2189, 2189, 93: 5203, 485: 2189, 2189, 488: 2189, 492: 2189, 502: 2189, 509: 2189, 517: 2189, 581: 2189, 658: 2189, 1341: 5202}, + {521: 2798, 747: 2797, 755: 5201}, // 2610 - {582, 582, 582, 582, 582, 582, 582, 582, 582, 10: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 51: 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 4776, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, 816: 4775, 833: 5168}, - {2460, 2460, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 5170, 1294: 5169}, - {2524, 2524}, - {9: 4781, 499: 5171}, - {476: 5172}, + {2184, 2184, 93: 2184, 485: 2184, 2184, 488: 2184, 492: 2184, 502: 2184, 509: 2184, 517: 2184, 581: 2184, 658: 2184}, + {2183, 2183, 485: 2183, 5001, 488: 2183, 492: 2183, 502: 2183, 509: 2183, 517: 2183, 581: 2183, 658: 2183, 1118: 5209}, + {673: 5204}, + {153: 2191, 594: 2191, 1091: 5137, 5132, 1165: 5205}, + {2187, 2187, 232: 5207, 485: 2187, 2187, 488: 2187, 492: 2187, 502: 2187, 509: 2187, 517: 2187, 581: 2187, 658: 2187, 1340: 5206}, // 2615 - {491: 4945, 957: 4944, 1105: 5173}, - {9: 4981, 50: 5174}, - {2459, 2459}, - {2525, 2525}, - {141: 5177, 885: 110, 1083: 5178}, + {2188, 2188, 485: 2188, 2188, 488: 2188, 492: 2188, 502: 2188, 509: 2188, 517: 2188, 581: 2188, 658: 2188}, + {521: 2798, 747: 2797, 755: 5208}, + {2186, 2186, 485: 2186, 2186, 488: 2186, 492: 2186, 502: 2186, 509: 2186, 517: 2186, 581: 2186, 658: 2186}, + {2214, 2214, 485: 2214, 2214, 488: 2214, 492: 2214, 502: 2214, 509: 2214, 517: 2214, 581: 2214, 658: 2214}, + {2547, 2547}, // 2620 - {885: 109}, - {885: 5179}, - {478: 5180}, - {19, 19, 187: 19, 361: 5182, 661: 19, 1261: 5181}, - {17, 17, 187: 5185, 661: 17, 1260: 5184}, + {2546, 2546, 6: 4316, 5030, 18: 4272, 20: 4324, 22: 4317, 4320, 4319, 4322, 4323, 4325, 661: 4321, 795: 4326, 829: 5029}, + {501: 5213}, + {161: 5214}, + {166: 5215}, + {486: 5216}, // 2625 - {511: 2759, 737: 5183}, - {18, 18, 187: 18, 661: 18}, - {95, 95, 661: 3991, 949: 5192}, - {15, 15, 191: 15, 373: 5187, 661: 15, 1288: 5186}, - {13, 13, 191: 5190, 661: 13, 1287: 5189}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5217}, + {73: 5218, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2548, 2548}, + {501: 5220}, + {161: 5221}, // 2630 - {511: 2759, 737: 5188}, - {14, 14, 191: 14, 661: 14}, - {16, 16, 661: 16}, - {511: 2759, 737: 5191}, - {12, 12, 661: 12}, + {166: 5222}, + {486: 5223}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 5224}, + {73: 5225, 498: 3761, 3762, 3767, 533: 3763, 560: 3764, 3765, 3758, 3768, 3757, 3766, 3759, 3760}, + {2549, 2549}, // 2635 - {20, 20}, - {28: 59, 130: 59, 142: 59, 476: 59, 511: 59}, - {130: 4735, 476: 5194, 904: 4743}, - {64, 64}, - {511: 2759, 737: 5200}, + {595, 595, 595, 595, 595, 595, 595, 595, 595, 10: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 74: 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 4835, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 595, 827: 4834, 843: 5227}, + {2485, 2485, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 5229, 1307: 5228}, + {2550, 2550}, + {9: 4840, 510: 5230}, + {486: 5231}, // 2640 - {511: 2759, 737: 5199}, - {61, 61}, - {62, 62}, - {63, 63}, - {496: 5204}, + {501: 5004, 968: 5003, 1117: 5232}, + {9: 5040, 73: 5233}, + {2484, 2484}, + {2551, 2551}, + {2545, 2545}, // 2645 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 5203}, - {496: 65}, - {511: 2759, 737: 5205}, - {254: 5207, 477: 69, 570: 69, 657: 69, 743: 69, 1214: 5206}, - {477: 2607, 570: 2591, 657: 2713, 743: 2573, 763: 5210, 770: 2712, 2574, 777: 5214, 5213, 783: 2575, 788: 5212, 1304: 5211}, + {148: 5237, 897: 115, 1095: 5238}, + {897: 114}, + {897: 5239}, + {487: 5240}, + {20, 20, 194: 20, 369: 5242, 671: 20, 1274: 5241}, // 2650 - {385: 5208}, - {142: 5209, 477: 68, 570: 68, 657: 68, 743: 68}, - {477: 67, 570: 67, 657: 67, 743: 67}, - {657: 2713, 743: 2573, 770: 5217, 5215, 783: 5216}, - {73, 73}, + {18, 18, 194: 5245, 671: 18, 1273: 5244}, + {521: 2798, 747: 5243}, + {19, 19, 194: 19, 671: 19}, + {100, 100, 671: 4040, 960: 5252}, + {16, 16, 198: 16, 382: 5247, 671: 16, 1301: 5246}, // 2655 - {72, 72}, - {71, 71}, - {70, 70}, - {2087, 2087}, - {2086, 2086}, + {14, 14, 198: 5250, 671: 14, 1300: 5249}, + {521: 2798, 747: 5248}, + {15, 15, 198: 15, 671: 15}, + {17, 17, 671: 17}, + {521: 2798, 747: 5251}, // 2660 - {262, 262, 484: 262}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5224, 1154: 5225, 1330: 5223}, - {82, 82, 82, 82, 82, 82, 82, 82, 82, 10: 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 51: 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, 82}, - {81, 81, 81, 81, 81, 81, 81, 81, 81, 10: 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 51: 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 5222}, + {13, 13, 671: 13}, + {21, 21}, + {28: 63, 137: 63, 149: 63, 486: 63, 521: 63}, + {137: 4794, 486: 5254, 915: 4802}, + {68, 68}, // 2665 - {57, 57, 9: 3950}, - {83, 83, 9: 5231}, - {674: 5227, 691: 5228, 1256: 5226}, - {75, 75, 9: 75}, - {80, 80, 9: 80}, + {521: 2798, 747: 5260}, + {521: 2798, 747: 5259}, + {65, 65}, + {66, 66}, + {67, 67}, // 2670 - {79, 79, 9: 79, 141: 5230}, - {77, 77, 9: 77, 141: 5229}, - {76, 76, 9: 76}, - {78, 78, 9: 78}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5224, 1154: 5232}, + {506: 5264}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 5263}, + {506: 69}, + {521: 2798, 747: 5265}, + {263: 5267, 488: 73, 517: 73, 580: 73, 667: 73, 753: 73, 1227: 5266}, // 2675 - {74, 74, 9: 74}, - {84, 84}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 5235}, - {56, 56, 9: 3950}, - {141: 5177, 885: 110, 1083: 5239}, + {488: 2641, 517: 2626, 580: 2625, 667: 2749, 753: 2607, 773: 5270, 780: 2748, 2608, 787: 5274, 5275, 5273, 794: 2609, 799: 5272, 1317: 5271}, + {395: 5268}, + {149: 5269, 488: 72, 517: 72, 580: 72, 667: 72, 753: 72}, + {488: 71, 517: 71, 580: 71, 667: 71, 753: 71}, + {667: 2749, 753: 2607, 780: 5278, 5276, 794: 5277}, // 2680 - {478: 5238}, - {58, 58}, - {885: 5240}, - {478: 5241}, - {492: 5242, 499: 2129, 507: 5243, 1042: 5244}, + {78, 78}, + {77, 77}, + {76, 76}, + {75, 75}, + {74, 74}, // 2685 - {2128, 2128, 475: 2128, 2128, 2128, 481: 2128, 498: 2128, 2128, 572: 2128, 649: 2128}, - {2127, 2127, 475: 2127, 2127, 2127, 481: 2127, 498: 2127, 2127, 572: 2127, 649: 2127}, - {499: 5245}, - {572: 5246}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5247}, + {2111, 2111}, + {2110, 2110}, + {271, 271, 495: 271}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5285, 1168: 5286, 1343: 5284}, + {87, 87, 87, 87, 87, 87, 87, 87, 87, 10: 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 74: 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87}, // 2690 - {112, 112, 103: 112, 112: 112, 476: 112, 492: 112, 509: 112, 650: 5249, 661: 112, 1196: 5248}, - {108, 108, 103: 3970, 112: 3969, 476: 108, 492: 108, 509: 108, 661: 108, 839: 3968, 1053: 5252}, - {509: 5250}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 5251}, - {111, 111, 103: 111, 112: 111, 476: 111, 492: 111, 509: 111, 661: 111}, + {86, 86, 86, 86, 86, 86, 86, 86, 86, 10: 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 74: 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86, 86}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 5283}, + {61, 61, 9: 3999}, + {88, 88, 9: 5292}, + {684: 5288, 701: 5289, 1269: 5287}, // 2695 - {95, 95, 476: 95, 492: 95, 509: 95, 661: 3991, 949: 5253}, - {114, 114, 476: 114, 492: 5255, 509: 114, 1237: 5254}, - {2337, 2337, 476: 5258, 509: 2337, 1202: 5259}, - {511: 2759, 737: 5256}, - {661: 5257}, + {80, 80, 9: 80}, + {85, 85, 9: 85}, + {84, 84, 9: 84, 148: 5291}, + {82, 82, 9: 82, 148: 5290}, + {81, 81, 9: 81}, // 2700 - {113, 113, 476: 113, 509: 113}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 2343, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 571: 3375, 664: 4169, 2785, 2786, 2784, 714: 5272, 748: 5271, 1006: 5270, 1200: 5269, 5273}, - {89, 89, 509: 5261, 1255: 5260}, - {115, 115}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3806, 2785, 2786, 2784, 715: 5264, 1081: 5263, 1254: 5262}, + {83, 83, 9: 83}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5285, 1168: 5293}, + {79, 79, 9: 79}, + {89, 89}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 5296}, // 2705 - {88, 88, 9: 5267}, - {86, 86, 9: 86}, - {502: 5265}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5266}, - {85, 85, 9: 85}, + {60, 60, 9: 3999}, + {148: 5237, 897: 115, 1095: 5300}, + {487: 5299}, + {62, 62}, + {897: 5301}, // 2710 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3806, 2785, 2786, 2784, 715: 5264, 1081: 5268}, - {87, 87, 9: 87}, - {9: 5275, 50: 2342}, - {9: 2341, 50: 2341}, - {9: 2339, 50: 2339}, + {487: 5302}, + {502: 5303, 510: 2153, 517: 5304, 1054: 5305}, + {2152, 2152, 485: 2152, 2152, 488: 2152, 492: 2152, 509: 2152, 2152, 581: 2152, 658: 2152}, + {2151, 2151, 485: 2151, 2151, 488: 2151, 492: 2151, 509: 2151, 2151, 581: 2151, 658: 2151}, + {510: 5306}, // 2715 - {9: 2338, 50: 2338}, - {50: 5274}, - {2336, 2336, 509: 2336}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 571: 3375, 664: 4169, 2785, 2786, 2784, 714: 5272, 748: 5271, 1006: 5276}, - {9: 2340, 50: 2340}, + {581: 5307}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5308}, + {117, 117, 105: 117, 128: 117, 486: 117, 502: 117, 519: 117, 660: 5310, 671: 117, 1210: 5309}, + {113, 113, 105: 4019, 128: 4018, 486: 113, 502: 113, 519: 113, 671: 113, 849: 4017, 1065: 5313}, + {519: 5311}, // 2720 - {9: 172, 130: 172, 475: 172, 503: 172, 571: 1849, 653: 172, 670: 1849}, - {9: 137, 475: 137, 137, 503: 137, 571: 1818, 653: 137, 670: 1818}, - {9: 151, 475: 151, 151, 503: 151, 571: 1792, 653: 151, 670: 1792}, - {9: 138, 475: 138, 138, 503: 138, 571: 1789, 653: 138, 670: 1789}, - {9: 127, 475: 127, 127, 503: 127, 571: 1754, 653: 127, 670: 1754}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 5312}, + {116, 116, 105: 116, 128: 116, 486: 116, 502: 116, 519: 116, 671: 116}, + {100, 100, 486: 100, 502: 100, 519: 100, 671: 4040, 960: 5314}, + {119, 119, 486: 119, 502: 5316, 519: 119, 1250: 5315}, + {2362, 2362, 486: 5319, 519: 2362, 1215: 5320}, // 2725 - {9: 147, 475: 147, 147, 503: 147, 571: 1677, 653: 147, 670: 1677}, - {9: 152, 475: 152, 152, 503: 152, 571: 1670, 653: 152, 670: 1670}, - {326: 5386, 390: 5385, 571: 1651, 670: 1651}, - {9: 139, 475: 139, 139, 503: 139, 571: 1648, 653: 139, 670: 1648}, - {9: 128, 475: 128, 128, 503: 128, 571: 1645, 653: 128, 670: 1645}, + {521: 2798, 747: 5317}, + {671: 5318}, + {118, 118, 486: 118, 519: 118}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 2368, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 582: 3424, 676: 4218, 2824, 2825, 2823, 724: 5333, 758: 5332, 1017: 5331, 1213: 5330, 5334}, + {94, 94, 519: 5322, 1268: 5321}, // 2730 - {571: 5383, 670: 5382}, - {9: 748, 475: 748, 503: 748, 571: 268, 653: 748, 670: 268}, - {9: 747, 475: 747, 503: 747, 653: 747}, - {9: 168, 130: 5381, 475: 168, 503: 168, 653: 168}, - {9: 170, 475: 170, 503: 170, 653: 170}, + {120, 120}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3855, 2824, 2825, 2823, 725: 5325, 1093: 5324, 1267: 5323}, + {93, 93, 9: 5328}, + {91, 91, 9: 91}, + {512: 5326}, // 2735 - {9: 169, 475: 169, 503: 169, 653: 169}, - {503: 5379}, - {9: 148, 475: 148, 148, 499: 5377, 503: 148, 653: 148}, - {9: 165, 475: 165, 503: 165, 653: 165}, - {9: 5329, 475: 5330, 503: 5331}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5327}, + {90, 90, 9: 90}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3855, 2824, 2825, 2823, 725: 5325, 1093: 5329}, + {92, 92, 9: 92}, + {9: 5336, 73: 2367}, // 2740 - {9: 163, 475: 163, 5326, 503: 163, 653: 163}, - {9: 161, 192: 5325, 475: 161, 161, 503: 161, 653: 161}, - {9: 159, 284: 5324, 475: 159, 159, 503: 159, 653: 159}, - {9: 158, 20: 5318, 104: 5320, 169: 5319, 172: 5317, 176: 5321, 284: 5322, 475: 158, 158, 503: 158, 653: 158}, - {9: 155, 475: 155, 155, 503: 155, 653: 155}, + {9: 2366, 73: 2366}, + {9: 2364, 73: 2364}, + {9: 2363, 73: 2363}, + {73: 5335}, + {2361, 2361, 519: 2361}, // 2745 - {9: 154, 475: 154, 154, 503: 154, 653: 154}, - {9: 153, 176: 5316, 475: 153, 153, 503: 153, 653: 153}, - {9: 150, 475: 150, 150, 503: 150, 653: 150}, - {9: 149, 475: 149, 149, 503: 149, 653: 149}, - {104: 5315, 1025: 5314}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 582: 3424, 676: 4218, 2824, 2825, 2823, 724: 5333, 758: 5332, 1017: 5337}, + {9: 2365, 73: 2365}, + {9: 177, 137: 177, 485: 177, 514: 177, 582: 1872, 663: 177, 680: 1872}, + {9: 142, 485: 142, 142, 514: 142, 582: 1841, 663: 142, 680: 1841}, + {9: 156, 485: 156, 156, 514: 156, 582: 1815, 663: 156, 680: 1815}, // 2750 - {9: 145, 475: 145, 145, 503: 145, 653: 145}, - {911: 5313}, - {9: 143, 475: 143, 143, 503: 143, 653: 143}, - {9: 140, 475: 140, 140, 503: 140, 653: 140}, - {126: 5312}, + {9: 143, 485: 143, 143, 514: 143, 582: 1812, 663: 143, 680: 1812}, + {9: 132, 485: 132, 132, 514: 132, 582: 1776, 663: 132, 680: 1776}, + {9: 152, 485: 152, 152, 514: 152, 582: 1699, 663: 152, 680: 1699}, + {9: 157, 485: 157, 157, 514: 157, 582: 1692, 663: 157, 680: 1692}, + {335: 5447, 400: 5446, 582: 1673, 680: 1673}, // 2755 - {9: 135, 475: 135, 135, 503: 135, 653: 135}, - {9: 144, 475: 144, 144, 503: 144, 653: 144}, - {9: 146, 475: 146, 146, 503: 146, 653: 146}, - {9: 133, 475: 133, 133, 503: 133, 653: 133}, - {9: 131, 475: 131, 131, 503: 131, 653: 131}, + {9: 144, 485: 144, 144, 514: 144, 582: 1670, 663: 144, 680: 1670}, + {9: 133, 485: 133, 133, 514: 133, 582: 1667, 663: 133, 680: 1667}, + {582: 5444, 680: 5443}, + {9: 761, 485: 761, 514: 761, 582: 277, 663: 761, 680: 277}, + {9: 760, 485: 760, 514: 760, 663: 760}, // 2760 - {9: 157, 475: 157, 157, 503: 157, 653: 157}, - {9: 156, 475: 156, 156, 503: 156, 653: 156}, - {126: 5323}, - {9: 134, 475: 134, 134, 503: 134, 653: 134}, - {9: 132, 475: 132, 132, 503: 132, 653: 132}, + {9: 173, 137: 5442, 485: 173, 514: 173, 663: 173}, + {9: 175, 485: 175, 514: 175, 663: 175}, + {9: 174, 485: 174, 514: 174, 663: 174}, + {514: 5440}, + {9: 153, 485: 153, 153, 510: 5438, 514: 153, 663: 153}, // 2765 - {9: 130, 475: 130, 130, 503: 130, 653: 130}, - {9: 136, 475: 136, 136, 503: 136, 653: 136}, - {9: 129, 475: 129, 129, 503: 129, 653: 129}, - {9: 160, 475: 160, 160, 503: 160, 653: 160}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 5327}, + {9: 170, 485: 170, 514: 170, 663: 170}, + {9: 5390, 485: 5391, 514: 5392}, + {9: 168, 485: 168, 5387, 514: 168, 663: 168}, + {9: 166, 200: 5386, 485: 166, 166, 514: 166, 663: 166}, + {9: 164, 293: 5385, 485: 164, 164, 514: 164, 663: 164}, // 2770 - {9: 4172, 50: 5328}, - {9: 162, 475: 162, 503: 162, 653: 162}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5277, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 5279, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 5285, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 5281, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 5278, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 5286, 3232, 2956, 3184, 5280, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 5283, 2867, 2868, 3107, 5284, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 5282, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5288, 500: 5311, 570: 5305, 647: 5309, 649: 5294, 652: 5304, 654: 5298, 657: 5307, 664: 3517, 2785, 2786, 2784, 5299, 672: 5303, 677: 5300, 742: 5287, 5302, 805: 5289, 814: 5293, 858: 5308, 870: 5306, 941: 5290, 962: 5291, 5297, 968: 5292, 5376, 977: 5301, 979: 5310}, - {2: 126, 126, 126, 126, 126, 126, 126, 10: 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 51: 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 5343, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 523: 126, 572: 5342, 964: 5344, 1091: 5345}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5334, 872: 5335}, + {9: 163, 20: 5379, 106: 5381, 176: 5380, 179: 5378, 183: 5382, 293: 5383, 485: 163, 163, 514: 163, 663: 163}, + {9: 160, 485: 160, 160, 514: 160, 663: 160}, + {9: 159, 485: 159, 159, 514: 159, 663: 159}, + {9: 158, 183: 5377, 485: 158, 158, 514: 158, 663: 158}, + {9: 155, 485: 155, 155, 514: 155, 663: 155}, // 2775 - {761, 761, 6: 761, 9: 761, 15: 761, 48: 761, 761, 104: 761, 147: 761, 477: 761, 484: 761, 502: 761, 571: 5340, 653: 761, 669: 761, 5339, 761}, - {1220, 1220, 6: 1220, 9: 1220, 15: 1220, 48: 1220, 1220, 104: 1220, 147: 1220, 476: 3796, 1220, 484: 1220, 502: 1220, 653: 1220, 669: 1220, 671: 1220, 1100: 5338}, - {757, 757, 9: 757, 477: 757}, - {116, 116, 9: 5336}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5337}, + {9: 154, 485: 154, 154, 514: 154, 663: 154}, + {106: 5376, 1037: 5375}, + {9: 150, 485: 150, 150, 514: 150, 663: 150}, + {922: 5374}, + {9: 148, 485: 148, 148, 514: 148, 663: 148}, // 2780 - {756, 756, 9: 756, 477: 756}, - {758, 758, 6: 758, 9: 758, 15: 758, 48: 758, 758, 104: 758, 147: 758, 477: 758, 484: 758, 502: 758, 653: 758, 669: 758, 671: 758}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 664: 3517, 2785, 2786, 2784, 742: 5341}, - {759, 759, 6: 759, 9: 759, 15: 759, 48: 759, 759, 104: 759, 147: 759, 477: 759, 484: 759, 502: 759, 653: 759, 669: 759, 671: 759}, - {760, 760, 6: 760, 9: 760, 15: 760, 48: 760, 760, 104: 760, 147: 760, 477: 760, 484: 760, 502: 760, 653: 760, 669: 760, 671: 760}, + {9: 145, 485: 145, 145, 514: 145, 663: 145}, + {132: 5373}, + {9: 140, 485: 140, 140, 514: 140, 663: 140}, + {9: 149, 485: 149, 149, 514: 149, 663: 149}, + {9: 151, 485: 151, 151, 514: 151, 663: 151}, // 2785 - {2: 125, 125, 125, 125, 125, 125, 125, 10: 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 51: 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 523: 125}, - {2: 124, 124, 124, 124, 124, 124, 124, 10: 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 51: 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 523: 124}, - {2: 123, 123, 123, 123, 123, 123, 123, 10: 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 51: 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 523: 123}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 5346, 664: 5347, 2785, 2786, 2784, 1115: 5348}, - {503: 122, 653: 122, 655: 5374}, + {9: 138, 485: 138, 138, 514: 138, 663: 138}, + {9: 136, 485: 136, 136, 514: 136, 663: 136}, + {9: 162, 485: 162, 162, 514: 162, 663: 162}, + {9: 161, 485: 161, 161, 514: 161, 663: 161}, + {132: 5384}, // 2790 - {503: 118, 653: 118, 655: 5371}, - {503: 5349}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5350, 895: 5351, 927: 5352}, - {206, 206, 6: 206, 9: 206, 15: 206, 48: 206, 206, 147: 5356, 477: 206, 669: 206, 1186: 5355}, - {245, 245, 6: 245, 9: 245, 15: 245, 48: 245, 245, 477: 245, 669: 245}, + {9: 139, 485: 139, 139, 514: 139, 663: 139}, + {9: 137, 485: 137, 137, 514: 137, 663: 137}, + {9: 135, 485: 135, 135, 514: 135, 663: 135}, + {9: 141, 485: 141, 141, 514: 141, 663: 141}, + {9: 134, 485: 134, 134, 514: 134, 663: 134}, // 2795 - {117, 117, 9: 5353}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5350, 895: 5354}, - {244, 244, 6: 244, 9: 244, 15: 244, 48: 244, 244, 477: 244, 669: 244}, - {246, 246, 6: 246, 9: 246, 15: 246, 48: 246, 246, 477: 246, 669: 246}, - {477: 5358, 663: 5357}, + {9: 165, 485: 165, 165, 514: 165, 663: 165}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 5388}, + {9: 4221, 73: 5389}, + {9: 167, 485: 167, 514: 167, 663: 167}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5338, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 5340, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 5346, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 5342, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 5339, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 5347, 3276, 2996, 3228, 5341, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 5344, 2906, 2907, 3147, 5345, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 5343, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5349, 511: 5372, 580: 5366, 657: 5370, 5355, 661: 5365, 664: 5359, 667: 5368, 674: 5360, 676: 3566, 2824, 2825, 2823, 682: 5364, 687: 5361, 752: 5348, 5363, 815: 5350, 825: 5354, 868: 5369, 881: 5367, 952: 5351, 972: 5352, 5358, 978: 5353, 5437, 987: 5362, 989: 5371}, // 2800 - {15: 5369, 478: 5366, 897: 5368}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 664: 3517, 2785, 2786, 2784, 742: 5360, 1187: 5359}, - {204, 204, 6: 204, 9: 204, 15: 204, 48: 204, 204, 477: 204, 481: 5362, 663: 5361, 669: 204}, - {200, 200, 6: 200, 9: 200, 15: 200, 48: 200, 200, 477: 200, 481: 200, 663: 200, 669: 200}, - {478: 5366, 897: 5367}, + {2: 131, 131, 131, 131, 131, 131, 131, 10: 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 74: 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 5404, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 533: 131, 581: 5403, 974: 5405, 1103: 5406}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5395, 883: 5396}, + {774, 774, 6: 774, 9: 774, 15: 774, 50: 774, 774, 106: 774, 154: 774, 488: 774, 495: 774, 512: 774, 582: 5401, 663: 774, 675: 774, 680: 5400, 774}, + {1233, 1233, 6: 1233, 9: 1233, 15: 1233, 50: 1233, 1233, 106: 1233, 154: 1233, 486: 3845, 488: 1233, 495: 1233, 512: 1233, 663: 1233, 675: 1233, 681: 1233, 1112: 5399}, + {770, 770, 9: 770, 488: 770}, // 2805 - {478: 5364, 579: 5365, 1065: 5363}, - {202, 202, 6: 202, 9: 202, 15: 202, 48: 202, 202, 477: 202, 669: 202}, - {199, 199, 6: 199, 9: 199, 15: 199, 48: 199, 199, 477: 199, 669: 199}, - {198, 198, 6: 198, 9: 198, 15: 198, 48: 198, 198, 477: 198, 669: 198}, - {753, 753, 6: 753, 9: 753, 15: 753, 48: 753, 753, 753, 477: 753, 669: 753}, + {121, 121, 9: 5397}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5398}, + {769, 769, 9: 769, 488: 769}, + {771, 771, 6: 771, 9: 771, 15: 771, 50: 771, 771, 106: 771, 154: 771, 488: 771, 495: 771, 512: 771, 663: 771, 675: 771, 681: 771}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 676: 3566, 2824, 2825, 2823, 752: 5402}, // 2810 - {203, 203, 6: 203, 9: 203, 15: 203, 48: 203, 203, 477: 203, 669: 203}, - {205, 205, 6: 205, 9: 205, 15: 205, 48: 205, 205, 477: 205, 669: 205}, - {478: 5364, 579: 5365, 1065: 5370}, - {201, 201, 6: 201, 9: 201, 15: 201, 48: 201, 201, 477: 201, 669: 201}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 5372, 664: 5373, 2785, 2786, 2784}, + {772, 772, 6: 772, 9: 772, 15: 772, 50: 772, 772, 106: 772, 154: 772, 488: 772, 495: 772, 512: 772, 663: 772, 675: 772, 681: 772}, + {773, 773, 6: 773, 9: 773, 15: 773, 50: 773, 773, 106: 773, 154: 773, 488: 773, 495: 773, 512: 773, 663: 773, 675: 773, 681: 773}, + {2: 130, 130, 130, 130, 130, 130, 130, 10: 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 74: 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 533: 130}, + {2: 129, 129, 129, 129, 129, 129, 129, 10: 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 74: 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 533: 129}, + {2: 128, 128, 128, 128, 128, 128, 128, 10: 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 74: 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 533: 128}, // 2815 - {503: 120, 653: 120}, - {503: 119, 653: 119}, - {523: 5375}, - {503: 121, 653: 121}, - {9: 164, 475: 164, 503: 164, 653: 164}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 5407, 676: 5408, 2824, 2825, 2823, 1127: 5409}, + {514: 127, 663: 127, 665: 5435}, + {514: 123, 663: 123, 665: 5432}, + {514: 5410}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5411, 906: 5412, 938: 5413}, // 2820 - {285: 5378}, - {9: 166, 475: 166, 503: 166, 653: 166}, - {285: 5380}, - {9: 167, 475: 167, 503: 167, 653: 167}, - {9: 171, 130: 171, 475: 171, 503: 171, 653: 171}, + {213, 213, 6: 213, 9: 213, 15: 213, 50: 213, 213, 154: 5417, 488: 213, 675: 213, 1200: 5416}, + {254, 254, 6: 254, 9: 254, 15: 254, 50: 254, 254, 488: 254, 675: 254}, + {122, 122, 9: 5414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5411, 906: 5415}, + {253, 253, 6: 253, 9: 253, 15: 253, 50: 253, 253, 488: 253, 675: 253}, // 2825 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 664: 3517, 2785, 2786, 2784, 742: 5384}, - {749, 749, 9: 749, 475: 749, 503: 749, 653: 749}, - {750, 750, 9: 750, 475: 750, 503: 750, 653: 750}, - {9: 142, 475: 142, 142, 503: 142, 653: 142}, - {9: 141, 475: 141, 141, 503: 141, 653: 141}, + {255, 255, 6: 255, 9: 255, 15: 255, 50: 255, 255, 488: 255, 675: 255}, + {488: 5419, 673: 5418}, + {15: 5430, 487: 5427, 908: 5429}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 676: 3566, 2824, 2825, 2823, 752: 5421, 1201: 5420}, + {211, 211, 6: 211, 9: 211, 15: 211, 50: 211, 211, 488: 211, 492: 5423, 673: 5422, 675: 211}, // 2830 - {475: 5429, 571: 1765, 670: 1765}, - {9: 5329, 475: 5389, 653: 5390}, - {2: 126, 126, 126, 126, 126, 126, 126, 10: 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 51: 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 5343, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 523: 126, 572: 5342, 964: 5344, 1091: 5392}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5334, 872: 5391}, - {179, 179, 9: 5336}, + {207, 207, 6: 207, 9: 207, 15: 207, 50: 207, 207, 488: 207, 492: 207, 673: 207, 675: 207}, + {487: 5427, 908: 5428}, + {487: 5425, 589: 5426, 1077: 5424}, + {209, 209, 6: 209, 9: 209, 15: 209, 50: 209, 209, 488: 209, 675: 209}, + {206, 206, 6: 206, 9: 206, 15: 206, 50: 206, 206, 488: 206, 675: 206}, // 2835 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 5346, 664: 5347, 2785, 2786, 2784, 1115: 5393}, - {653: 5394}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5350, 895: 5351, 927: 5395}, - {235, 235, 9: 5353, 477: 235, 669: 5397, 965: 5396, 5398}, - {234, 234, 6: 234, 15: 234, 48: 234, 234, 477: 234}, + {205, 205, 6: 205, 9: 205, 15: 205, 50: 205, 205, 488: 205, 675: 205}, + {766, 766, 6: 766, 9: 766, 15: 766, 50: 766, 766, 73: 766, 488: 766, 675: 766}, + {210, 210, 6: 210, 9: 210, 15: 210, 50: 210, 210, 488: 210, 675: 210}, + {212, 212, 6: 212, 9: 212, 15: 212, 50: 212, 212, 488: 212, 675: 212}, + {487: 5425, 589: 5426, 1077: 5431}, // 2840 - {129: 5418, 131: 5416, 137: 5419, 5417, 5420, 365: 5411, 410: 5413, 967: 5415, 1295: 5414, 1314: 5412}, - {178, 178, 477: 5400, 1172: 5399}, - {181, 181}, - {132: 5404, 5402, 5403, 5405, 858: 5401}, - {911: 5410}, + {208, 208, 6: 208, 9: 208, 15: 208, 50: 208, 208, 488: 208, 675: 208}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 5433, 676: 5434, 2824, 2825, 2823}, + {514: 125, 663: 125}, + {514: 124, 663: 124}, + {533: 5436}, // 2845 - {511: 2759, 737: 5409}, - {511: 2759, 737: 5408}, - {511: 2759, 737: 5407}, - {511: 2759, 737: 5406}, - {173, 173}, + {514: 126, 663: 126}, + {9: 169, 485: 169, 514: 169, 663: 169}, + {294: 5439}, + {9: 171, 485: 171, 514: 171, 663: 171}, + {294: 5441}, // 2850 - {174, 174}, - {175, 175}, - {176, 176}, - {177, 177}, - {233, 233, 6: 233, 15: 233, 48: 233, 233, 477: 233}, + {9: 172, 485: 172, 514: 172, 663: 172}, + {9: 176, 137: 176, 485: 176, 514: 176, 663: 176}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 676: 3566, 2824, 2825, 2823, 752: 5445}, + {762, 762, 9: 762, 485: 762, 514: 762, 663: 762}, + {763, 763, 9: 763, 485: 763, 514: 763, 663: 763}, // 2855 - {232, 232, 6: 232, 15: 232, 48: 232, 232, 477: 232}, - {231, 231, 6: 231, 15: 231, 48: 231, 231, 477: 231}, - {230, 230, 6: 230, 15: 230, 48: 230, 230, 129: 5418, 131: 5416, 137: 5419, 5417, 5420, 477: 230, 510: 5426, 967: 5427}, - {229, 229, 6: 229, 15: 229, 48: 229, 229, 129: 229, 131: 229, 137: 229, 229, 229, 477: 229, 510: 229}, - {478: 5425}, + {9: 147, 485: 147, 147, 514: 147, 663: 147}, + {9: 146, 485: 146, 146, 514: 146, 663: 146}, + {485: 5490, 582: 1788, 680: 1788}, + {9: 5390, 485: 5450, 663: 5451}, + {2: 131, 131, 131, 131, 131, 131, 131, 10: 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 74: 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 5404, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 533: 131, 581: 5403, 974: 5405, 1103: 5453}, // 2860 - {478: 5424}, - {478: 5423}, - {478: 5422}, - {478: 5421}, - {222, 222, 6: 222, 15: 222, 48: 222, 222, 129: 222, 131: 222, 137: 222, 222, 222, 477: 222, 510: 222}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5395, 883: 5452}, + {184, 184, 9: 5397}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 5407, 676: 5408, 2824, 2825, 2823, 1127: 5454}, + {663: 5455}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5411, 906: 5412, 938: 5456}, // 2865 - {223, 223, 6: 223, 15: 223, 48: 223, 223, 129: 223, 131: 223, 137: 223, 223, 223, 477: 223, 510: 223}, - {224, 224, 6: 224, 15: 224, 48: 224, 224, 129: 224, 131: 224, 137: 224, 224, 224, 477: 224, 510: 224}, - {225, 225, 6: 225, 15: 225, 48: 225, 225, 129: 225, 131: 225, 137: 225, 225, 225, 477: 225, 510: 225}, - {226, 226, 6: 226, 15: 226, 48: 226, 226, 129: 226, 131: 226, 137: 226, 226, 226, 477: 226, 510: 226}, - {129: 5418, 131: 5416, 137: 5419, 5417, 5420, 967: 5428}, + {244, 244, 9: 5414, 488: 244, 675: 5458, 975: 5457, 5459}, + {243, 243, 6: 243, 15: 243, 50: 243, 243, 488: 243}, + {136: 5479, 138: 5477, 144: 5480, 5478, 5481, 374: 5472, 420: 5474, 977: 5476, 1308: 5475, 1327: 5473}, + {183, 183, 488: 5461, 1186: 5460}, + {186, 186}, // 2870 - {227, 227, 6: 227, 15: 227, 48: 227, 227, 129: 227, 131: 227, 137: 227, 227, 227, 477: 227, 510: 227}, - {228, 228, 6: 228, 15: 228, 48: 228, 228, 129: 228, 131: 228, 137: 228, 228, 228, 477: 228, 510: 228}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5430}, - {653: 5431}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5334, 872: 5432}, + {139: 5465, 5463, 5464, 5466, 868: 5462}, + {922: 5471}, + {521: 2798, 747: 5470}, + {521: 2798, 747: 5469}, + {521: 2798, 747: 5468}, // 2875 - {178, 178, 9: 5336, 477: 5400, 1172: 5433}, + {521: 2798, 747: 5467}, + {178, 178}, + {179, 179}, {180, 180}, - {2210, 2210, 9: 2210, 16: 2210, 18: 2210, 21: 2210, 482: 2210, 487: 2210, 501: 2210, 503: 2210, 508: 2210, 2210, 521: 2210, 650: 2210, 653: 2210, 680: 2210}, - {259, 259}, - {2: 868, 868, 868, 868, 868, 868, 868, 10: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 51: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 476: 868, 478: 868, 868, 868, 482: 868, 485: 868, 868, 488: 868, 868, 868, 492: 868, 495: 868, 498: 868, 868, 503: 868, 507: 868, 868, 511: 868, 518: 868, 523: 868, 533: 868, 567: 868, 570: 868, 868, 573: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 585: 868, 868, 868, 868, 868, 868, 868, 868, 595: 868, 868, 598: 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 868, 651: 868, 654: 868, 749: 868, 868, 757: 868, 868, 868, 766: 868, 774: 868, 868, 868}, + {181, 181}, // 2880 - {2: 866, 866, 866, 866, 866, 866, 866, 10: 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 51: 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 866, 476: 866, 492: 866, 499: 866, 503: 866, 582: 866, 757: 866, 866, 866}, - {2: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 10: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 51: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 476: 1071, 492: 1071, 582: 1071, 757: 5441, 5440, 5439, 842: 5442, 891: 5443}, - {2: 1074, 1074, 1074, 1074, 1074, 1074, 1074, 10: 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 51: 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 476: 1074, 478: 1074, 1074, 1074, 482: 1074, 485: 1074, 1074, 488: 1074, 1074, 1074, 492: 1074, 495: 1074, 498: 1074, 1074, 503: 1074, 507: 1074, 1074, 511: 1074, 518: 1074, 523: 1074, 533: 1074, 567: 1074, 570: 1074, 1074, 573: 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 585: 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 595: 1074, 1074, 598: 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 651: 1074, 654: 1074, 749: 1074, 1074, 757: 1074, 1074, 1074, 766: 1074, 774: 1074, 1074, 1074}, - {2: 1073, 1073, 1073, 1073, 1073, 1073, 1073, 10: 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 51: 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 476: 1073, 478: 1073, 1073, 1073, 482: 1073, 485: 1073, 1073, 488: 1073, 1073, 1073, 492: 1073, 495: 1073, 498: 1073, 1073, 503: 1073, 507: 1073, 1073, 511: 1073, 518: 1073, 523: 1073, 533: 1073, 567: 1073, 570: 1073, 1073, 573: 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 585: 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 595: 1073, 1073, 598: 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 651: 1073, 654: 1073, 749: 1073, 1073, 757: 1073, 1073, 1073, 766: 1073, 774: 1073, 1073, 1073}, - {2: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 10: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 51: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 476: 1072, 478: 1072, 1072, 1072, 482: 1072, 485: 1072, 1072, 488: 1072, 1072, 1072, 492: 1072, 495: 1072, 498: 1072, 1072, 503: 1072, 507: 1072, 1072, 511: 1072, 518: 1072, 523: 1072, 533: 1072, 567: 1072, 570: 1072, 1072, 573: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 585: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 595: 1072, 1072, 598: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 651: 1072, 654: 1072, 749: 1072, 1072, 757: 1072, 1072, 1072, 766: 1072, 774: 1072, 1072, 1072}, + {182, 182}, + {242, 242, 6: 242, 15: 242, 50: 242, 242, 488: 242}, + {241, 241, 6: 241, 15: 241, 50: 241, 241, 488: 241}, + {240, 240, 6: 240, 15: 240, 50: 240, 240, 488: 240}, + {239, 239, 6: 239, 15: 239, 50: 239, 239, 136: 5479, 138: 5477, 144: 5480, 5478, 5481, 488: 239, 520: 5487, 977: 5488}, // 2885 - {2: 1070, 1070, 1070, 1070, 1070, 1070, 1070, 10: 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 51: 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 476: 1070, 492: 1070, 499: 1070, 503: 1070, 582: 1070}, - {2: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 10: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 51: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 476: 1873, 492: 4217, 582: 1873, 859: 5444}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 582: 5448, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5447, 856: 5445, 894: 5446}, - {945, 945, 9: 945, 50: 945, 475: 945, 477: 945, 483: 945, 945, 493: 945, 945, 496: 945, 945, 499: 945, 945, 945, 504: 945, 945, 509: 945, 516: 945, 945, 519: 945}, - {9: 5499, 509: 5569}, + {238, 238, 6: 238, 15: 238, 50: 238, 238, 136: 238, 138: 238, 144: 238, 238, 238, 488: 238, 520: 238}, + {487: 5486}, + {487: 5485}, + {487: 5484}, + {487: 5483}, // 2890 - {9: 943, 485: 5466, 5467, 509: 5556, 518: 5465, 520: 5468, 522: 5464, 524: 5469, 5470, 823: 5463, 827: 5462}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5553, 2785, 2786, 2784}, - {941, 941, 9: 941, 50: 941, 475: 941, 477: 941, 483: 941, 941, 941, 941, 493: 941, 941, 496: 941, 941, 499: 941, 941, 941, 504: 941, 941, 509: 941, 516: 941, 941, 941, 941, 941, 522: 941, 524: 941, 941, 941}, - {940, 940, 9: 940, 50: 940, 475: 940, 477: 940, 483: 940, 940, 940, 940, 493: 940, 940, 496: 940, 940, 499: 940, 940, 940, 504: 940, 940, 509: 940, 516: 940, 940, 940, 940, 940, 522: 940, 524: 940, 940, 940}, - {936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 477: 936, 481: 936, 483: 936, 936, 936, 936, 491: 5503, 936, 936, 936, 496: 936, 936, 499: 936, 936, 936, 504: 936, 936, 936, 509: 936, 516: 936, 936, 936, 936, 936, 522: 936, 524: 936, 936, 936, 528: 936, 936, 676: 936, 864: 5502}, + {487: 5482}, + {231, 231, 6: 231, 15: 231, 50: 231, 231, 136: 231, 138: 231, 144: 231, 231, 231, 488: 231, 520: 231}, + {232, 232, 6: 232, 15: 232, 50: 232, 232, 136: 232, 138: 232, 144: 232, 232, 232, 488: 232, 520: 232}, + {233, 233, 6: 233, 15: 233, 50: 233, 233, 136: 233, 138: 233, 144: 233, 233, 233, 488: 233, 520: 233}, + {234, 234, 6: 234, 15: 234, 50: 234, 234, 136: 234, 138: 234, 144: 234, 234, 234, 488: 234, 520: 234}, // 2895 - {934, 934, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 934, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 934, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 934, 477: 934, 481: 5460, 483: 934, 934, 934, 934, 493: 934, 934, 496: 934, 934, 499: 934, 934, 934, 504: 934, 934, 509: 934, 516: 934, 934, 934, 934, 934, 522: 934, 524: 934, 934, 934, 664: 5459, 2785, 2786, 2784, 920: 5458, 5457}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 2607, 498: 2606, 572: 2605, 582: 5448, 649: 2601, 664: 3947, 2785, 2786, 2784, 713: 5456, 740: 5451, 752: 3907, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 3909, 3908, 802: 5450, 806: 5449, 5455, 856: 5445, 894: 5454}, - {9: 5499, 50: 5500}, - {943, 943, 9: 943, 50: 943, 475: 943, 477: 943, 483: 943, 943, 5466, 5467, 493: 943, 943, 496: 943, 943, 499: 943, 943, 943, 504: 943, 943, 509: 943, 516: 943, 943, 5465, 943, 5468, 522: 5464, 524: 5469, 5470, 823: 5463, 827: 5462}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 934, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 4000, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 481: 5460, 483: 828, 485: 934, 934, 493: 828, 828, 496: 2751, 504: 2752, 2748, 518: 934, 520: 934, 522: 934, 524: 934, 934, 664: 5459, 2785, 2786, 2784, 772: 3917, 3918, 920: 5458, 5457}, + {235, 235, 6: 235, 15: 235, 50: 235, 235, 136: 235, 138: 235, 144: 235, 235, 235, 488: 235, 520: 235}, + {136: 5479, 138: 5477, 144: 5480, 5478, 5481, 977: 5489}, + {236, 236, 6: 236, 15: 236, 50: 236, 236, 136: 236, 138: 236, 144: 236, 236, 236, 488: 236, 520: 236}, + {237, 237, 6: 237, 15: 237, 50: 237, 237, 136: 237, 138: 237, 144: 237, 237, 237, 488: 237, 520: 237}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5491}, // 2900 - {938, 938, 9: 938, 50: 938, 475: 938, 477: 938, 483: 938, 938, 938, 938, 493: 938, 938, 496: 938, 938, 499: 938, 938, 938, 504: 938, 938, 509: 938, 516: 938, 938, 938, 938, 938, 522: 938, 524: 938, 938, 938}, - {933, 933, 9: 933, 50: 933, 475: 933, 477: 933, 483: 933, 933, 933, 933, 492: 933, 933, 933, 496: 933, 933, 499: 933, 933, 933, 504: 933, 933, 933, 509: 933, 516: 933, 933, 933, 933, 933, 522: 933, 524: 933, 933, 933, 528: 933, 933, 676: 933}, - {932, 932, 9: 932, 50: 932, 475: 932, 477: 932, 483: 932, 932, 932, 932, 492: 932, 932, 932, 496: 932, 932, 499: 932, 932, 932, 504: 932, 932, 932, 509: 932, 516: 932, 932, 932, 932, 932, 522: 932, 524: 932, 932, 932, 528: 932, 932, 676: 932}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5461, 2785, 2786, 2784}, - {931, 931, 9: 931, 50: 931, 475: 931, 477: 931, 483: 931, 931, 931, 931, 492: 931, 931, 931, 496: 931, 931, 499: 931, 931, 931, 504: 931, 931, 931, 509: 931, 516: 931, 931, 931, 931, 931, 522: 931, 524: 931, 931, 931, 528: 931, 931, 676: 931}, + {663: 5492}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5395, 883: 5493}, + {183, 183, 9: 5397, 488: 5461, 1186: 5494}, + {185, 185}, + {2235, 2235, 9: 2235, 16: 2235, 18: 2235, 21: 2235, 490: 2235, 493: 2235, 508: 2235, 513: 2235, 2235, 519: 2235, 531: 2235, 660: 2235, 663: 2235, 690: 2235}, // 2905 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5492}, - {520: 902, 913: 5479, 1104: 5483}, - {485: 5466, 5467, 520: 5476, 823: 5477}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5473}, - {520: 904, 913: 904}, + {268, 268}, + {2: 881, 881, 881, 881, 881, 881, 881, 10: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 74: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 486: 881, 881, 489: 881, 881, 881, 496: 881, 881, 881, 881, 881, 502: 881, 505: 881, 508: 881, 881, 881, 514: 881, 517: 881, 521: 881, 528: 881, 533: 881, 543: 881, 577: 881, 580: 881, 582: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 595: 881, 881, 881, 881, 881, 881, 881, 881, 881, 606: 881, 608: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 662: 881, 664: 881, 759: 881, 881, 767: 881, 881, 881, 776: 881, 784: 881, 881, 881}, + {2: 879, 879, 879, 879, 879, 879, 879, 10: 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 74: 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 486: 879, 502: 879, 510: 879, 514: 879, 593: 879, 767: 879, 879, 879}, + {2: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 10: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 74: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 486: 1084, 502: 1084, 593: 1084, 767: 5502, 5501, 5500, 852: 5503, 902: 5504}, + {2: 1087, 1087, 1087, 1087, 1087, 1087, 1087, 10: 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 74: 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 486: 1087, 1087, 489: 1087, 1087, 1087, 496: 1087, 1087, 1087, 1087, 1087, 502: 1087, 505: 1087, 508: 1087, 1087, 1087, 514: 1087, 517: 1087, 521: 1087, 528: 1087, 533: 1087, 543: 1087, 577: 1087, 580: 1087, 582: 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 595: 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 606: 1087, 608: 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 662: 1087, 664: 1087, 759: 1087, 1087, 767: 1087, 1087, 1087, 776: 1087, 784: 1087, 1087, 1087}, // 2910 - {520: 903, 913: 903}, - {2: 900, 900, 900, 900, 900, 900, 900, 10: 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 51: 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 476: 900}, - {520: 5472}, - {520: 5471}, - {2: 898, 898, 898, 898, 898, 898, 898, 10: 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 51: 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 898, 476: 898}, + {2: 1086, 1086, 1086, 1086, 1086, 1086, 1086, 10: 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 74: 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 486: 1086, 1086, 489: 1086, 1086, 1086, 496: 1086, 1086, 1086, 1086, 1086, 502: 1086, 505: 1086, 508: 1086, 1086, 1086, 514: 1086, 517: 1086, 521: 1086, 528: 1086, 533: 1086, 543: 1086, 577: 1086, 580: 1086, 582: 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 595: 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 606: 1086, 608: 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1086, 662: 1086, 664: 1086, 759: 1086, 1086, 767: 1086, 1086, 1086, 776: 1086, 784: 1086, 1086, 1086}, + {2: 1085, 1085, 1085, 1085, 1085, 1085, 1085, 10: 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 74: 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 486: 1085, 1085, 489: 1085, 1085, 1085, 496: 1085, 1085, 1085, 1085, 1085, 502: 1085, 505: 1085, 508: 1085, 1085, 1085, 514: 1085, 517: 1085, 521: 1085, 528: 1085, 533: 1085, 543: 1085, 577: 1085, 580: 1085, 582: 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 595: 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 606: 1085, 608: 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 662: 1085, 664: 1085, 759: 1085, 1085, 767: 1085, 1085, 1085, 776: 1085, 784: 1085, 1085, 1085}, + {2: 1083, 1083, 1083, 1083, 1083, 1083, 1083, 10: 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 74: 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 486: 1083, 502: 1083, 510: 1083, 514: 1083, 593: 1083}, + {2: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 10: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 74: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 486: 1896, 502: 4266, 593: 1896, 869: 5505}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 593: 5509, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5508, 866: 5506, 905: 5507}, // 2915 - {2: 899, 899, 899, 899, 899, 899, 899, 10: 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 51: 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, 476: 899}, - {906, 906, 9: 906, 50: 906, 475: 5474, 477: 906, 483: 906, 906, 906, 906, 493: 906, 906, 496: 906, 906, 499: 906, 906, 906, 504: 906, 906, 509: 906, 516: 906, 906, 906, 906, 906, 522: 906, 524: 906, 906, 906, 823: 5463, 827: 5462}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5475}, - {905, 905, 9: 905, 50: 905, 475: 905, 477: 905, 483: 905, 905, 905, 905, 493: 905, 905, 496: 905, 905, 499: 905, 905, 905, 504: 905, 905, 509: 905, 3371, 512: 3369, 3370, 3368, 3366, 905, 905, 905, 905, 905, 522: 905, 524: 905, 905, 905, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5482}, + {958, 958, 9: 958, 73: 958, 485: 958, 488: 958, 494: 958, 958, 503: 958, 958, 506: 958, 958, 510: 958, 958, 513: 958, 515: 958, 958, 519: 958, 526: 958, 958, 529: 958}, + {9: 5560, 519: 5630}, + {9: 956, 496: 5527, 5528, 519: 5617, 528: 5526, 530: 5529, 532: 5525, 534: 5530, 5531, 833: 5524, 837: 5523}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5614, 2824, 2825, 2823}, + {954, 954, 9: 954, 73: 954, 485: 954, 488: 954, 494: 954, 954, 954, 954, 503: 954, 954, 506: 954, 954, 510: 954, 954, 513: 954, 515: 954, 954, 519: 954, 526: 954, 954, 954, 954, 954, 532: 954, 534: 954, 954, 954}, // 2920 - {520: 902, 913: 5479, 1104: 5478}, - {520: 5480}, - {520: 901}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5481}, - {907, 907, 9: 907, 50: 907, 475: 907, 477: 907, 483: 907, 907, 907, 907, 493: 907, 907, 496: 907, 907, 499: 907, 907, 907, 504: 907, 907, 509: 907, 516: 907, 907, 907, 907, 907, 522: 907, 524: 907, 907, 907, 823: 5463, 827: 5462}, + {953, 953, 9: 953, 73: 953, 485: 953, 488: 953, 494: 953, 953, 953, 953, 503: 953, 953, 506: 953, 953, 510: 953, 953, 513: 953, 515: 953, 953, 519: 953, 526: 953, 953, 953, 953, 953, 532: 953, 534: 953, 953, 953}, + {949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 488: 949, 492: 949, 494: 949, 949, 949, 949, 501: 5564, 949, 949, 949, 506: 949, 949, 510: 949, 949, 513: 949, 515: 949, 949, 518: 949, 949, 526: 949, 949, 949, 949, 949, 532: 949, 534: 949, 949, 949, 538: 949, 949, 686: 949, 874: 5563}, + {947, 947, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 947, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 947, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 947, 488: 947, 492: 5521, 494: 947, 947, 947, 947, 503: 947, 947, 506: 947, 947, 510: 947, 947, 513: 947, 515: 947, 947, 519: 947, 526: 947, 947, 947, 947, 947, 532: 947, 534: 947, 947, 947, 676: 5520, 2824, 2825, 2823, 931: 5519, 5518}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 488: 2641, 509: 2640, 581: 2639, 593: 5509, 658: 2635, 676: 3996, 2824, 2825, 2823, 723: 5517, 751: 5512, 762: 3956, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 3958, 3957, 812: 5511, 816: 5510, 5516, 866: 5506, 905: 5515}, + {9: 5560, 73: 5561}, // 2925 - {908, 908, 9: 908, 50: 908, 475: 908, 477: 908, 483: 908, 908, 908, 908, 493: 908, 908, 496: 908, 908, 499: 908, 908, 908, 504: 908, 908, 509: 908, 516: 908, 908, 908, 908, 908, 522: 908, 524: 908, 908, 908, 823: 5463, 827: 5462}, - {520: 5484}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5485}, - {475: 5486, 484: 5487, 5466, 5467, 518: 5465, 520: 5468, 522: 5464, 524: 5469, 5470, 823: 5463, 827: 5462}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5491}, + {956, 956, 9: 956, 73: 956, 485: 956, 488: 956, 494: 956, 956, 5527, 5528, 503: 956, 956, 506: 956, 956, 510: 956, 956, 513: 956, 515: 956, 956, 519: 956, 526: 956, 956, 5526, 956, 5529, 532: 5525, 534: 5530, 5531, 833: 5524, 837: 5523}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 947, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 4049, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 492: 5521, 494: 841, 496: 947, 947, 503: 841, 841, 506: 2790, 515: 2791, 2787, 528: 947, 530: 947, 532: 947, 534: 947, 947, 676: 5520, 2824, 2825, 2823, 782: 3966, 3967, 931: 5519, 5518}, + {951, 951, 9: 951, 73: 951, 485: 951, 488: 951, 494: 951, 951, 951, 951, 503: 951, 951, 506: 951, 951, 510: 951, 951, 513: 951, 515: 951, 951, 519: 951, 526: 951, 951, 951, 951, 951, 532: 951, 534: 951, 951, 951}, + {946, 946, 9: 946, 73: 946, 485: 946, 488: 946, 494: 946, 946, 946, 946, 502: 946, 946, 946, 506: 946, 946, 510: 946, 946, 513: 946, 515: 946, 946, 518: 946, 946, 526: 946, 946, 946, 946, 946, 532: 946, 534: 946, 946, 946, 538: 946, 946, 686: 946}, + {945, 945, 9: 945, 73: 945, 485: 945, 488: 945, 494: 945, 945, 945, 945, 502: 945, 945, 945, 506: 945, 945, 510: 945, 945, 513: 945, 515: 945, 945, 518: 945, 945, 526: 945, 945, 945, 945, 945, 532: 945, 534: 945, 945, 945, 538: 945, 945, 686: 945}, // 2930 - {476: 5488}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 5489}, - {9: 4172, 50: 5490}, - {909, 909, 9: 909, 50: 909, 475: 909, 477: 909, 483: 909, 909, 909, 909, 493: 909, 909, 496: 909, 909, 499: 909, 909, 909, 504: 909, 909, 509: 909, 516: 909, 909, 909, 909, 909, 522: 909, 524: 909, 909, 909}, - {910, 910, 9: 910, 50: 910, 475: 910, 477: 910, 483: 910, 910, 910, 910, 493: 910, 910, 496: 910, 910, 499: 910, 910, 910, 504: 910, 910, 509: 910, 3371, 512: 3369, 3370, 3368, 3366, 910, 910, 910, 910, 910, 522: 910, 524: 910, 910, 910, 738: 3367, 3365}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5522, 2824, 2825, 2823}, + {944, 944, 9: 944, 73: 944, 485: 944, 488: 944, 494: 944, 944, 944, 944, 502: 944, 944, 944, 506: 944, 944, 510: 944, 944, 513: 944, 515: 944, 944, 518: 944, 944, 526: 944, 944, 944, 944, 944, 532: 944, 534: 944, 944, 944, 538: 944, 944, 686: 944}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5553}, + {530: 915, 924: 5540, 1116: 5544}, + {496: 5527, 5528, 530: 5537, 833: 5538}, // 2935 - {913, 913, 9: 913, 50: 913, 475: 5493, 477: 913, 483: 913, 5494, 5466, 5467, 493: 913, 913, 496: 913, 913, 499: 913, 913, 913, 504: 913, 913, 509: 913, 516: 913, 913, 5465, 913, 5468, 522: 5464, 524: 5469, 5470, 913, 823: 5463, 827: 5462}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5498}, - {476: 5495}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 5496}, - {9: 4172, 50: 5497}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5534}, + {530: 917, 924: 917}, + {530: 916, 924: 916}, + {2: 913, 913, 913, 913, 913, 913, 913, 10: 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 74: 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 913, 486: 913}, + {530: 5533}, // 2940 - {911, 911, 9: 911, 50: 911, 475: 911, 477: 911, 483: 911, 911, 911, 911, 493: 911, 911, 496: 911, 911, 499: 911, 911, 911, 504: 911, 911, 509: 911, 516: 911, 911, 911, 911, 911, 522: 911, 524: 911, 911, 911}, - {912, 912, 9: 912, 50: 912, 475: 912, 477: 912, 483: 912, 912, 912, 912, 493: 912, 912, 496: 912, 912, 499: 912, 912, 912, 504: 912, 912, 509: 912, 3371, 512: 3369, 3370, 3368, 3366, 912, 912, 912, 912, 912, 522: 912, 524: 912, 912, 912, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 582: 5448, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5455, 856: 5501}, - {937, 937, 9: 937, 50: 937, 475: 937, 477: 937, 483: 937, 937, 937, 937, 493: 937, 937, 496: 937, 937, 499: 937, 937, 937, 504: 937, 937, 509: 937, 516: 937, 937, 937, 937, 937, 522: 937, 524: 937, 937, 937}, - {944, 944, 9: 944, 50: 944, 475: 944, 477: 944, 483: 944, 944, 493: 944, 944, 496: 944, 944, 499: 944, 944, 944, 504: 944, 944, 509: 944, 516: 944, 944, 519: 944}, + {530: 5532}, + {2: 911, 911, 911, 911, 911, 911, 911, 10: 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 74: 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 911, 486: 911}, + {2: 912, 912, 912, 912, 912, 912, 912, 10: 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 74: 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 912, 486: 912}, + {919, 919, 9: 919, 73: 919, 485: 5535, 488: 919, 494: 919, 919, 919, 919, 503: 919, 919, 506: 919, 919, 510: 919, 919, 513: 919, 515: 919, 919, 519: 919, 526: 919, 919, 919, 919, 919, 532: 919, 534: 919, 919, 919, 833: 5524, 837: 5523}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5536}, // 2945 - {934, 934, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 934, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 934, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 934, 477: 934, 481: 5460, 483: 934, 934, 934, 934, 492: 934, 934, 934, 496: 934, 934, 499: 934, 934, 934, 504: 934, 934, 934, 509: 934, 516: 934, 934, 934, 934, 934, 522: 934, 524: 934, 934, 934, 528: 934, 934, 664: 5459, 2785, 2786, 2784, 676: 934, 920: 5458, 5507}, - {476: 5504}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 5505}, - {9: 4781, 50: 5506}, - {935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 935, 481: 935, 483: 935, 935, 935, 935, 492: 935, 935, 935, 496: 935, 935, 935, 935, 935, 935, 504: 935, 935, 935, 509: 935, 516: 935, 935, 935, 935, 935, 522: 935, 524: 935, 935, 935, 528: 935, 935, 566: 935, 572: 935, 649: 935, 652: 935, 663: 935, 676: 935}, + {918, 918, 9: 918, 73: 918, 485: 918, 488: 918, 494: 918, 918, 918, 918, 503: 918, 918, 506: 918, 918, 510: 918, 918, 513: 918, 515: 918, 918, 519: 918, 3420, 522: 3418, 3419, 3417, 3415, 918, 918, 918, 918, 918, 532: 918, 534: 918, 918, 918, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5543}, + {530: 915, 924: 5540, 1116: 5539}, + {530: 5541}, + {530: 914}, // 2950 - {1880, 1880, 9: 1880, 50: 1880, 475: 1880, 477: 1880, 483: 1880, 1880, 1880, 1880, 492: 1880, 1880, 1880, 496: 1880, 1880, 499: 1880, 1880, 1880, 504: 1880, 1880, 1880, 509: 1880, 516: 1880, 1880, 1880, 1880, 1880, 522: 1880, 524: 1880, 1880, 1880, 528: 1880, 1880, 676: 5509, 929: 5508, 1184: 5510}, - {1879, 1879, 9: 1879, 50: 1879, 475: 1879, 477: 1879, 483: 1879, 1879, 1879, 1879, 492: 1879, 1879, 1879, 496: 1879, 1879, 499: 1879, 1879, 1879, 504: 1879, 1879, 1879, 509: 1879, 516: 1879, 1879, 1879, 1879, 1879, 522: 1879, 524: 1879, 1879, 1879, 528: 1879, 1879}, - {226: 5551}, - {915, 915, 9: 915, 50: 915, 475: 915, 477: 915, 483: 915, 915, 915, 915, 492: 5513, 915, 915, 496: 915, 915, 499: 915, 915, 915, 504: 915, 915, 5514, 509: 915, 516: 915, 915, 915, 915, 915, 522: 915, 524: 915, 915, 915, 528: 5512, 915, 945: 5516, 5515, 1069: 5517, 5511}, - {1030, 1030, 9: 1030, 50: 1030, 475: 1030, 477: 1030, 483: 1030, 1030, 1030, 1030, 493: 1030, 1030, 496: 1030, 1030, 499: 1030, 1030, 1030, 504: 1030, 1030, 509: 1030, 516: 1030, 1030, 1030, 1030, 1030, 522: 1030, 524: 1030, 1030, 1030, 529: 5532, 1333: 5533}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5542}, + {920, 920, 9: 920, 73: 920, 485: 920, 488: 920, 494: 920, 920, 920, 920, 503: 920, 920, 506: 920, 920, 510: 920, 920, 513: 920, 515: 920, 920, 519: 920, 526: 920, 920, 920, 920, 920, 532: 920, 534: 920, 920, 920, 833: 5524, 837: 5523}, + {921, 921, 9: 921, 73: 921, 485: 921, 488: 921, 494: 921, 921, 921, 921, 503: 921, 921, 506: 921, 921, 510: 921, 921, 513: 921, 515: 921, 921, 519: 921, 526: 921, 921, 921, 921, 921, 532: 921, 534: 921, 921, 921, 833: 5524, 837: 5523}, + {530: 5545}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5546}, // 2955 - {584: 4436, 652: 4437, 832: 5531}, - {584: 4436, 652: 4437, 832: 5530}, - {584: 4436, 652: 4437, 832: 5529}, - {476: 927, 497: 5519, 1239: 5520}, - {917, 917, 9: 917, 50: 917, 475: 917, 477: 917, 483: 917, 917, 917, 917, 492: 917, 917, 917, 496: 917, 917, 499: 917, 917, 917, 504: 917, 917, 917, 509: 917, 516: 917, 917, 917, 917, 917, 522: 917, 524: 917, 917, 917, 528: 917, 917}, + {485: 5547, 495: 5548, 5527, 5528, 528: 5526, 530: 5529, 532: 5525, 534: 5530, 5531, 833: 5524, 837: 5523}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5552}, + {486: 5549}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 5550}, + {9: 4221, 73: 5551}, // 2960 - {914, 914, 9: 914, 50: 914, 475: 914, 477: 914, 483: 914, 914, 914, 914, 492: 5513, 914, 914, 496: 914, 914, 499: 914, 914, 914, 504: 914, 914, 5514, 509: 914, 516: 914, 914, 914, 914, 914, 522: 914, 524: 914, 914, 914, 528: 5512, 914, 945: 5518, 5515}, - {916, 916, 9: 916, 50: 916, 475: 916, 477: 916, 483: 916, 916, 916, 916, 492: 916, 916, 916, 496: 916, 916, 499: 916, 916, 916, 504: 916, 916, 916, 509: 916, 516: 916, 916, 916, 916, 916, 522: 916, 524: 916, 916, 916, 528: 916, 916}, - {505: 5525, 516: 5526, 520: 5524}, - {476: 5521}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 922, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 922, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 594: 5058, 664: 5057, 2785, 2786, 2784, 861: 5522}, + {922, 922, 9: 922, 73: 922, 485: 922, 488: 922, 494: 922, 922, 922, 922, 503: 922, 922, 506: 922, 922, 510: 922, 922, 513: 922, 515: 922, 922, 519: 922, 526: 922, 922, 922, 922, 922, 532: 922, 534: 922, 922, 922}, + {923, 923, 9: 923, 73: 923, 485: 923, 488: 923, 494: 923, 923, 923, 923, 503: 923, 923, 506: 923, 923, 510: 923, 923, 513: 923, 515: 923, 923, 519: 923, 3420, 522: 3418, 3419, 3417, 3415, 923, 923, 923, 923, 923, 532: 923, 534: 923, 923, 923, 748: 3416, 3414}, + {926, 926, 9: 926, 73: 926, 485: 5554, 488: 926, 494: 926, 5555, 5527, 5528, 503: 926, 926, 506: 926, 926, 510: 926, 926, 513: 926, 515: 926, 926, 519: 926, 526: 926, 926, 5526, 926, 5529, 532: 5525, 534: 5530, 5531, 926, 833: 5524, 837: 5523}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5559}, + {486: 5556}, // 2965 - {9: 5060, 50: 5523}, - {923, 923, 9: 923, 50: 923, 475: 923, 477: 923, 483: 923, 923, 923, 923, 492: 923, 923, 923, 496: 923, 923, 499: 923, 923, 923, 504: 923, 923, 923, 509: 923, 516: 923, 923, 923, 923, 923, 522: 923, 524: 923, 923, 923, 528: 923, 923}, - {476: 926}, - {663: 5528}, - {663: 5527}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 5557}, + {9: 4221, 73: 5558}, + {924, 924, 9: 924, 73: 924, 485: 924, 488: 924, 494: 924, 924, 924, 924, 503: 924, 924, 506: 924, 924, 510: 924, 924, 513: 924, 515: 924, 924, 519: 924, 526: 924, 924, 924, 924, 924, 532: 924, 534: 924, 924, 924}, + {925, 925, 9: 925, 73: 925, 485: 925, 488: 925, 494: 925, 925, 925, 925, 503: 925, 925, 506: 925, 925, 510: 925, 925, 513: 925, 515: 925, 925, 519: 925, 3420, 522: 3418, 3419, 3417, 3415, 925, 925, 925, 925, 925, 532: 925, 534: 925, 925, 925, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 593: 5509, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5516, 866: 5562}, // 2970 - {476: 924}, - {476: 925}, - {476: 928, 497: 928}, - {476: 929, 497: 929}, - {476: 930, 497: 930}, + {950, 950, 9: 950, 73: 950, 485: 950, 488: 950, 494: 950, 950, 950, 950, 503: 950, 950, 506: 950, 950, 510: 950, 950, 513: 950, 515: 950, 950, 519: 950, 526: 950, 950, 950, 950, 950, 532: 950, 534: 950, 950, 950}, + {957, 957, 9: 957, 73: 957, 485: 957, 488: 957, 494: 957, 957, 503: 957, 957, 506: 957, 957, 510: 957, 957, 513: 957, 515: 957, 957, 519: 957, 526: 957, 957, 529: 957}, + {947, 947, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 947, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 947, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 947, 488: 947, 492: 5521, 494: 947, 947, 947, 947, 502: 947, 947, 947, 506: 947, 947, 510: 947, 947, 513: 947, 515: 947, 947, 518: 947, 947, 526: 947, 947, 947, 947, 947, 532: 947, 534: 947, 947, 947, 538: 947, 947, 676: 5520, 2824, 2825, 2823, 686: 947, 931: 5519, 5568}, + {486: 5565}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 5566}, // 2975 - {89: 5537, 316: 5536, 397: 5535, 476: 1027, 1332: 5534}, - {939, 939, 9: 939, 50: 939, 475: 939, 477: 939, 483: 939, 939, 939, 939, 493: 939, 939, 496: 939, 939, 499: 939, 939, 939, 504: 939, 939, 509: 939, 516: 939, 939, 939, 939, 939, 522: 939, 524: 939, 939, 939}, - {476: 5538}, - {476: 1026}, - {476: 1025}, + {9: 4840, 73: 5567}, + {948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 488: 948, 492: 948, 494: 948, 948, 948, 948, 502: 948, 948, 948, 506: 948, 948, 509: 948, 948, 948, 513: 948, 515: 948, 948, 518: 948, 948, 526: 948, 948, 948, 948, 948, 532: 948, 534: 948, 948, 948, 538: 948, 948, 576: 948, 581: 948, 658: 948, 661: 948, 673: 948, 686: 948}, + {1903, 1903, 9: 1903, 73: 1903, 485: 1903, 488: 1903, 494: 1903, 1903, 1903, 1903, 502: 1903, 1903, 1903, 506: 1903, 1903, 510: 1903, 1903, 513: 1903, 515: 1903, 1903, 518: 1903, 1903, 526: 1903, 1903, 1903, 1903, 1903, 532: 1903, 534: 1903, 1903, 1903, 538: 1903, 1903, 686: 5570, 940: 5569, 1198: 5571}, + {1902, 1902, 9: 1902, 73: 1902, 485: 1902, 488: 1902, 494: 1902, 1902, 1902, 1902, 502: 1902, 1902, 1902, 506: 1902, 1902, 510: 1902, 1902, 513: 1902, 515: 1902, 1902, 518: 1902, 1902, 526: 1902, 1902, 1902, 1902, 1902, 532: 1902, 534: 1902, 1902, 1902, 538: 1902, 1902}, + {234: 5612}, // 2980 - {476: 1024}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 5540, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5539}, - {50: 1023, 374: 5548, 510: 3371, 512: 3369, 3370, 3368, 3366, 527: 5547, 738: 3367, 3365, 1334: 5546}, - {1020, 1020, 9: 1020, 50: 1020, 222: 5542, 475: 1020, 477: 1020, 483: 1020, 1020, 1020, 1020, 493: 1020, 1020, 496: 1020, 1020, 499: 1020, 1020, 1020, 504: 1020, 1020, 509: 1020, 516: 1020, 1020, 1020, 1020, 1020, 522: 1020, 524: 1020, 1020, 1020, 1123: 5541}, - {1028, 1028, 9: 1028, 50: 1028, 475: 1028, 477: 1028, 483: 1028, 1028, 1028, 1028, 493: 1028, 1028, 496: 1028, 1028, 499: 1028, 1028, 1028, 504: 1028, 1028, 509: 1028, 516: 1028, 1028, 1028, 1028, 1028, 522: 1028, 524: 1028, 1028, 1028}, + {928, 928, 9: 928, 73: 928, 485: 928, 488: 928, 494: 928, 928, 928, 928, 502: 5574, 928, 928, 506: 928, 928, 510: 928, 928, 513: 928, 515: 928, 928, 518: 5575, 928, 526: 928, 928, 928, 928, 928, 532: 928, 534: 928, 928, 928, 538: 5573, 928, 956: 5577, 5576, 1081: 5578, 5572}, + {1043, 1043, 9: 1043, 73: 1043, 485: 1043, 488: 1043, 494: 1043, 1043, 1043, 1043, 503: 1043, 1043, 506: 1043, 1043, 510: 1043, 1043, 513: 1043, 515: 1043, 1043, 519: 1043, 526: 1043, 1043, 1043, 1043, 1043, 532: 1043, 534: 1043, 1043, 1043, 539: 5593, 1346: 5594}, + {594: 4495, 661: 4496, 842: 5592}, + {594: 4495, 661: 4496, 842: 5591}, + {594: 4495, 661: 4496, 842: 5590}, // 2985 - {476: 5543}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5544}, - {50: 5545, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {1019, 1019, 9: 1019, 50: 1019, 475: 1019, 477: 1019, 483: 1019, 1019, 1019, 1019, 493: 1019, 1019, 496: 1019, 1019, 499: 1019, 1019, 1019, 504: 1019, 1019, 509: 1019, 516: 1019, 1019, 1019, 1019, 1019, 522: 1019, 524: 1019, 1019, 1019}, - {50: 5549}, + {486: 940, 507: 5580, 1252: 5581}, + {930, 930, 9: 930, 73: 930, 485: 930, 488: 930, 494: 930, 930, 930, 930, 502: 930, 930, 930, 506: 930, 930, 510: 930, 930, 513: 930, 515: 930, 930, 518: 930, 930, 526: 930, 930, 930, 930, 930, 532: 930, 534: 930, 930, 930, 538: 930, 930}, + {927, 927, 9: 927, 73: 927, 485: 927, 488: 927, 494: 927, 927, 927, 927, 502: 5574, 927, 927, 506: 927, 927, 510: 927, 927, 513: 927, 515: 927, 927, 518: 5575, 927, 526: 927, 927, 927, 927, 927, 532: 927, 534: 927, 927, 927, 538: 5573, 927, 956: 5579, 5576}, + {929, 929, 9: 929, 73: 929, 485: 929, 488: 929, 494: 929, 929, 929, 929, 502: 929, 929, 929, 506: 929, 929, 510: 929, 929, 513: 929, 515: 929, 929, 518: 929, 929, 526: 929, 929, 929, 929, 929, 532: 929, 534: 929, 929, 929, 538: 929, 929}, + {516: 5586, 526: 5587, 530: 5585}, // 2990 - {50: 1022}, - {50: 1021}, - {1020, 1020, 9: 1020, 50: 1020, 222: 5542, 475: 1020, 477: 1020, 483: 1020, 1020, 1020, 1020, 493: 1020, 1020, 496: 1020, 1020, 499: 1020, 1020, 1020, 504: 1020, 1020, 509: 1020, 516: 1020, 1020, 1020, 1020, 1020, 522: 1020, 524: 1020, 1020, 1020, 1123: 5550}, - {1029, 1029, 9: 1029, 50: 1029, 475: 1029, 477: 1029, 483: 1029, 1029, 1029, 1029, 493: 1029, 1029, 496: 1029, 1029, 499: 1029, 1029, 1029, 504: 1029, 1029, 509: 1029, 516: 1029, 1029, 1029, 1029, 1029, 522: 1029, 524: 1029, 1029, 1029}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5552}, + {486: 5582}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 935, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 935, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 605: 5117, 676: 5116, 2824, 2825, 2823, 871: 5583}, + {9: 5119, 73: 5584}, + {936, 936, 9: 936, 73: 936, 485: 936, 488: 936, 494: 936, 936, 936, 936, 502: 936, 936, 936, 506: 936, 936, 510: 936, 936, 513: 936, 515: 936, 936, 518: 936, 936, 526: 936, 936, 936, 936, 936, 532: 936, 534: 936, 936, 936, 538: 936, 936}, + {486: 939}, // 2995 - {1878, 1878, 9: 1878, 50: 1878, 475: 1878, 477: 1878, 483: 1878, 1878, 1878, 1878, 492: 1878, 1878, 1878, 496: 1878, 1878, 499: 1878, 1878, 1878, 504: 1878, 1878, 1878, 509: 1878, 3371, 512: 3369, 3370, 3368, 3366, 1878, 1878, 1878, 1878, 1878, 522: 1878, 524: 1878, 1878, 1878, 528: 1878, 1878, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5554}, - {485: 5466, 5467, 518: 5465, 520: 5468, 522: 5464, 524: 5469, 5470, 5555, 823: 5463, 827: 5462}, - {942, 942, 9: 942, 50: 942, 475: 942, 477: 942, 483: 942, 942, 493: 942, 942, 496: 942, 942, 499: 942, 942, 942, 504: 942, 942, 509: 942, 516: 942, 942, 519: 942}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 5557, 896: 5558, 930: 5559}, + {673: 5589}, + {673: 5588}, + {486: 937}, + {486: 938}, + {486: 941, 507: 941}, // 3000 - {502: 5567}, - {2372, 2372, 9: 2372, 484: 2372, 496: 2372, 501: 2372, 505: 2372}, - {257, 257, 9: 5560, 484: 257, 496: 257, 501: 2745, 505: 257, 795: 2746, 5561}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 5557, 896: 5566}, - {1311, 1311, 484: 1311, 496: 1311, 505: 2748, 772: 2749, 817: 5562}, + {486: 942, 507: 942}, + {486: 943, 507: 943}, + {91: 5598, 326: 5597, 407: 5596, 486: 1040, 1345: 5595}, + {952, 952, 9: 952, 73: 952, 485: 952, 488: 952, 494: 952, 952, 952, 952, 503: 952, 952, 506: 952, 952, 510: 952, 952, 513: 952, 515: 952, 952, 519: 952, 526: 952, 952, 952, 952, 952, 532: 952, 534: 952, 952, 952}, + {486: 5599}, // 3005 - {897, 897, 484: 897, 496: 5563, 1078: 5564}, - {511: 2759, 580: 2761, 737: 2758, 745: 2760, 886: 5565}, - {261, 261, 484: 261}, - {896, 896, 484: 896}, - {2371, 2371, 9: 2371, 484: 2371, 496: 2371, 501: 2371, 505: 2371}, + {486: 1039}, + {486: 1038}, + {486: 1037}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 5601, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5600}, + {73: 1036, 383: 5609, 520: 3420, 522: 3418, 3419, 3417, 3415, 537: 5608, 748: 3416, 3414, 1347: 5607}, // 3010 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5568}, - {2373, 2373, 9: 2373, 484: 2373, 496: 2373, 501: 2373, 505: 2373}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 5557, 896: 5558, 930: 5570}, - {257, 257, 9: 5560, 484: 257, 501: 2745, 795: 2746, 5571}, - {260, 260, 484: 260}, + {1033, 1033, 9: 1033, 73: 1033, 229: 5603, 485: 1033, 488: 1033, 494: 1033, 1033, 1033, 1033, 503: 1033, 1033, 506: 1033, 1033, 510: 1033, 1033, 513: 1033, 515: 1033, 1033, 519: 1033, 526: 1033, 1033, 1033, 1033, 1033, 532: 1033, 534: 1033, 1033, 1033, 1135: 5602}, + {1041, 1041, 9: 1041, 73: 1041, 485: 1041, 488: 1041, 494: 1041, 1041, 1041, 1041, 503: 1041, 1041, 506: 1041, 1041, 510: 1041, 1041, 513: 1041, 515: 1041, 1041, 519: 1041, 526: 1041, 1041, 1041, 1041, 1041, 532: 1041, 534: 1041, 1041, 1041}, + {486: 5604}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5605}, + {73: 5606, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, // 3015 - {2: 400, 400, 400, 400, 400, 400, 400, 10: 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 51: 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5574}, - {399, 399}, - {22: 5587, 126: 5577, 5580, 148: 588, 192: 5579, 200: 5590, 211: 5588, 225: 5581, 238: 5585, 260: 5589, 263: 5582, 533: 5586, 572: 5576, 1156: 5584, 1228: 5578, 1257: 5583}, - {2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 10: 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 51: 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 2066, 477: 2066, 567: 2066}, + {1032, 1032, 9: 1032, 73: 1032, 485: 1032, 488: 1032, 494: 1032, 1032, 1032, 1032, 503: 1032, 1032, 506: 1032, 1032, 510: 1032, 1032, 513: 1032, 515: 1032, 1032, 519: 1032, 526: 1032, 1032, 1032, 1032, 1032, 532: 1032, 534: 1032, 1032, 1032}, + {73: 5610}, + {73: 1035}, + {73: 1034}, + {1033, 1033, 9: 1033, 73: 1033, 229: 5603, 485: 1033, 488: 1033, 494: 1033, 1033, 1033, 1033, 503: 1033, 1033, 506: 1033, 1033, 510: 1033, 1033, 513: 1033, 515: 1033, 1033, 519: 1033, 526: 1033, 1033, 1033, 1033, 1033, 532: 1033, 534: 1033, 1033, 1033, 1135: 5611}, // 3020 - {2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 10: 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 51: 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 2065, 477: 2065, 567: 2065}, - {598, 598}, - {595, 595}, - {594, 594}, - {218: 5597}, + {1042, 1042, 9: 1042, 73: 1042, 485: 1042, 488: 1042, 494: 1042, 1042, 1042, 1042, 503: 1042, 1042, 506: 1042, 1042, 510: 1042, 1042, 513: 1042, 515: 1042, 1042, 519: 1042, 526: 1042, 1042, 1042, 1042, 1042, 532: 1042, 534: 1042, 1042, 1042}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5613}, + {1901, 1901, 9: 1901, 73: 1901, 485: 1901, 488: 1901, 494: 1901, 1901, 1901, 1901, 502: 1901, 1901, 1901, 506: 1901, 1901, 510: 1901, 1901, 513: 1901, 515: 1901, 1901, 518: 1901, 1901, 3420, 522: 3418, 3419, 3417, 3415, 1901, 1901, 1901, 1901, 1901, 532: 1901, 534: 1901, 1901, 1901, 538: 1901, 1901, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5615}, + {496: 5527, 5528, 528: 5526, 530: 5529, 532: 5525, 534: 5530, 5531, 5616, 833: 5524, 837: 5523}, // 3025 - {592, 592}, - {148: 5596}, - {579, 579, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 477: 579, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 4329, 1155: 5591}, - {589, 589}, - {148: 587}, + {955, 955, 9: 955, 73: 955, 485: 955, 488: 955, 494: 955, 955, 503: 955, 955, 506: 955, 955, 510: 955, 955, 513: 955, 515: 955, 955, 519: 955, 526: 955, 955, 529: 955}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 5618, 907: 5619, 941: 5620}, + {512: 5628}, + {2397, 2397, 9: 2397, 495: 2397, 506: 2397, 513: 2397, 516: 2397}, + {266, 266, 9: 5621, 495: 266, 506: 266, 513: 2784, 516: 266, 806: 2785, 5622}, // 3030 - {148: 586}, - {148: 585}, - {148: 584}, - {148: 583}, - {575, 575, 477: 5593, 1361: 5592}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 5618, 907: 5627}, + {1324, 1324, 495: 1324, 506: 1324, 516: 2787, 782: 2788, 828: 5623}, + {910, 910, 495: 910, 506: 5624, 1090: 5625}, + {521: 2798, 590: 2800, 747: 2797, 755: 2799, 898: 5626}, + {270, 270, 495: 270}, // 3035 - {590, 590}, - {674: 5594}, - {500: 5595}, - {574, 574}, - {591, 591}, + {909, 909, 495: 909}, + {2396, 2396, 9: 2396, 495: 2396, 506: 2396, 513: 2396, 516: 2396}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5629}, + {2398, 2398, 9: 2398, 495: 2398, 506: 2398, 513: 2398, 516: 2398}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 5618, 907: 5619, 941: 5631}, // 3040 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5598, 2785, 2786, 2784, 960: 5599}, - {597, 597, 9: 597}, - {593, 593, 9: 5600}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5601, 2785, 2786, 2784}, - {596, 596, 9: 596}, + {266, 266, 9: 5621, 495: 266, 513: 2784, 806: 2785, 5632}, + {269, 269, 495: 269}, + {2: 409, 409, 409, 409, 409, 409, 409, 10: 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 74: 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5635}, + {408, 408}, // 3045 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 5705, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 5706, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 5707, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5708}, - {572: 5691, 652: 5692}, - {652: 5688}, - {572: 5683, 652: 5682}, - {572: 5680}, + {22: 5648, 132: 5638, 134: 5641, 155: 601, 200: 5640, 208: 5651, 219: 5649, 233: 5642, 247: 5646, 269: 5650, 272: 5643, 543: 5647, 581: 5637, 1170: 5645, 1241: 5639, 1270: 5644}, + {2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 10: 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 74: 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 2090, 488: 2090, 577: 2090}, + {2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 10: 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 74: 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 2089, 488: 2089, 577: 2089}, + {611, 611}, + {608, 608}, // 3050 - {334: 5674}, - {144: 5671, 223: 5673, 344: 5669, 369: 5670, 919: 5672}, - {207: 5666, 210: 5665}, - {572: 5624}, - {144: 5618, 164: 5620, 174: 607, 199: 5622, 265: 5621, 1319: 5619}, + {607, 607}, + {225: 5658}, + {605, 605}, + {155: 5657}, + {592, 592, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 488: 592, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 4388, 1169: 5652}, // 3055 - {144: 5617}, - {144: 5616}, - {400: 5615}, - {712, 712}, - {717, 717}, + {602, 602}, + {155: 600}, + {155: 599}, + {155: 598}, + {155: 597}, // 3060 - {718, 718}, - {719, 719}, - {174: 5623}, - {174: 606}, - {174: 605}, + {155: 596}, + {588, 588, 488: 5654, 1374: 5653}, + {603, 603}, + {684: 5655}, + {511: 5656}, // 3065 - {174: 604}, - {711, 711}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5625}, - {677: 5626, 936: 5627}, - {164: 5630, 169: 5629, 572: 2081, 955: 5628}, + {587, 587}, + {604, 604}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5659, 2824, 2825, 2823, 970: 5660}, + {610, 610, 9: 610}, + {606, 606, 9: 5661}, // 3070 - {720, 720}, - {572: 5632}, - {126: 2080, 572: 2080}, - {169: 5631}, - {126: 2079, 572: 2079}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5662, 2824, 2825, 2823}, + {609, 609, 9: 609}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 5766, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 5767, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 5768, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5769}, + {581: 5752, 661: 5753}, + {661: 5749}, // 3075 - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 5633}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5634}, - {446, 446, 6: 446, 446, 446, 15: 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 446, 475: 446, 5638, 446, 481: 446, 446, 446, 487: 446, 491: 446, 446, 498: 446, 506: 446, 446, 446, 521: 5637, 572: 446, 649: 446, 446, 652: 446, 1252: 5636, 1329: 5635}, - {406, 406, 6: 4267, 4269, 410, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 475: 406, 406, 406, 481: 406, 4266, 4303, 487: 2193, 491: 406, 406, 498: 406, 506: 5013, 406, 2193, 572: 406, 649: 406, 2193, 652: 4272, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 4305, 924: 5653, 1022: 5652}, - {2196, 2196, 475: 5646, 1094: 5645}, + {581: 5744, 661: 5743}, + {581: 5741}, + {343: 5735}, + {151: 5732, 231: 5734, 353: 5730, 378: 5731, 930: 5733}, + {215: 5727, 218: 5726}, // 3080 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5644}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 521: 5639, 584: 2426, 593: 2426, 2426, 645: 2426, 4615, 652: 2426, 664: 4169, 2785, 2786, 2784, 678: 2426, 2426, 748: 4482, 837: 4856, 853: 4988, 908: 4989, 973: 4990, 1153: 5640}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5642}, - {9: 4992, 50: 5641}, - {445, 445, 6: 445, 445, 445, 15: 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 475: 445, 445, 445, 481: 445, 445, 445, 487: 445, 491: 445, 445, 498: 445, 506: 445, 445, 445, 572: 445, 649: 445, 445, 652: 445}, + {581: 5685}, + {151: 5679, 171: 5681, 181: 620, 207: 5683, 274: 5682, 1332: 5680}, + {151: 5678}, + {151: 5677}, + {410: 5676}, // 3085 - {50: 5643}, - {2114, 2114, 475: 2114}, - {2115, 2115, 475: 2115}, - {2197, 2197}, - {150: 5647}, + {725, 725}, + {730, 730}, + {731, 731}, + {732, 732}, + {181: 5684}, // 3090 - {376: 5649, 743: 5648}, - {527: 5651}, - {527: 5650}, - {2194, 2194}, - {2195, 2195}, + {181: 619}, + {181: 618}, + {181: 617}, + {724, 724}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5686}, // 3095 - {2191, 2191, 475: 2191, 2191, 2191, 481: 2191, 491: 5655, 2191, 498: 2191, 507: 2191, 572: 2191, 649: 2191, 1108: 5654}, - {405, 405, 6: 4267, 4269, 410, 5015, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 475: 405, 405, 405, 481: 405, 4266, 4303, 487: 2193, 491: 405, 405, 498: 405, 506: 5013, 405, 2193, 572: 405, 649: 405, 2193, 652: 4272, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 5014}, - {2129, 2129, 475: 2129, 2129, 2129, 481: 2129, 492: 5242, 498: 2129, 507: 5243, 572: 2129, 649: 2129, 1042: 5656}, - {663: 5071}, - {2126, 2126, 475: 2126, 2126, 2126, 481: 5658, 498: 2126, 572: 2126, 649: 2126, 1185: 5657}, + {687: 5687, 947: 5688}, + {171: 5691, 176: 5690, 581: 2105, 966: 5689}, + {733, 733}, + {581: 5693}, + {132: 2104, 581: 2104}, // 3100 - {2124, 2124, 475: 2124, 2608, 2607, 498: 2606, 572: 2605, 649: 2601, 713: 5663, 752: 5661, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 5662, 5660, 1208: 5659}, - {2125, 2125, 475: 2125, 2125, 2125, 498: 2125, 572: 2125, 649: 2125}, - {2196, 2196, 475: 5646, 1094: 5664}, - {2123, 2123, 475: 2123}, - {2122, 2122, 475: 2122, 483: 829, 493: 829, 829}, + {176: 5692}, + {132: 2103, 581: 2103}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 5694}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5695}, + {457, 457, 6: 457, 457, 457, 15: 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 485: 457, 5699, 488: 457, 490: 457, 492: 457, 457, 457, 501: 457, 457, 508: 457, 457, 517: 457, 457, 531: 5698, 581: 457, 658: 457, 660: 457, 457, 1265: 5697, 1342: 5696}, // 3105 - {2121, 2121, 475: 2121}, - {2120, 2120, 475: 2120, 483: 828, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {2198, 2198}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5598, 2785, 2786, 2784, 960: 5668}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5598, 2785, 2786, 2784, 960: 5667}, + {415, 415, 6: 4316, 4318, 419, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 485: 415, 415, 488: 415, 490: 4315, 492: 415, 2217, 4352, 501: 415, 415, 508: 2217, 415, 517: 415, 5072, 581: 415, 658: 415, 660: 2217, 4321, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 4356, 935: 5714, 1034: 5713}, + {2220, 2220, 485: 5707, 1106: 5706}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5705}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 531: 5700, 594: 2451, 604: 2451, 2451, 655: 2451, 4674, 661: 2451, 676: 4218, 2824, 2825, 2823, 688: 2451, 2451, 758: 4541, 847: 4915, 863: 5047, 919: 5048, 983: 5049, 1167: 5701}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5703}, // 3110 - {722, 722, 9: 5600}, - {723, 723, 9: 5600}, - {725, 725}, - {724, 724}, - {716, 716}, + {9: 5051, 73: 5702}, + {456, 456, 6: 456, 456, 456, 15: 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 485: 456, 456, 488: 456, 490: 456, 492: 456, 456, 456, 501: 456, 456, 508: 456, 456, 517: 456, 456, 581: 456, 658: 456, 660: 456, 456}, + {73: 5704}, + {2138, 2138, 485: 2138}, + {2139, 2139, 485: 2139}, // 3115 - {715, 715}, - {714, 714}, - {269: 5675}, - {511: 2759, 737: 4079, 767: 5677, 1090: 5676}, - {729, 729, 9: 5678}, + {2221, 2221}, + {157: 5708}, + {385: 5710, 753: 5709}, + {537: 5712}, + {537: 5711}, // 3120 - {703, 703, 9: 703}, - {511: 2759, 737: 4079, 767: 5679}, - {702, 702, 9: 702}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 5681}, - {730, 730, 9: 3950}, + {2218, 2218}, + {2219, 2219}, + {2215, 2215, 485: 2215, 2215, 488: 2215, 492: 2215, 501: 5716, 2215, 509: 2215, 517: 2215, 581: 2215, 658: 2215, 1120: 5715}, + {414, 414, 6: 4316, 4318, 419, 5074, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 485: 414, 414, 488: 414, 490: 4315, 492: 414, 2217, 4352, 501: 414, 414, 508: 2217, 414, 517: 414, 5072, 581: 414, 658: 414, 660: 2217, 4321, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 5073}, + {2153, 2153, 485: 2153, 2153, 488: 2153, 492: 2153, 502: 5303, 509: 2153, 517: 5304, 581: 2153, 658: 2153, 1054: 5717}, // 3125 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5686}, - {500: 5684}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 5685}, - {721, 721, 9: 3950}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5687, 2785, 2786, 2784}, + {673: 5130}, + {2150, 2150, 485: 2150, 2150, 488: 2150, 492: 5719, 509: 2150, 581: 2150, 658: 2150, 1199: 5718}, + {2148, 2148, 485: 2148, 2642, 488: 2641, 509: 2640, 581: 2639, 658: 2635, 723: 5724, 762: 5722, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 5723, 5721, 1221: 5720}, + {2149, 2149, 485: 2149, 2149, 488: 2149, 509: 2149, 581: 2149, 658: 2149}, + {2220, 2220, 485: 5707, 1106: 5725}, // 3130 - {732, 732}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5689}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5690, 2785, 2786, 2784}, - {733, 733}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 5704}, + {2147, 2147, 485: 2147}, + {2146, 2146, 485: 2146, 494: 842, 503: 842, 842}, + {2145, 2145, 485: 2145}, + {2144, 2144, 485: 2144, 494: 841, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {2222, 2222}, // 3135 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5693}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5694, 2785, 2786, 2784}, - {734, 734, 476: 5697, 1064: 5696, 1233: 5695}, - {731, 731, 9: 5702}, - {706, 706, 9: 706}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5659, 2824, 2825, 2823, 970: 5729}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5659, 2824, 2825, 2823, 970: 5728}, + {735, 735, 9: 5661}, + {736, 736, 9: 5661}, + {738, 738}, // 3140 - {511: 2759, 737: 4079, 767: 5698}, - {9: 5699}, - {511: 2759, 737: 4079, 767: 5700}, - {50: 5701}, - {704, 704, 9: 704}, + {737, 737}, + {729, 729}, + {728, 728}, + {727, 727}, + {278: 5736}, // 3145 - {476: 5697, 1064: 5703}, - {705, 705, 9: 705}, - {735, 735, 9: 3950}, - {165: 1656, 380: 5725, 404: 5726, 655: 1656, 1175: 5724}, - {739, 739, 165: 1495, 268: 5711, 5710, 655: 1495}, + {521: 2798, 747: 4128, 777: 5738, 1102: 5737}, + {742, 742, 9: 5739}, + {716, 716, 9: 716}, + {521: 2798, 747: 4128, 777: 5740}, + {715, 715, 9: 715}, // 3150 - {713, 713, 165: 1474, 655: 1474}, - {165: 5709}, - {736, 736}, - {257, 257, 501: 2745, 511: 2759, 737: 4079, 767: 5722, 795: 2746, 5721}, - {379: 5712}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 5742}, + {743, 743, 9: 3999}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5747}, + {511: 5745}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 5746}, // 3155 - {496: 5713, 511: 2759, 737: 4079, 767: 5677, 1090: 5714, 1176: 5715}, - {511: 2759, 737: 2758, 745: 5716}, - {728, 728, 9: 5678}, - {727, 727}, - {742, 742, 9: 5717, 166: 5718}, + {734, 734, 9: 3999}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5748, 2824, 2825, 2823}, + {745, 745}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5750}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5751, 2824, 2825, 2823}, // 3160 - {511: 2759, 737: 2758, 745: 5720}, - {511: 2759, 737: 2758, 745: 5719}, - {740, 740}, - {741, 741}, - {738, 738}, + {746, 746}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 5765}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5754}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5755, 2824, 2825, 2823}, + {747, 747, 486: 5758, 1076: 5757, 1246: 5756}, // 3165 - {257, 257, 501: 2745, 795: 2746, 5723}, - {737, 737}, - {726, 726}, - {511: 2759, 737: 5732}, - {354: 5728, 511: 2759, 654: 5729, 737: 5727}, + {744, 744, 9: 5763}, + {719, 719, 9: 719}, + {521: 2798, 747: 4128, 777: 5759}, + {9: 5760}, + {521: 2798, 747: 4128, 777: 5761}, // 3170 - {709, 709}, - {511: 2759, 737: 5731}, - {511: 2759, 737: 5730}, - {707, 707}, - {708, 708}, + {73: 5762}, + {717, 717, 9: 717}, + {486: 5758, 1076: 5764}, + {718, 718, 9: 718}, + {748, 748, 9: 3999}, // 3175 - {710, 710}, - {2: 279, 279, 279, 279, 279, 279, 279, 10: 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 51: 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 478: 279, 482: 279, 502: 1820, 533: 279, 655: 1820, 662: 1820}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5884, 502: 1818, 655: 1818, 662: 1818, 664: 5883, 2785, 2786, 2784}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 5881, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 502: 1781, 655: 1781, 662: 1781, 664: 5746, 2785, 2786, 2784, 835: 5789}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 502: 1775, 655: 1775, 662: 1775, 664: 5746, 2785, 2786, 2784, 835: 5878}, + {172: 1678, 389: 5786, 414: 5787, 665: 1678, 1189: 5785}, + {752, 752, 172: 1513, 277: 5772, 5771, 665: 1513}, + {726, 726, 172: 1492, 665: 1492}, + {172: 5770}, + {749, 749}, // 3180 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 482: 5874, 502: 1773, 533: 3787, 655: 1773, 662: 1773, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 5873}, - {497: 5863, 502: 5862, 655: 1768, 662: 1768}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 5770, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 482: 5859, 502: 1759, 654: 5857, 1759, 662: 1759, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5777, 5775, 866: 5773, 1134: 5858, 1303: 5856}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 5854, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 502: 1757, 655: 1757, 662: 1757, 664: 5746, 2785, 2786, 2784, 835: 5786}, - {184: 5839, 502: 1740, 655: 1740, 662: 1740, 674: 5840, 926: 5838, 976: 5837}, + {266, 266, 513: 2784, 521: 2798, 747: 4128, 777: 5783, 806: 2785, 5782}, + {388: 5773}, + {506: 5774, 521: 2798, 747: 4128, 777: 5738, 1102: 5775, 1190: 5776}, + {521: 2798, 747: 2797, 755: 5777}, + {741, 741, 9: 5739}, // 3185 - {336: 5794, 338: 5793, 502: 1684, 655: 1684, 662: 1684, 1190: 5795}, - {478: 5792, 502: 1484, 655: 1484, 662: 1484}, - {821, 821, 9: 5782}, - {176: 5768}, - {502: 789, 655: 5766, 662: 789}, + {740, 740}, + {755, 755, 9: 5778, 173: 5779}, + {521: 2798, 747: 2797, 755: 5781}, + {521: 2798, 747: 2797, 755: 5780}, + {753, 753}, // 3190 - {502: 5755, 662: 5756, 828: 5764}, - {502: 5755, 662: 5756, 828: 5759}, - {502: 5755, 662: 5756, 828: 5757}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 482: 5754, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 5753, 1195: 5752}, - {767, 767, 9: 767}, + {754, 754}, + {751, 751}, + {266, 266, 513: 2784, 806: 2785, 5784}, + {750, 750}, + {739, 739}, // 3195 - {774, 774, 9: 774}, - {773, 773, 9: 773}, - {772, 772, 9: 772}, - {2: 791, 791, 791, 791, 791, 791, 791, 10: 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 51: 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 478: 791, 791, 791, 482: 791, 485: 791, 791, 488: 791, 791, 791, 495: 791, 498: 791, 507: 791, 791, 511: 791, 533: 791, 567: 791, 570: 791, 791, 573: 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 585: 791, 791, 791, 791, 791, 791, 791, 791, 595: 791, 791, 598: 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 651: 791}, - {2: 790, 790, 790, 790, 790, 790, 790, 10: 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 51: 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 478: 790, 790, 790, 482: 790, 485: 790, 790, 488: 790, 790, 790, 495: 790, 498: 790, 507: 790, 790, 511: 790, 533: 790, 567: 790, 570: 790, 790, 573: 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 585: 790, 790, 790, 790, 790, 790, 790, 790, 595: 790, 790, 598: 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 790, 651: 790}, + {521: 2798, 747: 5793}, + {362: 5789, 521: 2798, 664: 5790, 747: 5788}, + {722, 722}, + {521: 2798, 747: 5792}, + {521: 2798, 747: 5791}, // 3200 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5758}, - {779, 779, 9: 779, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5763}, - {793, 793, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 793, 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3892, 3279, 3360, 3278, 3275}, - {794, 794, 9: 794}, + {720, 720}, + {721, 721}, + {723, 723}, + {2: 288, 288, 288, 288, 288, 288, 288, 10: 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 74: 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 487: 288, 490: 288, 512: 1843, 543: 288, 665: 1843, 672: 1843}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5945, 512: 1841, 665: 1841, 672: 1841, 676: 5944, 2824, 2825, 2823}, // 3205 - {792, 792, 9: 792}, - {780, 780, 9: 780}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5765}, - {784, 784, 9: 784}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5767, 2785, 2786, 2784}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 5942, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 512: 1804, 665: 1804, 672: 1804, 676: 5807, 2824, 2825, 2823, 845: 5850}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 512: 1798, 665: 1798, 672: 1798, 676: 5807, 2824, 2825, 2823, 845: 5939}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 490: 5935, 512: 1796, 543: 3836, 665: 1796, 672: 1796, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 5934}, + {507: 5924, 512: 5923, 665: 1791, 672: 1791}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 5831, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 490: 5920, 512: 1781, 664: 5918, 1781, 672: 1781, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5838, 5836, 877: 5834, 1148: 5919, 1316: 5917}, // 3210 - {502: 788, 662: 788}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 5770, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 654: 5772, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5777, 5775, 866: 5773, 1134: 5771}, - {751, 751, 9: 751, 571: 1849, 653: 751, 670: 1849}, - {810, 810, 571: 1679, 653: 810, 670: 1679}, - {653: 5780}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 5915, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 512: 1779, 665: 1779, 672: 1779, 676: 5807, 2824, 2825, 2823, 845: 5847}, + {191: 5900, 512: 1762, 665: 1762, 672: 1762, 684: 5901, 937: 5899, 986: 5898}, + {345: 5855, 347: 5854, 512: 1706, 665: 1706, 672: 1706, 1204: 5856}, + {487: 5853, 512: 1502, 665: 1502, 672: 1502}, + {834, 834, 9: 5843}, // 3215 - {653: 809}, - {808, 808, 9: 5778, 653: 808}, - {752, 752, 9: 752, 571: 268, 653: 752, 670: 268}, - {746, 746, 9: 746, 653: 746}, - {745, 745, 9: 745, 653: 745}, + {183: 5829}, + {512: 802, 665: 5827, 672: 802}, + {512: 5816, 672: 5817, 838: 5825}, + {512: 5816, 672: 5817, 838: 5820}, + {512: 5816, 672: 5817, 838: 5818}, // 3220 - {744, 744, 9: 744, 653: 744}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5779, 5775}, - {743, 743, 9: 743, 653: 743}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5334, 872: 5781}, - {811, 811, 9: 5336}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 490: 5815, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 5814, 1209: 5813}, + {780, 780, 9: 780}, + {787, 787, 9: 787}, + {786, 786, 9: 786}, + {785, 785, 9: 785}, // 3225 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 5733, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 5736, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 5783, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 5784, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 5737, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 508: 3863, 571: 5749, 590: 5748, 650: 3861, 664: 5746, 2785, 2786, 2784, 779: 5750, 835: 5747, 983: 5785}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 502: 1781, 655: 1781, 662: 1781, 664: 5746, 2785, 2786, 2784, 835: 5789}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 502: 1757, 655: 1757, 662: 1757, 664: 5746, 2785, 2786, 2784, 835: 5786}, - {766, 766, 9: 766}, - {502: 5755, 662: 5756, 828: 5787}, + {2: 804, 804, 804, 804, 804, 804, 804, 10: 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 74: 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 489: 804, 804, 804, 496: 804, 804, 804, 804, 804, 505: 804, 508: 804, 804, 517: 804, 521: 804, 543: 804, 577: 804, 580: 804, 582: 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 595: 804, 804, 804, 804, 804, 804, 804, 804, 804, 606: 804, 608: 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 662: 804}, + {2: 803, 803, 803, 803, 803, 803, 803, 10: 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 74: 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 489: 803, 803, 803, 496: 803, 803, 803, 803, 803, 505: 803, 508: 803, 803, 517: 803, 521: 803, 543: 803, 577: 803, 580: 803, 582: 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 595: 803, 803, 803, 803, 803, 803, 803, 803, 803, 606: 803, 608: 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, 662: 803}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 5819}, + {792, 792, 9: 792, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5824}, // 3230 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5788}, - {782, 782, 9: 782}, - {502: 5755, 662: 5756, 828: 5790}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5791}, - {783, 783, 9: 783}, + {806, 806, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 806, 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3941, 3328, 3409, 3327, 3324}, + {807, 807, 9: 807}, + {805, 805, 9: 805}, + {793, 793, 9: 793}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5826}, // 3235 - {813, 813}, - {497: 2233}, - {497: 2232}, - {497: 5796}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 713: 5799, 743: 5797, 752: 5800, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 5798, 5802, 5801, 770: 2712, 5804, 777: 5805, 5803, 780: 5806, 851: 5807}, + {797, 797, 9: 797}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5828, 2824, 2825, 2823}, + {512: 801, 672: 801}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 5831, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 664: 5833, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5838, 5836, 877: 5834, 1148: 5832}, + {764, 764, 9: 764, 582: 1872, 663: 764, 680: 1872}, // 3240 - {2: 867, 867, 867, 867, 867, 867, 867, 10: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 51: 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 867, 492: 867, 503: 867, 757: 867, 867, 867, 766: 5436, 871: 5437, 923: 5810}, - {476: 2608, 498: 2606, 572: 2605, 649: 2601, 657: 2713, 713: 3914, 752: 3913, 2602, 2603, 2604, 2613, 760: 2611, 3915, 3916, 770: 5217}, - {191, 191, 483: 828, 191, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {193, 193, 483: 829, 193, 493: 829, 829}, - {194, 194, 484: 194}, + {823, 823, 582: 1701, 663: 823, 680: 1701}, + {663: 5841}, + {663: 822}, + {821, 821, 9: 5839, 663: 821}, + {765, 765, 9: 765, 582: 277, 663: 765, 680: 277}, // 3245 - {192, 192, 484: 192}, - {190, 190, 484: 190}, - {189, 189, 484: 189}, - {188, 188, 484: 188}, - {187, 187, 484: 187}, + {759, 759, 9: 759, 663: 759}, + {758, 758, 9: 758, 663: 758}, + {757, 757, 9: 757, 663: 757}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5840, 5836}, + {756, 756, 9: 756, 663: 756}, // 3250 - {183, 183, 484: 5808}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 713: 5799, 743: 5797, 752: 5800, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 5798, 5802, 5801, 770: 2712, 5804, 777: 5805, 5803, 780: 5806, 851: 5809}, - {182, 182}, - {2: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 10: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 51: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 492: 1071, 503: 1071, 757: 5441, 5440, 5439, 842: 5442, 891: 5811}, - {2: 1059, 1059, 1059, 1059, 1059, 1059, 1059, 10: 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 51: 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 5813, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 492: 1059, 503: 1059, 1117: 5812}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5395, 883: 5842}, + {824, 824, 9: 5397}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 5794, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 5797, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 5844, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 5845, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 5798, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 508: 3912, 582: 5810, 600: 5809, 660: 3910, 676: 5807, 2824, 2825, 2823, 790: 5811, 845: 5808, 993: 5846}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 512: 1804, 665: 1804, 672: 1804, 676: 5807, 2824, 2825, 2823, 845: 5850}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 512: 1779, 665: 1779, 672: 1779, 676: 5807, 2824, 2825, 2823, 845: 5847}, // 3255 - {2: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 10: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 51: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 492: 4217, 503: 1873, 859: 5814}, - {2: 1058, 1058, 1058, 1058, 1058, 1058, 1058, 10: 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 51: 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 492: 1058, 503: 1058}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 503: 5815, 664: 5817, 2785, 2786, 2784, 922: 5818, 972: 5816}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 5830}, - {9: 5826, 503: 5825}, + {779, 779, 9: 779}, + {512: 5816, 672: 5817, 838: 5848}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5849}, + {795, 795, 9: 795}, + {512: 5816, 672: 5817, 838: 5851}, // 3260 - {9: 1061, 484: 1061, 503: 1061, 655: 5820, 912: 5819}, - {9: 1063, 484: 1063, 503: 1063}, - {9: 1065, 484: 1065, 503: 1065}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 5822, 664: 5821, 2785, 2786, 2784}, - {9: 1061, 484: 1061, 503: 1061, 655: 5824, 912: 5823}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5852}, + {796, 796, 9: 796}, + {826, 826}, + {507: 2258}, + {507: 2257}, // 3265 - {9: 1060, 484: 1060, 503: 1060}, - {9: 1064, 484: 1064, 503: 1064}, - {523: 5822}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 582: 5448, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5455, 856: 5445, 894: 5828}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5817, 2785, 2786, 2784, 922: 5827}, + {507: 5857}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 723: 5860, 753: 5858, 762: 5861, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 5859, 5863, 5862, 780: 2748, 5865, 787: 5866, 5867, 5864, 861: 5868}, + {2: 880, 880, 880, 880, 880, 880, 880, 10: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 74: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 502: 880, 514: 880, 767: 880, 880, 880, 776: 5497, 882: 5498, 934: 5871}, + {486: 2642, 509: 2640, 581: 2639, 658: 2635, 667: 2749, 723: 3963, 762: 3962, 2636, 2637, 2638, 2647, 770: 2645, 3964, 3965, 780: 5278}, + {198, 198, 494: 841, 198, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, // 3270 - {9: 1062, 484: 1062, 503: 1062}, - {257, 257, 9: 5499, 484: 257, 501: 2745, 795: 2746, 5829}, - {2091, 2091, 484: 2091}, - {936, 936, 936, 936, 936, 936, 936, 936, 936, 10: 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 51: 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 936, 481: 936, 484: 936, 491: 5503, 936, 496: 936, 501: 936, 505: 936, 936, 528: 936, 864: 5831}, - {934, 934, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 481: 5460, 484: 934, 492: 934, 496: 934, 501: 934, 505: 934, 934, 528: 934, 664: 5459, 2785, 2786, 2784, 920: 5458, 5832}, + {200, 200, 494: 842, 200, 503: 842, 842}, + {201, 201, 495: 201}, + {199, 199, 495: 199}, + {197, 197, 495: 197}, + {196, 196, 495: 196}, // 3275 - {915, 915, 484: 915, 492: 5513, 496: 915, 501: 915, 505: 915, 5514, 528: 5512, 945: 5516, 5515, 1069: 5517, 5833}, - {257, 257, 484: 257, 496: 257, 501: 2745, 505: 257, 795: 2746, 5834}, - {1311, 1311, 484: 1311, 496: 1311, 505: 2748, 772: 2749, 817: 5835}, - {897, 897, 484: 897, 496: 5563, 1078: 5836}, - {2092, 2092, 484: 2092}, + {195, 195, 495: 195}, + {194, 194, 495: 194}, + {188, 188, 495: 5869}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 723: 5860, 753: 5858, 762: 5861, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 5859, 5863, 5862, 780: 2748, 5865, 787: 5866, 5867, 5864, 861: 5870}, + {187, 187}, // 3280 - {816, 816, 9: 5852}, - {804, 804, 9: 804}, - {358: 5844}, - {156: 5842, 691: 5841}, - {801, 801, 9: 801}, + {2: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 10: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 74: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 502: 1084, 514: 1084, 767: 5502, 5501, 5500, 852: 5503, 902: 5872}, + {2: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 10: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 74: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 5874, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 502: 1072, 514: 1072, 1129: 5873}, + {2: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 10: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 74: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 502: 4266, 514: 1896, 869: 5875}, + {2: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 10: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 74: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 502: 1071, 514: 1071}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 514: 5876, 676: 5878, 2824, 2825, 2823, 933: 5879, 982: 5877}, // 3285 - {800, 800, 9: 800, 676: 5509, 929: 5843}, - {799, 799, 9: 799}, - {222: 5846, 387: 5848, 674: 5847, 1247: 5845}, - {802, 802, 9: 802}, - {674: 5851}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 5891}, + {9: 5887, 514: 5886}, + {9: 1074, 495: 1074, 514: 1074, 665: 5881, 923: 5880}, + {9: 1076, 495: 1076, 514: 1076}, + {9: 1078, 495: 1078, 514: 1078}, // 3290 - {330: 5849, 407: 5850}, - {795, 795, 9: 795}, - {797, 797, 9: 797}, - {796, 796, 9: 796}, - {798, 798, 9: 798}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 5883, 676: 5882, 2824, 2825, 2823}, + {9: 1074, 495: 1074, 514: 1074, 665: 5885, 923: 5884}, + {9: 1073, 495: 1073, 514: 1073}, + {9: 1077, 495: 1077, 514: 1077}, + {533: 5883}, // 3295 - {184: 5839, 674: 5840, 926: 5853}, - {803, 803, 9: 803}, - {184: 5839, 502: 1740, 655: 1740, 662: 1740, 674: 5840, 926: 5838, 976: 5855}, - {817, 817, 9: 5852}, - {812, 812}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 593: 5509, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5516, 866: 5506, 905: 5889}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5878, 2824, 2825, 2823, 933: 5888}, + {9: 1075, 495: 1075, 514: 1075}, + {266, 266, 9: 5560, 495: 266, 513: 2784, 806: 2785, 5890}, + {2115, 2115, 495: 2115}, // 3300 - {809, 809, 493: 5860}, - {806, 806}, - {805, 805}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5777, 5775, 866: 5861}, - {807, 807, 9: 5778}, + {949, 949, 949, 949, 949, 949, 949, 949, 949, 10: 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 74: 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 949, 492: 949, 495: 949, 501: 5564, 949, 506: 949, 513: 949, 516: 949, 518: 949, 538: 949, 874: 5892}, + {947, 947, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 492: 5521, 495: 947, 502: 947, 506: 947, 513: 947, 516: 947, 518: 947, 538: 947, 676: 5520, 2824, 2825, 2823, 931: 5519, 5893}, + {928, 928, 495: 928, 502: 5574, 506: 928, 513: 928, 516: 928, 518: 5575, 538: 5573, 956: 5577, 5576, 1081: 5578, 5894}, + {266, 266, 495: 266, 506: 266, 513: 2784, 516: 266, 806: 2785, 5895}, + {1324, 1324, 495: 1324, 506: 1324, 516: 2787, 782: 2788, 828: 5896}, // 3305 - {15: 5868, 478: 5867, 1109: 5872}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5864}, - {502: 5865}, - {15: 5868, 478: 5867, 1109: 5866}, - {819, 819}, + {910, 910, 495: 910, 506: 5624, 1090: 5897}, + {2116, 2116, 495: 2116}, + {829, 829, 9: 5913}, + {817, 817, 9: 817}, + {366: 5905}, // 3310 - {755, 755}, - {476: 5869}, - {478: 5366, 897: 5870}, - {50: 5871}, - {754, 754}, + {163: 5903, 701: 5902}, + {814, 814, 9: 814}, + {813, 813, 9: 813, 686: 5570, 940: 5904}, + {812, 812, 9: 812}, + {229: 5907, 397: 5909, 684: 5908, 1260: 5906}, // 3315 - {820, 820}, - {778, 778, 9: 778, 487: 5875}, - {775, 775, 9: 775}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 482: 5876, 664: 3517, 2785, 2786, 2784, 742: 5877}, - {777, 777, 9: 777}, + {815, 815, 9: 815}, + {684: 5912}, + {339: 5910, 417: 5911}, + {808, 808, 9: 808}, + {810, 810, 9: 810}, // 3320 - {776, 776, 9: 776}, - {502: 5755, 662: 5756, 828: 5879}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5880}, - {781, 781, 9: 781}, - {184: 5839, 502: 1740, 655: 1740, 662: 1740, 674: 5840, 926: 5838, 976: 5882}, + {809, 809, 9: 809}, + {811, 811, 9: 811}, + {191: 5900, 684: 5901, 937: 5914}, + {816, 816, 9: 816}, + {191: 5900, 512: 1762, 665: 1762, 672: 1762, 684: 5901, 937: 5899, 986: 5916}, // 3325 - {818, 818, 9: 5852}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5886, 2785, 2786, 2784, 907: 5893}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5886, 2785, 2786, 2784, 907: 5885}, - {502: 5755, 662: 5756, 828: 5891}, - {489: 5888, 502: 787, 655: 5887, 662: 787}, + {830, 830, 9: 5913}, + {825, 825}, + {822, 822, 503: 5921}, + {819, 819}, + {818, 818}, // 3330 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5886, 2785, 2786, 2784, 907: 5890}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5886, 2785, 2786, 2784, 907: 5889}, - {502: 785, 662: 785}, - {502: 786, 662: 786}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5892}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5838, 5836, 877: 5922}, + {820, 820, 9: 5839}, + {15: 5929, 487: 5928, 1121: 5933}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5925}, + {512: 5926}, // 3335 - {814, 814}, - {502: 5755, 662: 5756, 828: 5894}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 5761, 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 5760, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 5762, 845: 5895}, - {815, 815}, - {653: 5905}, + {15: 5929, 487: 5928, 1121: 5927}, + {832, 832}, + {768, 768}, + {486: 5930}, + {487: 5427, 908: 5931}, // 3340 - {653: 5898}, - {275: 5899}, - {502: 5900}, - {478: 5901}, - {497: 5902}, + {73: 5932}, + {767, 767}, + {833, 833}, + {791, 791, 9: 791, 493: 5936}, + {788, 788, 9: 788}, // 3345 - {274: 5903}, - {478: 5904}, - {822, 822}, - {275: 5906}, - {502: 5907}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 490: 5937, 676: 3566, 2824, 2825, 2823, 752: 5938}, + {790, 790, 9: 790}, + {789, 789, 9: 789}, + {512: 5816, 672: 5817, 838: 5940}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5941}, // 3350 - {478: 5908}, - {497: 5909}, - {274: 5910}, - {478: 5911}, - {823, 823}, + {794, 794, 9: 794}, + {191: 5900, 512: 1762, 665: 1762, 672: 1762, 684: 5901, 937: 5899, 986: 5943}, + {831, 831, 9: 5913}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5947, 2824, 2825, 2823, 918: 5954}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5947, 2824, 2825, 2823, 918: 5946}, // 3355 - {476: 2608, 498: 2606, 572: 2605, 649: 2601, 713: 5923, 752: 5922, 2602, 2603, 2604, 5924}, - {476: 1253, 498: 1253, 572: 1253, 649: 1253, 654: 3572, 749: 3570, 3571, 789: 5916, 792: 5917, 938: 5919, 971: 5921}, - {476: 1253, 498: 1253, 572: 1253, 649: 1253, 654: 3572, 749: 3570, 3571, 789: 5916, 792: 5917, 938: 5919, 971: 5920}, - {476: 1253, 498: 1253, 572: 1253, 649: 1253, 654: 3572, 749: 3570, 3571, 789: 5916, 792: 5917, 938: 5919, 971: 5918}, - {2: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 10: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 51: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 476: 1256, 478: 1256, 1256, 1256, 482: 1256, 485: 1256, 1256, 488: 1256, 1256, 1256, 495: 1256, 498: 1256, 507: 1256, 1256, 511: 1256, 518: 1256, 523: 1256, 533: 1256, 567: 1256, 570: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 585: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 595: 1256, 1256, 598: 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 649: 1256, 651: 1256, 654: 1256, 749: 1256, 1256, 757: 1256, 1256, 1256, 766: 1256, 774: 1256, 1256, 1256}, + {512: 5816, 672: 5817, 838: 5952}, + {499: 5949, 512: 800, 665: 5948, 672: 800}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5947, 2824, 2825, 2823, 918: 5951}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5947, 2824, 2825, 2823, 918: 5950}, + {512: 798, 672: 798}, // 3360 - {476: 1252, 498: 1252, 572: 1252, 649: 1252}, - {476: 825, 498: 825, 572: 825, 649: 825}, - {476: 824, 498: 824, 572: 824, 649: 824}, - {476: 826, 498: 826, 572: 826, 649: 826}, - {476: 827, 498: 827, 572: 827, 649: 827}, + {512: 799, 672: 799}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5953}, + {827, 827}, + {512: 5816, 672: 5817, 838: 5955}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 5822, 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 5821, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 5823, 855: 5956}, // 3365 - {839, 839, 50: 839, 475: 839, 477: 839, 483: 829, 839, 493: 829, 829}, - {838, 838, 50: 838, 475: 838, 477: 838, 483: 828, 838, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 5925, 5926}, - {483: 830, 493: 830, 830}, - {837, 837, 50: 837, 475: 837, 477: 837, 484: 837, 496: 2751, 504: 2752, 773: 5927}, - {836, 836, 50: 836, 475: 836, 477: 836, 484: 836}, + {828, 828}, + {663: 5966}, + {663: 5959}, + {284: 5960}, + {512: 5961}, // 3370 - {835, 835, 50: 835, 475: 835, 477: 835, 484: 835}, - {50: 4000, 483: 828, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {9: 5943, 476: 1011, 498: 1011, 572: 1011, 649: 1011, 657: 1011, 743: 1011}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5932, 2785, 2786, 2784, 935: 5931, 1173: 5942}, - {9: 1008, 476: 1008, 498: 1008, 572: 1008, 649: 1008, 657: 1008, 743: 1008}, + {487: 5962}, + {507: 5963}, + {283: 5964}, + {487: 5965}, + {835, 835}, // 3375 - {476: 5933, 481: 2347, 1234: 5934}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5938, 2785, 2786, 2784, 881: 5937}, - {481: 5935}, - {476: 2608, 713: 5936}, - {9: 1007, 476: 1007, 498: 1007, 572: 1007, 649: 1007, 657: 1007, 743: 1007}, + {284: 5967}, + {512: 5968}, + {487: 5969}, + {507: 5970}, + {283: 5971}, // 3380 - {9: 5940, 50: 5939}, - {2345, 2345, 9: 2345, 50: 2345, 477: 2345}, - {481: 2346}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5941, 2785, 2786, 2784}, - {2344, 2344, 9: 2344, 50: 2344, 477: 2344}, + {487: 5972}, + {836, 836}, + {486: 2642, 509: 2640, 581: 2639, 658: 2635, 723: 5984, 762: 5983, 2636, 2637, 2638, 5985}, + {486: 1266, 509: 1266, 581: 1266, 658: 1266, 664: 3621, 759: 3619, 3620, 800: 5977, 802: 5978, 949: 5980, 981: 5982}, + {486: 1266, 509: 1266, 581: 1266, 658: 1266, 664: 3621, 759: 3619, 3620, 800: 5977, 802: 5978, 949: 5980, 981: 5981}, // 3385 - {9: 5943, 476: 1010, 498: 1010, 572: 1010, 649: 1010, 657: 1010, 743: 1010}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5932, 2785, 2786, 2784, 935: 5944}, - {9: 1009, 476: 1009, 498: 1009, 572: 1009, 649: 1009, 657: 1009, 743: 1009}, - {1311, 1311, 50: 1311, 475: 1311, 477: 1311, 483: 1311, 1311, 493: 1311, 1311, 496: 1311, 1311, 499: 1311, 1311, 504: 1311, 2748, 772: 2749, 817: 5946}, - {883, 883, 50: 883, 475: 883, 477: 883, 483: 883, 883, 493: 883, 883, 496: 2751, 883, 499: 883, 883, 504: 2752, 773: 2753, 834: 5947}, + {486: 1266, 509: 1266, 581: 1266, 658: 1266, 664: 3621, 759: 3619, 3620, 800: 5977, 802: 5978, 949: 5980, 981: 5979}, + {2: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 10: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 74: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 486: 1269, 1269, 489: 1269, 1269, 1269, 496: 1269, 1269, 1269, 1269, 1269, 505: 1269, 508: 1269, 1269, 517: 1269, 521: 1269, 528: 1269, 533: 1269, 543: 1269, 577: 1269, 580: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 595: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 606: 1269, 608: 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 658: 1269, 662: 1269, 664: 1269, 759: 1269, 1269, 767: 1269, 1269, 1269, 776: 1269, 784: 1269, 1269, 1269}, + {486: 1265, 509: 1265, 581: 1265, 658: 1265}, + {486: 838, 509: 838, 581: 838, 658: 838}, + {486: 837, 509: 837, 581: 837, 658: 837}, // 3390 - {854, 854, 50: 854, 475: 854, 477: 854, 483: 854, 854, 493: 854, 854, 497: 3938, 499: 854, 3939, 892: 5948}, - {860, 860, 50: 860, 475: 860, 477: 860, 483: 860, 860, 493: 860, 860, 499: 3964, 893: 5949}, - {1015, 1015, 50: 1015, 475: 1015, 477: 1015, 483: 1015, 1015, 493: 1015, 1015}, - {883, 883, 50: 883, 475: 883, 477: 883, 483: 883, 883, 493: 883, 883, 496: 2751, 883, 499: 883, 883, 504: 2752, 773: 2753, 834: 5951}, - {854, 854, 50: 854, 475: 854, 477: 854, 483: 854, 854, 493: 854, 854, 497: 3938, 499: 854, 3939, 892: 5952}, + {486: 839, 509: 839, 581: 839, 658: 839}, + {486: 840, 509: 840, 581: 840, 658: 840}, + {852, 852, 73: 852, 485: 852, 488: 852, 494: 842, 852, 503: 842, 842}, + {851, 851, 73: 851, 485: 851, 488: 851, 494: 841, 851, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 5986, 5987}, + {494: 843, 503: 843, 843}, // 3395 - {860, 860, 50: 860, 475: 860, 477: 860, 483: 860, 860, 493: 860, 860, 499: 3964, 893: 5953}, - {1016, 1016, 50: 1016, 475: 1016, 477: 1016, 483: 1016, 1016, 493: 1016, 1016}, - {663: 5961}, - {1311, 1311, 50: 1311, 475: 1311, 477: 1311, 483: 1311, 1311, 493: 1311, 1311, 496: 1311, 1311, 499: 1311, 1311, 504: 1311, 2748, 772: 2749, 817: 5957}, - {861, 861, 50: 861, 475: 861, 477: 861, 483: 861, 861, 493: 861, 861, 496: 861, 861, 499: 861, 861, 504: 861, 861, 517: 861, 519: 861}, + {850, 850, 73: 850, 485: 850, 488: 850, 495: 850, 506: 2790, 515: 2791, 783: 5988}, + {849, 849, 73: 849, 485: 849, 488: 849, 495: 849}, + {848, 848, 73: 848, 485: 848, 488: 848, 495: 848}, + {73: 4049, 494: 841, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {9: 6004, 486: 1024, 509: 1024, 581: 1024, 658: 1024, 667: 1024, 753: 1024}, // 3400 - {883, 883, 50: 883, 475: 883, 477: 883, 483: 883, 883, 493: 883, 883, 496: 2751, 883, 499: 883, 883, 504: 2752, 773: 2753, 834: 5958}, - {854, 854, 50: 854, 475: 854, 477: 854, 483: 854, 854, 493: 854, 854, 497: 3938, 499: 854, 3939, 892: 5959}, - {860, 860, 50: 860, 475: 860, 477: 860, 483: 860, 860, 493: 860, 860, 499: 3964, 893: 5960}, - {1017, 1017, 50: 1017, 475: 1017, 477: 1017, 483: 1017, 1017, 493: 1017, 1017}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 2777, 875: 3267, 905: 5962}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5993, 2824, 2825, 2823, 946: 5992, 1187: 6003}, + {9: 1021, 486: 1021, 509: 1021, 581: 1021, 658: 1021, 667: 1021, 753: 1021}, + {486: 5994, 492: 2372, 1247: 5995}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5999, 2824, 2825, 2823, 893: 5998}, + {492: 5996}, // 3405 - {1883, 1883, 9: 3438, 50: 1883, 475: 1883, 477: 1883, 483: 1883, 1883, 493: 1883, 1883, 496: 1883, 1883, 499: 1883, 1883, 504: 1883, 1883, 517: 1883, 519: 1883}, - {257, 257, 50: 257, 475: 257, 477: 257, 483: 257, 257, 493: 257, 257, 496: 257, 257, 499: 257, 257, 2745, 504: 257, 257, 516: 257, 795: 2746, 5988}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 582: 5448, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5455, 856: 5445, 894: 5973, 1215: 5972, 1331: 5971}, - {862, 862, 50: 862, 475: 862, 477: 862, 483: 862, 862, 493: 862, 862, 496: 862, 862, 499: 862, 862, 504: 862, 862, 516: 5954, 944: 5956, 970: 5966}, - {1311, 1311, 50: 1311, 475: 1311, 477: 1311, 483: 1311, 1311, 493: 1311, 1311, 496: 1311, 1311, 499: 1311, 1311, 504: 1311, 2748, 772: 2749, 817: 5967}, + {486: 2642, 723: 5997}, + {9: 1020, 486: 1020, 509: 1020, 581: 1020, 658: 1020, 667: 1020, 753: 1020}, + {9: 6001, 73: 6000}, + {2370, 2370, 9: 2370, 73: 2370, 488: 2370}, + {492: 2371}, // 3410 - {883, 883, 50: 883, 475: 883, 477: 883, 483: 883, 883, 493: 883, 883, 496: 2751, 883, 499: 883, 883, 504: 2752, 773: 2753, 834: 5968}, - {854, 854, 50: 854, 475: 854, 477: 854, 483: 854, 854, 493: 854, 854, 497: 3938, 499: 854, 3939, 892: 5969}, - {860, 860, 50: 860, 475: 860, 477: 860, 483: 860, 860, 493: 860, 860, 499: 3964, 893: 5970}, - {1018, 1018, 50: 1018, 475: 1018, 477: 1018, 483: 1018, 1018, 493: 1018, 1018}, - {257, 257, 50: 257, 475: 257, 477: 257, 483: 257, 257, 493: 257, 257, 496: 257, 257, 499: 257, 257, 2745, 504: 257, 257, 516: 257, 257, 519: 257, 795: 2746, 5974}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6002, 2824, 2825, 2823}, + {2369, 2369, 9: 2369, 73: 2369, 488: 2369}, + {9: 6004, 486: 1023, 509: 1023, 581: 1023, 658: 1023, 667: 1023, 753: 1023}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5993, 2824, 2825, 2823, 946: 6005}, + {9: 1022, 486: 1022, 509: 1022, 581: 1022, 658: 1022, 667: 1022, 753: 1022}, // 3415 - {1006, 1006, 50: 1006, 475: 1006, 477: 1006, 483: 1006, 1006, 493: 1006, 1006, 496: 1006, 1006, 499: 1006, 1006, 1006, 504: 1006, 1006, 516: 1006}, - {946, 946, 9: 5499, 50: 946, 475: 946, 477: 946, 483: 946, 946, 493: 946, 946, 496: 946, 946, 499: 946, 946, 946, 504: 946, 946, 516: 946, 946, 519: 946}, - {862, 862, 50: 862, 475: 862, 477: 862, 483: 862, 862, 493: 862, 862, 496: 862, 862, 499: 862, 862, 504: 862, 862, 516: 5954, 862, 519: 862, 944: 5956, 970: 5975}, - {1882, 1882, 50: 1882, 475: 1882, 477: 1882, 483: 1882, 1882, 493: 1882, 1882, 496: 1882, 1882, 499: 1882, 1882, 504: 1882, 1882, 517: 5976, 519: 1882, 1066: 5977}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 5987}, + {1324, 1324, 73: 1324, 485: 1324, 488: 1324, 494: 1324, 1324, 503: 1324, 1324, 506: 1324, 1324, 510: 1324, 1324, 515: 1324, 2787, 782: 2788, 828: 6007}, + {896, 896, 73: 896, 485: 896, 488: 896, 494: 896, 896, 503: 896, 896, 506: 2790, 896, 510: 896, 896, 515: 2791, 783: 2792, 844: 6008}, + {867, 867, 73: 867, 485: 867, 488: 867, 494: 867, 867, 503: 867, 867, 507: 3987, 510: 867, 3988, 903: 6009}, + {873, 873, 73: 873, 485: 873, 488: 873, 494: 873, 873, 503: 873, 873, 510: 4013, 904: 6010}, + {1028, 1028, 73: 1028, 485: 1028, 488: 1028, 494: 1028, 1028, 503: 1028, 1028}, // 3420 - {1005, 1005, 50: 1005, 475: 1005, 477: 1005, 483: 1005, 1005, 493: 1005, 1005, 496: 1005, 1005, 499: 1005, 1005, 504: 1005, 1005, 519: 5979, 1354: 5978}, - {1031, 1031, 50: 1031, 475: 1031, 477: 1031, 483: 1031, 1031, 493: 1031, 1031, 496: 1031, 1031, 499: 1031, 1031, 504: 1031, 1031}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3426, 2785, 2786, 2784, 928: 5982, 1169: 5981, 1355: 5980}, - {1004, 1004, 9: 5985, 50: 1004, 475: 1004, 477: 1004, 483: 1004, 1004, 493: 1004, 1004, 496: 1004, 1004, 499: 1004, 1004, 504: 1004, 1004}, - {1003, 1003, 9: 1003, 50: 1003, 475: 1003, 477: 1003, 483: 1003, 1003, 493: 1003, 1003, 496: 1003, 1003, 499: 1003, 1003, 504: 1003, 1003}, + {896, 896, 73: 896, 485: 896, 488: 896, 494: 896, 896, 503: 896, 896, 506: 2790, 896, 510: 896, 896, 515: 2791, 783: 2792, 844: 6012}, + {867, 867, 73: 867, 485: 867, 488: 867, 494: 867, 867, 503: 867, 867, 507: 3987, 510: 867, 3988, 903: 6013}, + {873, 873, 73: 873, 485: 873, 488: 873, 494: 873, 873, 503: 873, 873, 510: 4013, 904: 6014}, + {1029, 1029, 73: 1029, 485: 1029, 488: 1029, 494: 1029, 1029, 503: 1029, 1029}, + {673: 6022}, // 3425 - {481: 5983}, - {476: 3427, 1171: 5984}, - {1001, 1001, 9: 1001, 50: 1001, 475: 1001, 477: 1001, 483: 1001, 1001, 493: 1001, 1001, 496: 1001, 1001, 499: 1001, 1001, 504: 1001, 1001}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3426, 2785, 2786, 2784, 928: 5982, 1169: 5986}, - {1002, 1002, 9: 1002, 50: 1002, 475: 1002, 477: 1002, 483: 1002, 1002, 493: 1002, 1002, 496: 1002, 1002, 499: 1002, 1002, 504: 1002, 1002}, + {1324, 1324, 73: 1324, 485: 1324, 488: 1324, 494: 1324, 1324, 503: 1324, 1324, 506: 1324, 1324, 510: 1324, 1324, 515: 1324, 2787, 782: 2788, 828: 6018}, + {874, 874, 73: 874, 485: 874, 488: 874, 494: 874, 874, 503: 874, 874, 506: 874, 874, 510: 874, 874, 515: 874, 874, 527: 874, 529: 874}, + {896, 896, 73: 896, 485: 896, 488: 896, 494: 896, 896, 503: 896, 896, 506: 2790, 896, 510: 896, 896, 515: 2791, 783: 2792, 844: 6019}, + {867, 867, 73: 867, 485: 867, 488: 867, 494: 867, 867, 503: 867, 867, 507: 3987, 510: 867, 3988, 903: 6020}, + {873, 873, 73: 873, 485: 873, 488: 873, 494: 873, 873, 503: 873, 873, 510: 4013, 904: 6021}, // 3430 - {1881, 1881, 50: 1881, 475: 1881, 477: 1881, 483: 1881, 1881, 493: 1881, 1881, 496: 1881, 1881, 499: 1881, 1881, 1881, 503: 1881, 1881, 1881, 510: 3371, 512: 3369, 3370, 3368, 3366, 1881, 519: 1881, 738: 3367, 3365}, - {1032, 1032, 50: 1032, 475: 1032, 477: 1032, 483: 1032, 1032, 493: 1032, 1032, 496: 1032, 1032, 499: 1032, 1032, 504: 1032, 1032, 516: 1032}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 523: 6005, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 6006, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 6004, 1051: 6007, 1223: 6008, 1298: 6009}, - {2: 881, 881, 881, 881, 881, 881, 881, 10: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 51: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 476: 881, 478: 881, 881, 881, 482: 881, 485: 881, 881, 488: 881, 881, 881, 495: 881, 498: 881, 507: 881, 881, 511: 881, 518: 881, 523: 881, 533: 881, 567: 881, 570: 881, 881, 573: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 585: 881, 881, 881, 881, 881, 881, 881, 881, 595: 881, 881, 598: 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 881, 651: 881, 654: 881, 749: 881, 881, 757: 881, 881, 881, 766: 881, 774: 881, 881, 881}, - {2: 880, 880, 880, 880, 880, 880, 880, 10: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 51: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 476: 880, 478: 880, 880, 880, 482: 880, 485: 880, 880, 488: 880, 880, 880, 495: 880, 498: 880, 507: 880, 880, 511: 880, 518: 880, 523: 880, 533: 880, 567: 880, 570: 880, 880, 573: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 585: 880, 880, 880, 880, 880, 880, 880, 880, 595: 880, 880, 598: 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 880, 651: 880, 654: 880, 749: 880, 880, 757: 880, 880, 880, 766: 880, 774: 880, 880, 880}, + {1030, 1030, 73: 1030, 485: 1030, 488: 1030, 494: 1030, 1030, 503: 1030, 1030}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 2816, 886: 3316, 916: 6023}, + {1906, 1906, 9: 3487, 73: 1906, 485: 1906, 488: 1906, 494: 1906, 1906, 503: 1906, 1906, 506: 1906, 1906, 510: 1906, 1906, 515: 1906, 1906, 527: 1906, 529: 1906}, + {266, 266, 73: 266, 485: 266, 488: 266, 494: 266, 266, 503: 266, 266, 506: 266, 266, 510: 266, 266, 513: 2784, 515: 266, 266, 526: 266, 806: 2785, 6049}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 593: 5509, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5516, 866: 5506, 905: 6034, 1228: 6033, 1344: 6032}, // 3435 - {2: 879, 879, 879, 879, 879, 879, 879, 10: 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 51: 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 476: 879, 478: 879, 879, 879, 482: 879, 485: 879, 879, 488: 879, 879, 879, 495: 879, 498: 879, 507: 879, 879, 511: 879, 518: 879, 523: 879, 533: 879, 567: 879, 570: 879, 879, 573: 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 585: 879, 879, 879, 879, 879, 879, 879, 879, 595: 879, 879, 598: 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, 651: 879, 654: 879, 749: 879, 879, 757: 879, 879, 879, 766: 879, 774: 879, 879, 879}, - {2: 878, 878, 878, 878, 878, 878, 878, 10: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 51: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 476: 878, 478: 878, 878, 878, 482: 878, 485: 878, 878, 488: 878, 878, 878, 495: 878, 498: 878, 507: 878, 878, 511: 878, 518: 878, 523: 878, 533: 878, 567: 878, 570: 878, 878, 573: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 585: 878, 878, 878, 878, 878, 878, 878, 878, 595: 878, 878, 598: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 651: 878, 654: 878, 749: 878, 878, 757: 878, 878, 878, 766: 878, 774: 878, 878, 878}, - {2: 877, 877, 877, 877, 877, 877, 877, 10: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 51: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 476: 877, 478: 877, 877, 877, 482: 877, 485: 877, 877, 488: 877, 877, 877, 495: 877, 498: 877, 507: 877, 877, 511: 877, 518: 877, 523: 877, 533: 877, 567: 877, 570: 877, 877, 573: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 585: 877, 877, 877, 877, 877, 877, 877, 877, 595: 877, 877, 598: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 651: 877, 654: 877, 749: 877, 877, 757: 877, 877, 877, 766: 877, 774: 877, 877, 877}, - {2: 876, 876, 876, 876, 876, 876, 876, 10: 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 51: 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 476: 876, 478: 876, 876, 876, 482: 876, 485: 876, 876, 488: 876, 876, 876, 495: 876, 498: 876, 507: 876, 876, 511: 876, 518: 876, 523: 876, 533: 876, 567: 876, 570: 876, 876, 573: 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 585: 876, 876, 876, 876, 876, 876, 876, 876, 595: 876, 876, 598: 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, 651: 876, 654: 876, 749: 876, 876, 757: 876, 876, 876, 766: 876, 774: 876, 876, 876}, - {2: 875, 875, 875, 875, 875, 875, 875, 10: 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 51: 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 476: 875, 478: 875, 875, 875, 482: 875, 485: 875, 875, 488: 875, 875, 875, 495: 875, 498: 875, 507: 875, 875, 511: 875, 518: 875, 523: 875, 533: 875, 567: 875, 570: 875, 875, 573: 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 585: 875, 875, 875, 875, 875, 875, 875, 875, 595: 875, 875, 598: 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 875, 651: 875, 654: 875, 749: 875, 875, 757: 875, 875, 875, 766: 875, 774: 875, 875, 875}, + {875, 875, 73: 875, 485: 875, 488: 875, 494: 875, 875, 503: 875, 875, 506: 875, 875, 510: 875, 875, 515: 875, 875, 526: 6015, 955: 6017, 980: 6027}, + {1324, 1324, 73: 1324, 485: 1324, 488: 1324, 494: 1324, 1324, 503: 1324, 1324, 506: 1324, 1324, 510: 1324, 1324, 515: 1324, 2787, 782: 2788, 828: 6028}, + {896, 896, 73: 896, 485: 896, 488: 896, 494: 896, 896, 503: 896, 896, 506: 2790, 896, 510: 896, 896, 515: 2791, 783: 2792, 844: 6029}, + {867, 867, 73: 867, 485: 867, 488: 867, 494: 867, 867, 503: 867, 867, 507: 3987, 510: 867, 3988, 903: 6030}, + {873, 873, 73: 873, 485: 873, 488: 873, 494: 873, 873, 503: 873, 873, 510: 4013, 904: 6031}, // 3440 - {2: 874, 874, 874, 874, 874, 874, 874, 10: 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 51: 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 476: 874, 478: 874, 874, 874, 482: 874, 485: 874, 874, 488: 874, 874, 874, 495: 874, 498: 874, 507: 874, 874, 511: 874, 518: 874, 523: 874, 533: 874, 567: 874, 570: 874, 874, 573: 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 585: 874, 874, 874, 874, 874, 874, 874, 874, 595: 874, 874, 598: 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 874, 651: 874, 654: 874, 749: 874, 874, 757: 874, 874, 874, 766: 874, 774: 874, 874, 874}, - {2: 873, 873, 873, 873, 873, 873, 873, 10: 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 51: 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 476: 873, 478: 873, 873, 873, 482: 873, 485: 873, 873, 488: 873, 873, 873, 495: 873, 498: 873, 507: 873, 873, 511: 873, 518: 873, 523: 873, 533: 873, 567: 873, 570: 873, 873, 573: 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 585: 873, 873, 873, 873, 873, 873, 873, 873, 595: 873, 873, 598: 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 651: 873, 654: 873, 749: 873, 873, 757: 873, 873, 873, 766: 873, 774: 873, 873, 873}, - {2: 871, 871, 871, 871, 871, 871, 871, 10: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 51: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 5995, 6001, 6002, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 476: 871, 478: 871, 871, 871, 482: 871, 485: 871, 871, 488: 871, 871, 871, 495: 871, 498: 871, 507: 871, 871, 511: 871, 518: 5998, 523: 871, 533: 871, 567: 871, 570: 871, 871, 573: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 585: 871, 871, 871, 871, 871, 871, 871, 871, 595: 871, 871, 598: 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 871, 651: 871, 654: 3572, 749: 3570, 3571, 757: 5441, 5440, 5439, 766: 5436, 774: 5994, 5997, 5993, 789: 5916, 792: 5991, 842: 5992, 871: 5990, 1131: 6003, 5996}, - {2: 869, 869, 869, 869, 869, 869, 869, 10: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 51: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 476: 869, 478: 869, 869, 869, 482: 869, 485: 869, 869, 488: 869, 869, 869, 495: 869, 498: 869, 507: 869, 869, 511: 869, 518: 869, 523: 869, 533: 869, 567: 869, 570: 869, 869, 573: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 585: 869, 869, 869, 869, 869, 869, 869, 869, 595: 869, 869, 598: 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 869, 651: 869, 654: 869, 749: 869, 869, 757: 869, 869, 869, 766: 869, 774: 869, 869, 869}, - {2: 865, 865, 865, 865, 865, 865, 865, 10: 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 51: 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 476: 865, 478: 865, 865, 865, 482: 865, 485: 865, 865, 488: 865, 865, 865, 495: 865, 498: 865, 507: 865, 865, 511: 865, 518: 865, 523: 865, 533: 865, 567: 865, 570: 865, 865, 573: 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 585: 865, 865, 865, 865, 865, 865, 865, 865, 595: 865, 865, 598: 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 865, 651: 865, 654: 865, 749: 865, 865, 757: 865, 865, 865, 766: 865, 774: 865, 865, 865}, + {1031, 1031, 73: 1031, 485: 1031, 488: 1031, 494: 1031, 1031, 503: 1031, 1031}, + {266, 266, 73: 266, 485: 266, 488: 266, 494: 266, 266, 503: 266, 266, 506: 266, 266, 510: 266, 266, 513: 2784, 515: 266, 266, 526: 266, 266, 529: 266, 806: 2785, 6035}, + {1019, 1019, 73: 1019, 485: 1019, 488: 1019, 494: 1019, 1019, 503: 1019, 1019, 506: 1019, 1019, 510: 1019, 1019, 513: 1019, 515: 1019, 1019, 526: 1019}, + {959, 959, 9: 5560, 73: 959, 485: 959, 488: 959, 494: 959, 959, 503: 959, 959, 506: 959, 959, 510: 959, 959, 513: 959, 515: 959, 959, 526: 959, 959, 529: 959}, + {875, 875, 73: 875, 485: 875, 488: 875, 494: 875, 875, 503: 875, 875, 506: 875, 875, 510: 875, 875, 515: 875, 875, 526: 6015, 875, 529: 875, 955: 6017, 980: 6036}, // 3445 - {2: 864, 864, 864, 864, 864, 864, 864, 10: 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 51: 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 476: 864, 478: 864, 864, 864, 482: 864, 485: 864, 864, 488: 864, 864, 864, 495: 864, 498: 864, 507: 864, 864, 511: 864, 518: 864, 523: 864, 533: 864, 567: 864, 570: 864, 864, 573: 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 585: 864, 864, 864, 864, 864, 864, 864, 864, 595: 864, 864, 598: 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 864, 651: 864, 654: 864, 749: 864, 864, 757: 864, 864, 864, 766: 864, 774: 864, 864, 864}, - {2: 870, 870, 870, 870, 870, 870, 870, 10: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 51: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 476: 870, 478: 870, 870, 870, 482: 870, 485: 870, 870, 488: 870, 870, 870, 495: 870, 498: 870, 507: 870, 870, 511: 870, 518: 870, 523: 870, 533: 870, 567: 870, 570: 870, 870, 573: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 585: 870, 870, 870, 870, 870, 870, 870, 870, 595: 870, 870, 598: 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 870, 651: 870, 654: 870, 749: 870, 870, 757: 870, 870, 870, 766: 870, 774: 870, 870, 870}, - {1891, 1891, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 1891, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1891, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 1891, 477: 1891, 6022, 481: 6021, 483: 1891, 1891, 493: 1891, 1891, 496: 1891, 1891, 499: 1891, 1891, 1891, 503: 1891, 1891, 1891, 510: 3371, 512: 3369, 3370, 3368, 3366, 1891, 1891, 664: 6020, 2785, 2786, 2784, 738: 3367, 3365, 1220: 6019, 6018}, - {1895, 1895, 9: 1895, 50: 1895, 475: 1895, 477: 1895, 483: 1895, 1895, 493: 1895, 1895, 496: 1895, 1895, 499: 1895, 1895, 1895, 503: 1895, 1895, 1895, 516: 1895, 1895}, - {1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 477: 1293, 1293, 1293, 1293, 1293, 483: 1293, 1293, 487: 1293, 1293, 1293, 1293, 493: 1293, 1293, 496: 1293, 1293, 499: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 510: 1293, 512: 1293, 1293, 1293, 1293, 1293, 1293, 521: 1293, 523: 1293, 547: 1293, 550: 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 1293, 568: 1293, 1293, 597: 1293, 655: 6013, 659: 1293, 1293}, + {1905, 1905, 73: 1905, 485: 1905, 488: 1905, 494: 1905, 1905, 503: 1905, 1905, 506: 1905, 1905, 510: 1905, 1905, 515: 1905, 1905, 527: 6037, 529: 1905, 1078: 6038}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 6048}, + {1018, 1018, 73: 1018, 485: 1018, 488: 1018, 494: 1018, 1018, 503: 1018, 1018, 506: 1018, 1018, 510: 1018, 1018, 515: 1018, 1018, 529: 6040, 1367: 6039}, + {1044, 1044, 73: 1044, 485: 1044, 488: 1044, 494: 1044, 1044, 503: 1044, 1044, 506: 1044, 1044, 510: 1044, 1044, 515: 1044, 1044}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3475, 2824, 2825, 2823, 939: 6043, 1183: 6042, 1368: 6041}, // 3450 - {1885, 1885, 9: 1885, 50: 1885, 475: 1885, 477: 1885, 483: 1885, 1885, 493: 1885, 1885, 496: 1885, 1885, 499: 1885, 1885, 1885, 503: 1885, 1885, 1885, 516: 1885, 1885}, - {863, 863, 9: 6011, 50: 863, 475: 863, 477: 863, 483: 863, 863, 493: 863, 863, 496: 863, 863, 499: 863, 863, 863, 503: 863, 863, 863, 516: 863, 863}, - {1882, 1882, 50: 1882, 475: 1882, 477: 1882, 483: 1882, 1882, 493: 1882, 1882, 496: 1882, 1882, 499: 1882, 1882, 1882, 503: 1882, 1882, 1882, 516: 1882, 5976, 1066: 6010}, - {1033, 1033, 50: 1033, 475: 1033, 477: 1033, 483: 1033, 1033, 493: 1033, 1033, 496: 1033, 1033, 499: 1033, 1033, 1033, 503: 1033, 1033, 1033, 516: 1033}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 523: 6005, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 6006, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 6004, 1051: 6012}, + {1017, 1017, 9: 6046, 73: 1017, 485: 1017, 488: 1017, 494: 1017, 1017, 503: 1017, 1017, 506: 1017, 1017, 510: 1017, 1017, 515: 1017, 1017}, + {1016, 1016, 9: 1016, 73: 1016, 485: 1016, 488: 1016, 494: 1016, 1016, 503: 1016, 1016, 506: 1016, 1016, 510: 1016, 1016, 515: 1016, 1016}, + {492: 6044}, + {486: 3476, 1185: 6045}, + {1014, 1014, 9: 1014, 73: 1014, 485: 1014, 488: 1014, 494: 1014, 1014, 503: 1014, 1014, 506: 1014, 1014, 510: 1014, 1014, 515: 1014, 1014}, // 3455 - {1884, 1884, 9: 1884, 50: 1884, 475: 1884, 477: 1884, 483: 1884, 1884, 493: 1884, 1884, 496: 1884, 1884, 499: 1884, 1884, 1884, 503: 1884, 1884, 1884, 516: 1884, 1884}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 6014, 664: 6015, 2785, 2786, 2784}, - {1894, 1894, 9: 1894, 50: 1894, 475: 1894, 477: 1894, 483: 1894, 1894, 493: 1894, 1894, 496: 1894, 1894, 499: 1894, 1894, 1894, 503: 1894, 1894, 1894, 516: 1894, 1894}, - {1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 4016, 1292, 1292, 1292, 1292, 1292, 483: 1292, 1292, 487: 1292, 1292, 1292, 1292, 493: 1292, 1292, 496: 1292, 1292, 499: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 510: 1292, 512: 1292, 1292, 1292, 1292, 1292, 1292, 521: 1292, 523: 1292, 547: 1292, 550: 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 568: 1292, 1292, 597: 1292, 655: 6016, 659: 1292, 1292}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 6017, 664: 3812, 2785, 2786, 2784}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3475, 2824, 2825, 2823, 939: 6043, 1183: 6047}, + {1015, 1015, 9: 1015, 73: 1015, 485: 1015, 488: 1015, 494: 1015, 1015, 503: 1015, 1015, 506: 1015, 1015, 510: 1015, 1015, 515: 1015, 1015}, + {1904, 1904, 73: 1904, 485: 1904, 488: 1904, 494: 1904, 1904, 503: 1904, 1904, 506: 1904, 1904, 510: 1904, 1904, 513: 1904, 1904, 1904, 1904, 520: 3420, 522: 3418, 3419, 3417, 3415, 1904, 529: 1904, 748: 3416, 3414}, + {1045, 1045, 73: 1045, 485: 1045, 488: 1045, 494: 1045, 1045, 503: 1045, 1045, 506: 1045, 1045, 510: 1045, 1045, 515: 1045, 1045, 526: 1045}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 533: 6066, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 6067, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 6065, 1063: 6068, 1236: 6069, 1311: 6070}, // 3460 - {1893, 1893, 9: 1893, 50: 1893, 475: 1893, 477: 1893, 483: 1893, 1893, 493: 1893, 1893, 496: 1893, 1893, 499: 1893, 1893, 1893, 503: 1893, 1893, 1893, 516: 1893, 1893}, - {1892, 1892, 9: 1892, 50: 1892, 475: 1892, 477: 1892, 483: 1892, 1892, 493: 1892, 1892, 496: 1892, 1892, 499: 1892, 1892, 1892, 503: 1892, 1892, 1892, 516: 1892, 1892}, - {1890, 1890, 9: 1890, 50: 1890, 475: 1890, 477: 1890, 483: 1890, 1890, 493: 1890, 1890, 496: 1890, 1890, 499: 1890, 1890, 1890, 503: 1890, 1890, 1890, 516: 1890, 1890}, - {1889, 1889, 9: 1889, 50: 1889, 475: 1889, 477: 1889, 483: 1889, 1889, 493: 1889, 1889, 496: 1889, 1889, 499: 1889, 1889, 1889, 503: 1889, 1889, 1889, 516: 1889, 1889}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 6024, 664: 6023, 2785, 2786, 2784}, + {2: 894, 894, 894, 894, 894, 894, 894, 10: 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 74: 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 486: 894, 894, 489: 894, 894, 894, 496: 894, 894, 894, 894, 894, 505: 894, 508: 894, 894, 517: 894, 521: 894, 528: 894, 533: 894, 543: 894, 577: 894, 580: 894, 582: 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 595: 894, 894, 894, 894, 894, 894, 894, 894, 894, 606: 894, 608: 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 894, 662: 894, 664: 894, 759: 894, 894, 767: 894, 894, 894, 776: 894, 784: 894, 894, 894}, + {2: 893, 893, 893, 893, 893, 893, 893, 10: 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 74: 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 486: 893, 893, 489: 893, 893, 893, 496: 893, 893, 893, 893, 893, 505: 893, 508: 893, 893, 517: 893, 521: 893, 528: 893, 533: 893, 543: 893, 577: 893, 580: 893, 582: 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 595: 893, 893, 893, 893, 893, 893, 893, 893, 893, 606: 893, 608: 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 893, 662: 893, 664: 893, 759: 893, 893, 767: 893, 893, 893, 776: 893, 784: 893, 893, 893}, + {2: 892, 892, 892, 892, 892, 892, 892, 10: 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 74: 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 486: 892, 892, 489: 892, 892, 892, 496: 892, 892, 892, 892, 892, 505: 892, 508: 892, 892, 517: 892, 521: 892, 528: 892, 533: 892, 543: 892, 577: 892, 580: 892, 582: 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 595: 892, 892, 892, 892, 892, 892, 892, 892, 892, 606: 892, 608: 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 892, 662: 892, 664: 892, 759: 892, 892, 767: 892, 892, 892, 776: 892, 784: 892, 892, 892}, + {2: 891, 891, 891, 891, 891, 891, 891, 10: 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 74: 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 486: 891, 891, 489: 891, 891, 891, 496: 891, 891, 891, 891, 891, 505: 891, 508: 891, 891, 517: 891, 521: 891, 528: 891, 533: 891, 543: 891, 577: 891, 580: 891, 582: 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 595: 891, 891, 891, 891, 891, 891, 891, 891, 891, 606: 891, 608: 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 891, 662: 891, 664: 891, 759: 891, 891, 767: 891, 891, 891, 776: 891, 784: 891, 891, 891}, + {2: 890, 890, 890, 890, 890, 890, 890, 10: 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 74: 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 486: 890, 890, 489: 890, 890, 890, 496: 890, 890, 890, 890, 890, 505: 890, 508: 890, 890, 517: 890, 521: 890, 528: 890, 533: 890, 543: 890, 577: 890, 580: 890, 582: 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 595: 890, 890, 890, 890, 890, 890, 890, 890, 890, 606: 890, 608: 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 890, 662: 890, 664: 890, 759: 890, 890, 767: 890, 890, 890, 776: 890, 784: 890, 890, 890}, // 3465 - {1887, 1887, 9: 1887, 50: 1887, 475: 1887, 477: 1887, 483: 1887, 1887, 493: 1887, 1887, 496: 1887, 1887, 499: 1887, 1887, 1887, 503: 1887, 1887, 1887, 516: 1887, 1887}, - {1888, 1888, 9: 1888, 50: 1888, 475: 1888, 477: 1888, 483: 1888, 1888, 493: 1888, 1888, 496: 1888, 1888, 499: 1888, 1888, 1888, 503: 1888, 1888, 1888, 516: 1888, 1888}, - {1886, 1886, 9: 1886, 50: 1886, 475: 1886, 477: 1886, 483: 1886, 1886, 493: 1886, 1886, 496: 1886, 1886, 499: 1886, 1886, 1886, 503: 1886, 1886, 1886, 516: 1886, 1886}, - {1034, 1034}, - {1046, 1046}, + {2: 889, 889, 889, 889, 889, 889, 889, 10: 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 74: 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 486: 889, 889, 489: 889, 889, 889, 496: 889, 889, 889, 889, 889, 505: 889, 508: 889, 889, 517: 889, 521: 889, 528: 889, 533: 889, 543: 889, 577: 889, 580: 889, 582: 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 595: 889, 889, 889, 889, 889, 889, 889, 889, 889, 606: 889, 608: 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, 662: 889, 664: 889, 759: 889, 889, 767: 889, 889, 889, 776: 889, 784: 889, 889, 889}, + {2: 888, 888, 888, 888, 888, 888, 888, 10: 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 74: 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 486: 888, 888, 489: 888, 888, 888, 496: 888, 888, 888, 888, 888, 505: 888, 508: 888, 888, 517: 888, 521: 888, 528: 888, 533: 888, 543: 888, 577: 888, 580: 888, 582: 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 595: 888, 888, 888, 888, 888, 888, 888, 888, 888, 606: 888, 608: 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, 662: 888, 664: 888, 759: 888, 888, 767: 888, 888, 888, 776: 888, 784: 888, 888, 888}, + {2: 887, 887, 887, 887, 887, 887, 887, 10: 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 74: 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 486: 887, 887, 489: 887, 887, 887, 496: 887, 887, 887, 887, 887, 505: 887, 508: 887, 887, 517: 887, 521: 887, 528: 887, 533: 887, 543: 887, 577: 887, 580: 887, 582: 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 595: 887, 887, 887, 887, 887, 887, 887, 887, 887, 606: 887, 608: 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 887, 662: 887, 664: 887, 759: 887, 887, 767: 887, 887, 887, 776: 887, 784: 887, 887, 887}, + {2: 886, 886, 886, 886, 886, 886, 886, 10: 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 74: 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 486: 886, 886, 489: 886, 886, 886, 496: 886, 886, 886, 886, 886, 505: 886, 508: 886, 886, 517: 886, 521: 886, 528: 886, 533: 886, 543: 886, 577: 886, 580: 886, 582: 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 595: 886, 886, 886, 886, 886, 886, 886, 886, 886, 606: 886, 608: 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 886, 662: 886, 664: 886, 759: 886, 886, 767: 886, 886, 886, 776: 886, 784: 886, 886, 886}, + {2: 884, 884, 884, 884, 884, 884, 884, 10: 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 74: 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 6056, 6062, 6063, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 486: 884, 884, 489: 884, 884, 884, 496: 884, 884, 884, 884, 884, 505: 884, 508: 884, 884, 517: 884, 521: 884, 528: 6059, 533: 884, 543: 884, 577: 884, 580: 884, 582: 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 595: 884, 884, 884, 884, 884, 884, 884, 884, 884, 606: 884, 608: 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 884, 662: 884, 664: 3621, 759: 3619, 3620, 767: 5502, 5501, 5500, 776: 5497, 784: 6055, 6058, 6054, 800: 5977, 802: 6052, 852: 6053, 882: 6051, 1145: 6064, 6057}, // 3470 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 6040, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6041, 2785, 2786, 2784}, - {73: 6033, 237: 6032}, - {1038, 1038}, - {804: 6031}, - {1037, 1037}, + {2: 882, 882, 882, 882, 882, 882, 882, 10: 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 74: 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 486: 882, 882, 489: 882, 882, 882, 496: 882, 882, 882, 882, 882, 505: 882, 508: 882, 882, 517: 882, 521: 882, 528: 882, 533: 882, 543: 882, 577: 882, 580: 882, 582: 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 595: 882, 882, 882, 882, 882, 882, 882, 882, 882, 606: 882, 608: 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 662: 882, 664: 882, 759: 882, 882, 767: 882, 882, 882, 776: 882, 784: 882, 882, 882}, + {2: 878, 878, 878, 878, 878, 878, 878, 10: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 74: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 486: 878, 878, 489: 878, 878, 878, 496: 878, 878, 878, 878, 878, 505: 878, 508: 878, 878, 517: 878, 521: 878, 528: 878, 533: 878, 543: 878, 577: 878, 580: 878, 582: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 595: 878, 878, 878, 878, 878, 878, 878, 878, 878, 606: 878, 608: 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 662: 878, 664: 878, 759: 878, 878, 767: 878, 878, 878, 776: 878, 784: 878, 878, 878}, + {2: 877, 877, 877, 877, 877, 877, 877, 10: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 74: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 486: 877, 877, 489: 877, 877, 877, 496: 877, 877, 877, 877, 877, 505: 877, 508: 877, 877, 517: 877, 521: 877, 528: 877, 533: 877, 543: 877, 577: 877, 580: 877, 582: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 595: 877, 877, 877, 877, 877, 877, 877, 877, 877, 606: 877, 608: 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, 662: 877, 664: 877, 759: 877, 877, 767: 877, 877, 877, 776: 877, 784: 877, 877, 877}, + {2: 883, 883, 883, 883, 883, 883, 883, 10: 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 74: 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 486: 883, 883, 489: 883, 883, 883, 496: 883, 883, 883, 883, 883, 505: 883, 508: 883, 883, 517: 883, 521: 883, 528: 883, 533: 883, 543: 883, 577: 883, 580: 883, 582: 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 595: 883, 883, 883, 883, 883, 883, 883, 883, 883, 606: 883, 608: 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 883, 662: 883, 664: 883, 759: 883, 883, 767: 883, 883, 883, 776: 883, 784: 883, 883, 883}, + {1914, 1914, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 1914, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1914, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 1914, 487: 6083, 1914, 492: 6082, 494: 1914, 1914, 503: 1914, 1914, 506: 1914, 1914, 510: 1914, 1914, 513: 1914, 1914, 1914, 1914, 520: 3420, 522: 3418, 3419, 3417, 3415, 1914, 1914, 676: 6081, 2824, 2825, 2823, 748: 3416, 3414, 1233: 6080, 6079}, // 3475 - {1040, 1040, 73: 6038}, - {237: 6034}, - {1039, 1039, 73: 6036, 804: 6035}, - {1042, 1042}, - {804: 6037}, + {1918, 1918, 9: 1918, 73: 1918, 485: 1918, 488: 1918, 494: 1918, 1918, 503: 1918, 1918, 506: 1918, 1918, 510: 1918, 1918, 513: 1918, 1918, 1918, 1918, 526: 1918, 1918}, + {1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 487: 1306, 1306, 1306, 491: 1306, 1306, 1306, 1306, 1306, 498: 1306, 1306, 1306, 503: 1306, 1306, 506: 1306, 1306, 510: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 520: 1306, 522: 1306, 1306, 1306, 1306, 1306, 1306, 531: 1306, 533: 1306, 557: 1306, 560: 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 578: 1306, 1306, 607: 1306, 665: 6074, 669: 1306, 1306}, + {1908, 1908, 9: 1908, 73: 1908, 485: 1908, 488: 1908, 494: 1908, 1908, 503: 1908, 1908, 506: 1908, 1908, 510: 1908, 1908, 513: 1908, 1908, 1908, 1908, 526: 1908, 1908}, + {876, 876, 9: 6072, 73: 876, 485: 876, 488: 876, 494: 876, 876, 503: 876, 876, 506: 876, 876, 510: 876, 876, 513: 876, 876, 876, 876, 526: 876, 876}, + {1905, 1905, 73: 1905, 485: 1905, 488: 1905, 494: 1905, 1905, 503: 1905, 1905, 506: 1905, 1905, 510: 1905, 1905, 513: 1905, 1905, 1905, 1905, 526: 1905, 6037, 1078: 6071}, // 3480 - {1041, 1041}, - {804: 6039}, - {1043, 1043}, - {1661, 1661, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6042, 2785, 2786, 2784}, - {1045, 1045}, + {1046, 1046, 73: 1046, 485: 1046, 488: 1046, 494: 1046, 1046, 503: 1046, 1046, 506: 1046, 1046, 510: 1046, 1046, 513: 1046, 1046, 1046, 1046, 526: 1046}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 533: 6066, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 6067, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 6065, 1063: 6073}, + {1907, 1907, 9: 1907, 73: 1907, 485: 1907, 488: 1907, 494: 1907, 1907, 503: 1907, 1907, 506: 1907, 1907, 510: 1907, 1907, 513: 1907, 1907, 1907, 1907, 526: 1907, 1907}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 6075, 676: 6076, 2824, 2825, 2823}, + {1917, 1917, 9: 1917, 73: 1917, 485: 1917, 488: 1917, 494: 1917, 1917, 503: 1917, 1917, 506: 1917, 1917, 510: 1917, 1917, 513: 1917, 1917, 1917, 1917, 526: 1917, 1917}, // 3485 - {1044, 1044}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6044, 2785, 2786, 2784}, - {1050, 1050}, - {1054, 1054, 484: 6046}, - {571: 3375, 714: 6048, 1341: 6047}, + {1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 4065, 1305, 1305, 1305, 491: 1305, 1305, 1305, 1305, 1305, 498: 1305, 1305, 1305, 503: 1305, 1305, 506: 1305, 1305, 510: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 520: 1305, 522: 1305, 1305, 1305, 1305, 1305, 1305, 531: 1305, 533: 1305, 557: 1305, 560: 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 578: 1305, 1305, 607: 1305, 665: 6077, 669: 1305, 1305}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 6078, 676: 3861, 2824, 2825, 2823}, + {1916, 1916, 9: 1916, 73: 1916, 485: 1916, 488: 1916, 494: 1916, 1916, 503: 1916, 1916, 506: 1916, 1916, 510: 1916, 1916, 513: 1916, 1916, 1916, 1916, 526: 1916, 1916}, + {1915, 1915, 9: 1915, 73: 1915, 485: 1915, 488: 1915, 494: 1915, 1915, 503: 1915, 1915, 506: 1915, 1915, 510: 1915, 1915, 513: 1915, 1915, 1915, 1915, 526: 1915, 1915}, + {1913, 1913, 9: 1913, 73: 1913, 485: 1913, 488: 1913, 494: 1913, 1913, 503: 1913, 1913, 506: 1913, 1913, 510: 1913, 1913, 513: 1913, 1913, 1913, 1913, 526: 1913, 1913}, // 3490 - {1053, 1053, 9: 6049}, - {1052, 1052, 9: 1052}, - {571: 3375, 714: 6050}, - {1051, 1051, 9: 1051}, - {503: 6052}, + {1912, 1912, 9: 1912, 73: 1912, 485: 1912, 488: 1912, 494: 1912, 1912, 503: 1912, 1912, 506: 1912, 1912, 510: 1912, 1912, 513: 1912, 1912, 1912, 1912, 526: 1912, 1912}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 6085, 676: 6084, 2824, 2825, 2823}, + {1910, 1910, 9: 1910, 73: 1910, 485: 1910, 488: 1910, 494: 1910, 1910, 503: 1910, 1910, 506: 1910, 1910, 510: 1910, 1910, 513: 1910, 1910, 1910, 1910, 526: 1910, 1910}, + {1911, 1911, 9: 1911, 73: 1911, 485: 1911, 488: 1911, 494: 1911, 1911, 503: 1911, 1911, 506: 1911, 1911, 510: 1911, 1911, 513: 1911, 1911, 1911, 1911, 526: 1911, 1911}, + {1909, 1909, 9: 1909, 73: 1909, 485: 1909, 488: 1909, 494: 1909, 1909, 503: 1909, 1909, 506: 1909, 1909, 510: 1909, 1909, 513: 1909, 1909, 1909, 1909, 526: 1909, 1909}, // 3495 - {478: 6054, 571: 3375, 714: 6055, 1290: 6053}, - {1057, 1057}, - {1056, 1056}, - {1055, 1055}, - {2: 1369, 1369, 1369, 1369, 1369, 1369, 1369, 10: 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 51: 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 499: 6057, 1073: 6058}, + {1047, 1047}, + {1059, 1059}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 6101, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6102, 2824, 2825, 2823}, + {75: 6094, 246: 6093}, + {1051, 1051}, // 3500 - {2: 1368, 1368, 1368, 1368, 1368, 1368, 1368, 10: 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 51: 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6059}, - {160: 936, 476: 936, 936, 491: 5503, 498: 936, 509: 936, 572: 936, 649: 936, 864: 6060}, - {160: 6068, 476: 6061, 2607, 498: 6069, 509: 6067, 572: 2605, 649: 2601, 713: 6066, 752: 6064, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 6065, 6063, 982: 6062, 1072: 6070}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 2349, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 2608, 2607, 498: 2606, 572: 2605, 649: 2601, 664: 4169, 2785, 2786, 2784, 713: 5928, 748: 4170, 752: 3907, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 3909, 3908, 812: 5137, 1005: 6082}, + {814: 6092}, + {1050, 1050}, + {1053, 1053, 75: 6099}, + {246: 6095}, + {1052, 1052, 75: 6097, 814: 6096}, // 3505 - {476: 3923, 844: 6079, 980: 6078}, - {1361, 1361, 475: 1361, 484: 1361}, - {1360, 1360, 475: 1360, 483: 829, 1360, 493: 829, 829}, - {1359, 1359, 475: 1359, 484: 1359}, - {1358, 1358, 475: 1358, 483: 828, 1358, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, + {1055, 1055}, + {814: 6098}, + {1054, 1054}, + {814: 6100}, + {1056, 1056}, // 3510 - {1344, 1344, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 1344, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 1344, 484: 1344, 664: 4169, 2785, 2786, 2784, 748: 6072, 1009: 6073, 1203: 6071}, - {476: 1356}, - {476: 1355, 578: 3922, 917: 3921, 981: 3920}, - {1339, 1339, 484: 1339}, - {1357, 1357, 9: 6076, 475: 1357, 484: 1357}, + {1683, 1683, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6103, 2824, 2825, 2823}, + {1058, 1058}, + {1057, 1057}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6105, 2824, 2825, 2823}, + {1063, 1063}, // 3515 - {502: 6074}, - {1343, 1343, 9: 1343, 475: 1343, 484: 1343}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3929, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3925, 801: 6075}, - {1345, 1345, 9: 1345, 475: 1345, 484: 1345}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 6072, 1009: 6077}, + {1067, 1067, 495: 6107}, + {582: 3424, 724: 6109, 1354: 6108}, + {1066, 1066, 9: 6110}, + {1065, 1065, 9: 1065}, + {582: 3424, 724: 6111}, // 3520 - {1342, 1342, 9: 1342, 475: 1342, 484: 1342}, - {1362, 1362, 9: 6080, 475: 1362, 484: 1362}, - {1354, 1354, 9: 1354, 475: 1354, 484: 1354}, - {476: 3923, 844: 6081}, - {1353, 1353, 9: 1353, 475: 1353, 484: 1353}, + {1064, 1064, 9: 1064}, + {514: 6113}, + {487: 6115, 582: 3424, 724: 6116, 1303: 6114}, + {1070, 1070}, + {1069, 1069}, // 3525 - {50: 6083}, - {160: 6068, 476: 2608, 2607, 498: 6069, 572: 2605, 649: 2601, 713: 6088, 752: 6086, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 6087, 6085, 982: 6084}, - {476: 3923, 844: 6079, 980: 6089}, - {1366, 1366, 475: 1366, 484: 1366}, - {1365, 1365, 475: 1365, 483: 829, 1365, 493: 829, 829}, + {1068, 1068}, + {2: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 10: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 74: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 510: 6118, 1085: 6119}, + {2: 1381, 1381, 1381, 1381, 1381, 1381, 1381, 10: 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 74: 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6120}, + {167: 949, 486: 949, 488: 949, 501: 5564, 509: 949, 519: 949, 581: 949, 658: 949, 874: 6121}, // 3530 - {1364, 1364, 475: 1364, 484: 1364}, - {1363, 1363, 475: 1363, 483: 828, 1363, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {1367, 1367, 9: 6080, 475: 1367, 484: 1367}, - {2: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 10: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 51: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 492: 1071, 499: 1071, 757: 5441, 5440, 5439, 842: 5442, 891: 6091}, - {2: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 10: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 51: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 492: 4217, 499: 1873, 859: 6092}, + {167: 6129, 486: 6122, 488: 2641, 509: 6130, 519: 6128, 581: 2639, 658: 2635, 723: 6127, 762: 6125, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 6126, 6124, 992: 6123, 1084: 6131}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 2374, 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 2642, 488: 2641, 509: 2640, 581: 2639, 658: 2635, 676: 4218, 2824, 2825, 2823, 723: 5989, 758: 4219, 762: 3956, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 3958, 3957, 823: 5196, 1016: 6143}, + {486: 3972, 854: 6140, 990: 6139}, + {1374, 1374, 485: 1374, 495: 1374}, + {1373, 1373, 485: 1373, 494: 842, 1373, 503: 842, 842}, // 3535 - {2: 1369, 1369, 1369, 1369, 1369, 1369, 1369, 10: 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 51: 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 499: 6057, 1073: 6093}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6094}, - {160: 936, 476: 936, 936, 491: 5503, 498: 936, 509: 936, 572: 936, 649: 936, 864: 6095}, - {160: 6068, 476: 6061, 2607, 498: 6069, 509: 6067, 572: 2605, 649: 2601, 713: 6066, 752: 6064, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 6065, 6063, 982: 6062, 1072: 6096}, - {1341, 1341, 475: 6098, 484: 1341, 1268: 6097}, + {1372, 1372, 485: 1372, 495: 1372}, + {1371, 1371, 485: 1371, 494: 841, 1371, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {1357, 1357, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 1357, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 1357, 495: 1357, 676: 4218, 2824, 2825, 2823, 758: 6133, 1020: 6134, 1216: 6132}, + {486: 1369}, + {486: 1368, 588: 3971, 928: 3970, 991: 3969}, // 3540 - {1370, 1370, 484: 1370}, - {208: 6099}, - {584: 6100}, - {657: 6101}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 5557, 896: 5558, 930: 6102}, + {1352, 1352, 495: 1352}, + {1370, 1370, 9: 6137, 485: 1370, 495: 1370}, + {512: 6135}, + {1356, 1356, 9: 1356, 485: 1356, 495: 1356}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3978, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3974, 811: 6136}, // 3545 - {1340, 1340, 9: 5560, 484: 1340}, - {1374, 1374, 476: 6111, 655: 1849}, - {1375, 1375}, - {655: 6106}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6107, 2785, 2786, 2784}, + {1358, 1358, 9: 1358, 485: 1358, 495: 1358}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 6133, 1020: 6138}, + {1355, 1355, 9: 1355, 485: 1355, 495: 1355}, + {1375, 1375, 9: 6141, 485: 1375, 495: 1375}, + {1367, 1367, 9: 1367, 485: 1367, 495: 1367}, // 3550 - {1373, 1373, 476: 6108}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 6109}, - {50: 6110}, - {1371, 1371}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 1936, 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 3614, 782: 3778, 830: 6112}, + {486: 3972, 854: 6142}, + {1366, 1366, 9: 1366, 485: 1366, 495: 1366}, + {73: 6144}, + {167: 6129, 486: 2642, 488: 2641, 509: 6130, 581: 2639, 658: 2635, 723: 6149, 762: 6147, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 6148, 6146, 992: 6145}, + {486: 3972, 854: 6140, 990: 6150}, // 3555 - {50: 6113}, - {1372, 1372}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6275, 2785, 2786, 2784}, - {613, 613, 501: 6272, 521: 6271, 1306: 6270}, - {18: 6258, 104: 6255, 140: 6260, 172: 6259, 198: 6257, 572: 6254, 585: 6256}, + {1379, 1379, 485: 1379, 495: 1379}, + {1378, 1378, 485: 1378, 494: 842, 1378, 503: 842, 842}, + {1377, 1377, 485: 1377, 495: 1377}, + {1376, 1376, 485: 1376, 494: 841, 1376, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {1380, 1380, 9: 6141, 485: 1380, 495: 1380}, // 3560 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 6243, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6244}, - {690, 690, 497: 6238}, - {127: 6237}, - {103: 3970, 112: 3969, 126: 6232, 219: 6231, 839: 6233}, - {686, 686}, + {2: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 10: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 74: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 502: 1084, 510: 1084, 767: 5502, 5501, 5500, 852: 5503, 902: 6152}, + {2: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 10: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 74: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 502: 4266, 510: 1896, 869: 6153}, + {2: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 10: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 74: 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 1382, 510: 6118, 1085: 6154}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6155}, + {167: 949, 486: 949, 488: 949, 501: 5564, 509: 949, 519: 949, 581: 949, 658: 949, 874: 6156}, // 3565 - {678, 678, 188: 6213, 232: 6214, 242: 6215, 245: 6212, 267: 6217, 277: 6216, 291: 6219, 294: 6218, 496: 678, 678, 504: 678, 654: 6220, 1138: 6211, 1309: 6210, 6209}, - {684, 684}, - {683, 683}, - {615, 615, 270: 6200, 497: 6199, 501: 615, 521: 615}, - {503: 661, 547: 661}, + {167: 6129, 486: 6122, 488: 2641, 509: 6130, 519: 6128, 581: 2639, 658: 2635, 723: 6127, 762: 6125, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 6126, 6124, 992: 6123, 1084: 6157}, + {1354, 1354, 485: 6159, 495: 1354, 1281: 6158}, + {1383, 1383, 495: 1383}, + {216: 6160}, + {594: 6161}, // 3570 - {503: 660, 547: 660}, - {503: 659, 547: 659}, - {656, 656, 501: 656, 521: 656}, - {655, 655, 501: 655, 521: 655}, - {654, 654, 501: 654, 521: 654}, + {667: 6162}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 5618, 907: 5619, 941: 6163}, + {1353, 1353, 9: 5621, 495: 1353}, + {1387, 1387, 486: 6172, 665: 1872}, + {1388, 1388}, // 3575 - {653, 653, 501: 653, 521: 653}, - {126: 6197}, - {503: 6167, 547: 6168, 809: 6192}, - {103: 603, 112: 603, 213: 6165, 1098: 6186}, - {476: 6181}, + {665: 6167}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6168, 2824, 2825, 2823}, + {1386, 1386, 486: 6169}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 6170}, + {73: 6171}, // 3580 - {644, 644, 501: 644, 521: 644}, - {642, 642, 501: 642, 521: 642}, - {127: 6179, 144: 6180, 204: 6178}, - {638, 638, 501: 638, 521: 638}, - {601, 601, 501: 601, 503: 6167, 521: 601, 547: 6168, 809: 6170, 846: 6177}, + {1384, 1384}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 1959, 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 3663, 793: 3827, 840: 6173}, + {73: 6174}, + {1385, 1385}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6336, 2824, 2825, 2823}, // 3585 - {127: 6176}, - {127: 6175}, - {127: 6174}, - {127: 6173}, - {127: 6172}, + {626, 626, 513: 6333, 531: 6332, 1319: 6331}, + {18: 6319, 106: 6316, 147: 6321, 179: 6320, 206: 6318, 581: 6315, 595: 6317}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 6304, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6305}, + {703, 703, 507: 6299}, + {134: 6298}, // 3590 - {601, 601, 501: 601, 503: 6167, 521: 601, 547: 6168, 809: 6170, 846: 6169}, - {630, 630, 501: 630, 521: 630}, - {629, 629, 501: 629, 521: 629}, - {628, 628, 501: 628, 521: 628}, - {627, 627, 501: 627, 521: 627}, + {105: 4019, 128: 4018, 132: 6293, 226: 6292, 849: 6294}, + {699, 699}, + {691, 691, 113: 6273, 195: 6274, 240: 6275, 251: 6276, 276: 6278, 286: 6277, 300: 6280, 303: 6279, 506: 691, 691, 515: 691, 664: 6281, 1152: 6272, 1322: 6271, 6270}, + {697, 697}, + {696, 696}, // 3595 - {626, 626, 501: 626, 521: 626}, - {625, 625, 501: 625, 521: 625}, - {624, 624, 501: 624, 521: 624}, - {623, 623, 501: 623, 521: 623}, - {622, 622, 501: 622, 521: 622}, + {628, 628, 279: 6261, 507: 6260, 513: 628, 531: 628}, + {514: 674, 557: 674}, + {514: 673, 557: 673}, + {514: 672, 557: 672}, + {669, 669, 513: 669, 531: 669}, // 3600 - {621, 621, 501: 621, 521: 621}, - {620, 620, 501: 620, 521: 620}, - {127: 6166}, - {618, 618, 501: 618, 521: 618}, - {617, 617, 501: 617, 521: 617}, + {668, 668, 513: 668, 531: 668}, + {667, 667, 513: 667, 531: 667}, + {666, 666, 513: 666, 531: 666}, + {132: 6258}, + {514: 6228, 557: 6229, 819: 6253}, // 3605 - {616, 616, 501: 616, 521: 616}, - {127: 609, 144: 609, 204: 609}, - {127: 608, 144: 608, 162: 608, 204: 608}, - {103: 602, 112: 602, 126: 602, 219: 602}, - {619, 619, 501: 619, 521: 619}, + {105: 616, 128: 616, 221: 6226, 1110: 6247}, + {486: 6242}, + {657, 657, 513: 657, 531: 657}, + {655, 655, 513: 655, 531: 655}, + {134: 6240, 151: 6241, 212: 6239}, // 3610 - {2: 658, 658, 658, 658, 658, 658, 658, 10: 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 51: 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658, 658}, - {2: 657, 657, 657, 657, 657, 657, 657, 10: 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 51: 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657, 657}, - {631, 631, 501: 631, 521: 631}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6171}, - {600, 600, 501: 600, 521: 600}, + {651, 651, 513: 651, 531: 651}, + {614, 614, 513: 614, 6228, 531: 614, 557: 6229, 819: 6231, 856: 6238}, + {134: 6237}, + {134: 6236}, + {134: 6235}, // 3615 - {632, 632, 501: 632, 521: 632}, - {633, 633, 501: 633, 521: 633}, - {634, 634, 501: 634, 521: 634}, - {635, 635, 501: 635, 521: 635}, - {636, 636, 501: 636, 521: 636}, + {134: 6234}, + {134: 6233}, + {614, 614, 513: 614, 6228, 531: 614, 557: 6229, 819: 6231, 856: 6230}, + {643, 643, 513: 643, 531: 643}, + {642, 642, 513: 642, 531: 642}, // 3620 - {637, 637, 501: 637, 521: 637}, - {641, 641, 501: 641, 521: 641}, - {640, 640, 501: 640, 521: 640}, - {639, 639, 501: 639, 521: 639}, - {523: 6182}, + {641, 641, 513: 641, 531: 641}, + {640, 640, 513: 640, 531: 640}, + {639, 639, 513: 639, 531: 639}, + {638, 638, 513: 638, 531: 638}, + {637, 637, 513: 637, 531: 637}, // 3625 - {50: 6183}, - {183: 6185, 309: 6184}, - {645, 645, 501: 645, 521: 645}, - {643, 643, 501: 643, 521: 643}, - {103: 3970, 112: 3969, 839: 6187}, + {636, 636, 513: 636, 531: 636}, + {635, 635, 513: 635, 531: 635}, + {634, 634, 513: 634, 531: 634}, + {633, 633, 513: 633, 531: 633}, + {134: 6227}, // 3630 - {503: 6167, 547: 6168, 809: 6189, 1140: 6188}, - {601, 601, 501: 601, 503: 6167, 521: 601, 547: 6168, 809: 6170, 846: 6191}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6190}, - {599, 599, 501: 599, 503: 599, 521: 599, 547: 599}, - {646, 646, 501: 646, 521: 646}, + {631, 631, 513: 631, 531: 631}, + {630, 630, 513: 630, 531: 630}, + {629, 629, 513: 629, 531: 629}, + {134: 622, 151: 622, 212: 622}, + {134: 621, 151: 621, 169: 621, 212: 621}, // 3635 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6193, 2785, 2786, 2784, 740: 6194}, - {1069, 1069, 501: 1069, 503: 6167, 521: 1069, 547: 6168, 655: 3952, 809: 6195}, - {649, 649, 501: 649, 521: 649}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6196, 2785, 2786, 2784}, - {648, 648, 501: 648, 521: 648}, + {105: 615, 128: 615, 132: 615, 226: 615}, + {632, 632, 513: 632, 531: 632}, + {2: 671, 671, 671, 671, 671, 671, 671, 10: 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 74: 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671, 671}, + {2: 670, 670, 670, 670, 670, 670, 670, 10: 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 74: 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670, 670}, + {644, 644, 513: 644, 531: 644}, // 3640 - {601, 601, 501: 601, 503: 6167, 521: 601, 547: 6168, 809: 6170, 846: 6198}, - {651, 651, 501: 651, 521: 651}, - {572: 6204, 585: 6201, 838: 6203, 1307: 6202}, - {614, 614, 501: 614, 521: 614}, - {2: 2085, 2085, 2085, 2085, 2085, 2085, 2085, 10: 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 51: 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 2085, 482: 2085, 487: 2085, 508: 2085, 2085, 523: 2085, 567: 2085, 650: 2085}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6232}, + {613, 613, 513: 613, 531: 613}, + {645, 645, 513: 645, 531: 645}, + {646, 646, 513: 646, 531: 646}, + {647, 647, 513: 647, 531: 647}, // 3645 - {682, 682}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6208}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6205}, - {680, 680, 491: 6206}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6207, 2785, 2786, 2784}, + {648, 648, 513: 648, 531: 648}, + {649, 649, 513: 649, 531: 649}, + {650, 650, 513: 650, 531: 650}, + {654, 654, 513: 654, 531: 654}, + {653, 653, 513: 653, 531: 653}, // 3650 - {679, 679}, - {681, 681}, - {665, 665, 496: 665, 6227, 504: 665, 1308: 6226}, - {677, 677, 9: 6224, 496: 677, 677, 504: 677}, - {676, 676, 9: 676, 496: 676, 676, 504: 676}, + {652, 652, 513: 652, 531: 652}, + {533: 6243}, + {73: 6244}, + {190: 6246, 319: 6245}, + {658, 658, 513: 658, 531: 658}, // 3655 - {674, 674, 9: 674, 496: 674, 674, 504: 674}, - {673, 673, 9: 673, 496: 673, 673, 504: 673}, - {356: 6223}, - {396: 6222}, - {346: 6221}, + {656, 656, 513: 656, 531: 656}, + {105: 4019, 128: 4018, 849: 6248}, + {514: 6228, 557: 6229, 819: 6250, 1154: 6249}, + {614, 614, 513: 614, 6228, 531: 614, 557: 6229, 819: 6231, 856: 6252}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6251}, // 3660 - {669, 669, 9: 669, 496: 669, 669, 504: 669}, - {668, 668, 9: 668, 496: 668, 668, 504: 668}, - {667, 667, 9: 667, 496: 667, 667, 504: 667}, - {666, 666, 9: 666, 496: 666, 666, 504: 666}, - {670, 670, 9: 670, 496: 670, 670, 504: 670}, + {612, 612, 513: 612, 612, 531: 612, 557: 612}, + {659, 659, 513: 659, 531: 659}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6254, 2824, 2825, 2823, 751: 6255}, + {1082, 1082, 513: 1082, 6228, 531: 1082, 557: 6229, 665: 4001, 819: 6256}, + {662, 662, 513: 662, 531: 662}, // 3665 - {671, 671, 9: 671, 496: 671, 671, 504: 671}, - {672, 672, 9: 672, 496: 672, 672, 504: 672}, - {188: 6213, 232: 6214, 242: 6215, 245: 6212, 267: 6217, 277: 6216, 291: 6219, 294: 6218, 654: 6220, 1138: 6225}, - {675, 675, 9: 675, 496: 675, 675, 504: 675}, - {883, 883, 496: 2751, 504: 2752, 773: 2753, 834: 6230}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6257, 2824, 2825, 2823}, + {661, 661, 513: 661, 531: 661}, + {614, 614, 513: 614, 6228, 531: 614, 557: 6229, 819: 6231, 856: 6259}, + {664, 664, 513: 664, 531: 664}, + {581: 6265, 595: 6262, 848: 6264, 1320: 6263}, // 3670 - {142: 6228}, - {511: 2759, 737: 4079, 767: 6229}, - {664, 664, 496: 664, 504: 664}, - {685, 685}, - {687, 687}, + {627, 627, 513: 627, 531: 627}, + {2: 2109, 2109, 2109, 2109, 2109, 2109, 2109, 10: 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 74: 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 2109, 490: 2109, 493: 2109, 508: 2109, 519: 2109, 533: 2109, 577: 2109, 660: 2109}, + {695, 695}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6269}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6266}, // 3675 - {601, 601, 501: 601, 503: 6167, 521: 601, 547: 6168, 809: 6170, 846: 6236}, - {503: 6167, 547: 6168, 809: 6189, 1140: 6234}, - {601, 601, 501: 601, 503: 6167, 521: 601, 547: 6168, 809: 6170, 846: 6235}, - {647, 647, 501: 647, 521: 647}, - {652, 652, 501: 652, 521: 652}, + {693, 693, 501: 6267}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6268, 2824, 2825, 2823}, + {692, 692}, + {694, 694}, + {678, 678, 506: 678, 6288, 515: 678, 1321: 6287}, // 3680 - {688, 688}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 6239}, - {663, 663, 484: 6241, 1342: 6240}, - {689, 689}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5777, 5775, 866: 6242}, + {690, 690, 9: 6285, 506: 690, 690, 515: 690}, + {689, 689, 9: 689, 506: 689, 689, 515: 689}, + {687, 687, 9: 687, 506: 687, 687, 515: 687}, + {686, 686, 9: 686, 506: 686, 686, 515: 686}, + {364: 6284}, // 3685 - {662, 662, 9: 5778}, - {601, 601, 89: 1751, 165: 1751, 491: 1751, 501: 601, 503: 6167, 521: 601, 547: 6168, 652: 1751, 655: 1751, 809: 6170, 846: 6253}, - {89: 936, 165: 6246, 491: 5503, 652: 936, 864: 6245}, - {89: 6247, 652: 6248}, - {692, 692}, + {406: 6283}, + {355: 6282}, + {682, 682, 9: 682, 506: 682, 682, 515: 682}, + {681, 681, 9: 681, 506: 681, 681, 515: 681}, + {680, 680, 9: 680, 506: 680, 680, 515: 680}, // 3690 - {257, 257, 501: 2745, 795: 2746, 6252}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6249, 2785, 2786, 2784}, - {89: 6250}, - {257, 257, 501: 2745, 795: 2746, 6251}, - {691, 691}, + {679, 679, 9: 679, 506: 679, 679, 515: 679}, + {683, 683, 9: 683, 506: 683, 683, 515: 683}, + {684, 684, 9: 684, 506: 684, 684, 515: 684}, + {685, 685, 9: 685, 506: 685, 685, 515: 685}, + {113: 6273, 195: 6274, 240: 6275, 251: 6276, 276: 6278, 286: 6277, 300: 6280, 303: 6279, 664: 6281, 1152: 6286}, // 3695 - {693, 693}, - {650, 650, 501: 650, 521: 650}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6269}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6268}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6266}, + {688, 688, 9: 688, 506: 688, 688, 515: 688}, + {896, 896, 506: 2790, 515: 2791, 783: 2792, 844: 6291}, + {149: 6289}, + {521: 2798, 747: 4128, 777: 6290}, + {677, 677, 506: 677, 515: 677}, // 3700 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6265}, - {167: 6263}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 6262}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6261, 2785, 2786, 2784}, - {694, 694}, - // 3705 - {695, 695}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5030, 2785, 2786, 2784, 890: 6264}, - {696, 696}, - {697, 697}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6267}, - // 3710 {698, 698}, - {699, 699}, {700, 700}, + {614, 614, 513: 614, 6228, 531: 614, 557: 6229, 819: 6231, 856: 6297}, + {514: 6228, 557: 6229, 819: 6250, 1154: 6295}, + {614, 614, 513: 614, 6228, 531: 614, 557: 6229, 819: 6231, 856: 6296}, + // 3705 + {660, 660, 513: 660, 531: 660}, + {665, 665, 513: 665, 531: 665}, {701, 701}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 3375, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3374, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 6274, 3279, 3360, 3278, 3275}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 6300}, + {676, 676, 495: 6302, 1355: 6301}, + // 3710 + {702, 702}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5838, 5836, 877: 6303}, + {675, 675, 9: 5839}, + {614, 614, 91: 1773, 172: 1773, 501: 1773, 513: 614, 6228, 531: 614, 557: 6229, 661: 1773, 665: 1773, 819: 6231, 856: 6314}, + {91: 949, 172: 6307, 501: 5564, 661: 949, 874: 6306}, // 3715 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 2864, 2812, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 2893, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 2898, 2825, 2789, 2807, 2972, 3055, 3044, 2842, 2854, 2965, 2966, 2961, 2919, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 2900, 2885, 2881, 2973, 2997, 2783, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 2904, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 2823, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 2889, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 2890, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 2960, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 2848, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 2774, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 2906, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 2775, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3170, 2902, 3171, 3172, 2801, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3185, 3186, 3237, 3236, 3081, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 2942, 2959, 3082, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3203, 3204, 3205, 2955, 3156, 3215, 3216, 3227, 3211, 3212, 3213, 3246, 2901, 476: 3286, 478: 3265, 3284, 2778, 482: 3294, 485: 3298, 3302, 488: 3283, 3282, 3321, 495: 3256, 498: 3295, 507: 3301, 3319, 511: 3260, 533: 3290, 567: 3297, 570: 3320, 2776, 573: 3303, 3255, 3257, 3259, 3258, 3287, 3263, 3277, 3268, 3289, 3264, 585: 3296, 3288, 3293, 3299, 3309, 3362, 3310, 3311, 595: 3262, 3340, 598: 3280, 3281, 3335, 3336, 3337, 3338, 3339, 3291, 3317, 3322, 3332, 3333, 3326, 3341, 3342, 3343, 3327, 3345, 3346, 3328, 3344, 3323, 3331, 3329, 3315, 3347, 3348, 3292, 3352, 3304, 3305, 3308, 3351, 3357, 3356, 3358, 3355, 3359, 3354, 3353, 3350, 3300, 3349, 3307, 3306, 3312, 3313, 651: 2779, 664: 3270, 2785, 2786, 2784, 713: 3285, 3361, 3271, 3276, 3261, 3334, 3274, 3272, 3273, 3314, 3325, 3324, 3318, 3316, 3330, 3269, 3279, 3360, 3278, 3275, 2782, 2781, 2780, 6273}, - {611, 611, 510: 3371, 512: 3369, 3370, 3368, 3366, 738: 3367, 3365}, - {612, 612, 487: 3376, 597: 3377}, - {1972, 1972, 183: 6277, 572: 1972, 1271: 6276}, - {577, 577, 572: 6279, 974: 6278}, + {91: 6308, 661: 6309}, + {705, 705}, + {266, 266, 513: 2784, 806: 2785, 6313}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6310, 2824, 2825, 2823}, + {91: 6311}, // 3720 - {1971, 1971, 572: 1971}, - {1977, 1977}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 6280}, - {576, 576, 9: 3950}, - {2: 1974, 1974, 1974, 1974, 1974, 1974, 1974, 10: 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 51: 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 1974, 567: 6283, 1235: 6282}, + {266, 266, 513: 2784, 806: 2785, 6312}, + {704, 704}, + {706, 706}, + {663, 663, 513: 663, 531: 663}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6330}, // 3725 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6286, 2785, 2786, 2784}, - {479: 4115, 4114, 815: 6284}, - {196: 6285}, - {2: 1973, 1973, 1973, 1973, 1973, 1973, 1973, 10: 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 51: 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973, 1973}, - {1980, 1980}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6329}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6327}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6326}, + {174: 6324}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 6323}, // 3730 - {2: 1976, 1976, 1976, 1976, 1976, 1976, 1976, 10: 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 51: 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 1976, 567: 6289, 1236: 6288}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6291, 2785, 2786, 2784}, - {196: 6290}, - {2: 1975, 1975, 1975, 1975, 1975, 1975, 1975, 10: 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 51: 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975, 1975}, - {1981, 1981}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6322, 2824, 2825, 2823}, + {707, 707}, + {708, 708}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5089, 2824, 2825, 2823, 875: 6325}, + {709, 709}, // 3735 - {511: 2759, 737: 6293}, - {1983, 1983}, - {503: 6303}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 6298, 664: 5434, 2785, 2786, 2784, 813: 6300, 1212: 6299}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 6297}, + {710, 710}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6328}, + {711, 711}, + {712, 712}, + {713, 713}, // 3740 - {9: 3950, 503: 2030, 653: 2030}, - {503: 2032, 653: 2032}, - {9: 6301, 503: 2031, 653: 2031}, - {9: 2029, 503: 2029, 653: 2029}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6302}, + {714, 714}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 3424, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3423, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 6335, 3328, 3409, 3327, 3324}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 2903, 2851, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 2933, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 2864, 2938, 3012, 3095, 2828, 2846, 3045, 2893, 3005, 3006, 3001, 2959, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 2940, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 2822, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 2944, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 2862, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 2929, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 2930, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3000, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 2887, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 2813, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 2946, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 2814, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3214, 2942, 3215, 3216, 2840, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3229, 3230, 3281, 3280, 3121, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 2982, 2999, 3122, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3247, 3248, 3249, 2995, 3200, 3259, 3260, 3271, 3255, 3256, 3257, 3290, 2941, 486: 3335, 3314, 489: 3333, 3343, 2817, 496: 3347, 3351, 3332, 3331, 3370, 505: 3305, 508: 3368, 3344, 517: 3350, 521: 3309, 543: 3339, 577: 3346, 580: 3369, 582: 2815, 3352, 3304, 3306, 3308, 3307, 3336, 3312, 3326, 3313, 3317, 3338, 595: 3345, 3337, 3342, 3348, 3358, 3411, 3359, 3360, 3311, 606: 3389, 608: 3329, 3330, 3384, 3385, 3386, 3387, 3388, 3340, 3366, 3371, 3381, 3382, 3375, 3390, 3391, 3392, 3376, 3394, 3395, 3377, 3393, 3372, 3380, 3378, 3364, 3396, 3397, 3341, 3401, 3353, 3354, 3357, 3400, 3406, 3405, 3407, 3404, 3408, 3403, 3402, 3399, 3349, 3398, 3356, 3355, 3361, 3362, 662: 2818, 676: 3319, 2824, 2825, 2823, 723: 3334, 3410, 3320, 3325, 3310, 3383, 3323, 3321, 3322, 3363, 3374, 3373, 3367, 3365, 3379, 3318, 3328, 3409, 3327, 3324, 2821, 2820, 2819, 6334}, + {624, 624, 520: 3420, 522: 3418, 3419, 3417, 3415, 748: 3416, 3414}, + {625, 625, 493: 3425, 607: 3426}, // 3745 - {9: 2028, 503: 2028, 653: 2028}, - {478: 6304}, - {2027, 2027, 17: 2027, 51: 2027, 53: 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 475: 2027, 656: 2027, 902: 6305}, - {2033, 2033, 17: 6332, 51: 6308, 53: 6328, 6321, 6311, 6307, 6315, 6319, 6331, 6314, 6320, 6318, 6316, 6329, 6322, 6310, 6330, 6309, 6312, 6313, 6317, 475: 6323, 656: 6333, 898: 6325, 6324, 6327, 6306, 903: 6326}, - {2026, 2026, 17: 2026, 51: 2026, 53: 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 475: 2026, 656: 2026}, + {1995, 1995, 190: 6338, 581: 1995, 1284: 6337}, + {590, 590, 581: 6340, 984: 6339}, + {1994, 1994, 581: 1994}, + {2000, 2000}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 6341}, // 3750 - {502: 2025, 511: 2025}, - {502: 2024, 511: 2024}, - {502: 2023, 511: 2023, 574: 2023, 2023}, - {502: 2022, 511: 2022, 574: 2022, 2022}, - {502: 2021, 511: 2021, 574: 2021, 2021}, + {589, 589, 9: 3999}, + {2: 1997, 1997, 1997, 1997, 1997, 1997, 1997, 10: 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 74: 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 577: 6344, 1248: 6343}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6347, 2824, 2825, 2823}, + {489: 4164, 491: 4163, 826: 6345}, + {204: 6346}, // 3755 - {502: 2020, 511: 2020, 574: 2020, 2020}, - {502: 2019, 511: 2019, 574: 2019, 2019}, - {502: 2018, 511: 2018, 574: 2018, 2018}, - {502: 2017, 511: 2017, 574: 2017, 2017}, - {502: 2016, 511: 2016, 574: 2016, 2016}, + {2: 1996, 1996, 1996, 1996, 1996, 1996, 1996, 10: 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 74: 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996}, + {2003, 2003}, + {2: 1999, 1999, 1999, 1999, 1999, 1999, 1999, 10: 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 74: 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 577: 6350, 1249: 6349}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6352, 2824, 2825, 2823}, + {204: 6351}, // 3760 - {478: 2015, 502: 2015}, - {478: 2014, 502: 2014}, - {478: 2013, 502: 2013}, - {478: 2012, 502: 2012}, - {2: 2011, 2011, 2011, 2011, 2011, 2011, 2011, 10: 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 51: 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 478: 2011, 492: 2011, 502: 2011, 507: 2011}, + {2: 1998, 1998, 1998, 1998, 1998, 1998, 1998, 10: 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 74: 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998}, + {2004, 2004}, + {521: 2798, 747: 6354}, + {2006, 2006}, + {514: 6364}, // 3765 - {2: 2010, 2010, 2010, 2010, 2010, 2010, 2010, 10: 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 51: 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 478: 2010, 492: 2010, 502: 2010, 507: 2010}, - {208: 6373}, - {502: 4307, 511: 2064, 741: 6371}, - {502: 4307, 511: 2064, 574: 2064, 2064, 741: 6369}, - {478: 2064, 502: 4307, 741: 6367}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 6359, 676: 5495, 2824, 2825, 2823, 824: 6361, 1225: 6360}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 6358}, + {9: 3999, 514: 2053, 663: 2053}, + {514: 2055, 663: 2055}, + {9: 6362, 514: 2054, 663: 2054}, // 3770 - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 492: 2064, 502: 4307, 507: 2064, 741: 6362}, - {478: 2064, 502: 4307, 511: 2064, 741: 6357}, - {478: 2064, 502: 4307, 511: 2064, 741: 6354}, - {502: 4307, 511: 2064, 741: 6349}, - {103: 2064, 112: 2064, 502: 4307, 511: 2064, 741: 6346}, + {9: 2052, 514: 2052, 663: 2052}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6363}, + {9: 2051, 514: 2051, 663: 2051}, + {487: 6365}, + {2050, 2050, 17: 2050, 52: 2050, 54: 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 485: 2050, 666: 2050, 913: 6366}, // 3775 - {189: 2064, 2064, 194: 2064, 502: 4307, 511: 2064, 574: 2064, 2064, 741: 6343}, - {189: 2064, 2064, 194: 2064, 502: 4307, 511: 2064, 574: 2064, 2064, 741: 6334}, - {189: 6340, 6341, 194: 6342, 511: 2759, 574: 6338, 6339, 737: 6337, 932: 6335, 1101: 6336}, - {1994, 1994, 17: 1994, 51: 1994, 53: 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 1994, 475: 1994, 656: 1994}, - {1993, 1993, 17: 1993, 51: 1993, 53: 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 475: 1993, 656: 1993}, + {2056, 2056, 17: 6393, 52: 6369, 54: 6389, 6382, 6372, 6368, 6376, 6380, 6392, 6375, 6381, 6379, 6377, 6390, 6383, 6371, 6391, 6370, 6373, 6374, 6378, 485: 6384, 666: 6394, 909: 6386, 6385, 6388, 6367, 914: 6387}, + {2049, 2049, 17: 2049, 52: 2049, 54: 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 2049, 74: 2049, 485: 2049, 666: 2049}, + {512: 2048, 521: 2048}, + {512: 2047, 521: 2047}, + {512: 2046, 521: 2046, 584: 2046, 2046}, // 3780 - {1989, 1989, 17: 1989, 51: 1989, 53: 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 475: 1989, 656: 1989}, - {1988, 1988, 17: 1988, 51: 1988, 53: 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 475: 1988, 656: 1988}, - {1987, 1987, 17: 1987, 51: 1987, 53: 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 1987, 475: 1987, 656: 1987}, - {1986, 1986, 17: 1986, 51: 1986, 53: 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 1986, 475: 1986, 656: 1986}, - {1985, 1985, 17: 1985, 51: 1985, 53: 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 1985, 475: 1985, 656: 1985}, + {512: 2045, 521: 2045, 584: 2045, 2045}, + {512: 2044, 521: 2044, 584: 2044, 2044}, + {512: 2043, 521: 2043, 584: 2043, 2043}, + {512: 2042, 521: 2042, 584: 2042, 2042}, + {512: 2041, 521: 2041, 584: 2041, 2041}, // 3785 - {1984, 1984, 17: 1984, 51: 1984, 53: 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 1984, 475: 1984, 656: 1984}, - {189: 6340, 6341, 194: 6342, 511: 2759, 574: 6338, 6339, 737: 6337, 932: 6344, 1101: 6345}, - {1996, 1996, 17: 1996, 51: 1996, 53: 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 1996, 475: 1996, 656: 1996}, - {1995, 1995, 17: 1995, 51: 1995, 53: 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 475: 1995, 656: 1995}, - {103: 3970, 112: 3969, 511: 2759, 737: 2758, 745: 6348, 839: 6347}, + {512: 2040, 521: 2040, 584: 2040, 2040}, + {512: 2039, 521: 2039, 584: 2039, 2039}, + {487: 2038, 512: 2038}, + {487: 2037, 512: 2037}, + {487: 2036, 512: 2036}, // 3790 - {1998, 1998, 17: 1998, 51: 1998, 53: 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 1998, 475: 1998, 656: 1998}, - {1997, 1997, 17: 1997, 51: 1997, 53: 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 1997, 475: 1997, 656: 1997}, - {511: 2759, 737: 2758, 745: 6350}, - {214: 6351}, - {550: 6352}, + {487: 2035, 512: 2035}, + {2: 2034, 2034, 2034, 2034, 2034, 2034, 2034, 10: 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 74: 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 2034, 487: 2034, 502: 2034, 512: 2034, 517: 2034}, + {2: 2033, 2033, 2033, 2033, 2033, 2033, 2033, 10: 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 74: 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 487: 2033, 502: 2033, 512: 2033, 517: 2033}, + {216: 6434}, + {512: 4358, 521: 2088, 750: 6432}, // 3795 - {109: 6353}, - {1999, 1999, 17: 1999, 51: 1999, 53: 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 1999, 475: 1999, 656: 1999}, - {478: 6355, 511: 2759, 737: 2758, 745: 6356}, - {2001, 2001, 17: 2001, 51: 2001, 53: 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 2001, 475: 2001, 656: 2001}, - {2000, 2000, 17: 2000, 51: 2000, 53: 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 475: 2000, 656: 2000}, + {512: 4358, 521: 2088, 584: 2088, 2088, 750: 6430}, + {487: 2088, 512: 4358, 750: 6428}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 502: 2088, 512: 4358, 517: 2088, 750: 6423}, + {487: 2088, 512: 4358, 521: 2088, 750: 6418}, + {487: 2088, 512: 4358, 521: 2088, 750: 6415}, // 3800 - {478: 6359, 511: 2759, 737: 2758, 745: 6358}, - {2002, 2002, 17: 2002, 51: 2002, 53: 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 105: 3490, 3486, 109: 3483, 3498, 113: 3485, 3482, 3484, 3488, 3489, 3494, 3493, 3492, 3496, 3497, 3491, 3495, 3487, 475: 2002, 656: 2002, 800: 6360}, - {2003, 2003, 17: 2003, 51: 2003, 53: 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 475: 2003, 656: 2003}, - {313: 6361}, - {2004, 2004, 17: 2004, 51: 2004, 53: 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 2004, 475: 2004, 656: 2004}, + {512: 4358, 521: 2088, 750: 6410}, + {105: 2088, 128: 2088, 512: 4358, 521: 2088, 750: 6407}, + {196: 2088, 2088, 202: 2088, 512: 4358, 521: 2088, 584: 2088, 2088, 750: 6404}, + {196: 2088, 2088, 202: 2088, 512: 4358, 521: 2088, 584: 2088, 2088, 750: 6395}, + {196: 6401, 6402, 202: 6403, 521: 2798, 584: 6399, 6400, 747: 6398, 943: 6396, 1113: 6397}, // 3805 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 492: 6365, 507: 6366, 664: 3517, 2785, 2786, 2784, 742: 6364, 1323: 6363}, - {2005, 2005, 17: 2005, 51: 2005, 53: 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 475: 2005, 656: 2005}, - {266, 266, 17: 266, 51: 266, 53: 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, 475: 266, 656: 266}, - {265, 265, 17: 265, 51: 265, 53: 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, 475: 265, 656: 265}, - {264, 264, 17: 264, 51: 264, 53: 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 475: 264, 656: 264}, + {2017, 2017, 17: 2017, 52: 2017, 54: 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 2017, 74: 2017, 485: 2017, 666: 2017}, + {2016, 2016, 17: 2016, 52: 2016, 54: 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 2016, 74: 2016, 485: 2016, 666: 2016}, + {2012, 2012, 17: 2012, 52: 2012, 54: 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 2012, 74: 2012, 485: 2012, 666: 2012}, + {2011, 2011, 17: 2011, 52: 2011, 54: 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 2011, 74: 2011, 485: 2011, 666: 2011}, + {2010, 2010, 17: 2010, 52: 2010, 54: 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 74: 2010, 485: 2010, 666: 2010}, // 3810 - {478: 6368}, - {2006, 2006, 17: 2006, 51: 2006, 53: 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 2006, 475: 2006, 656: 2006}, - {511: 2759, 574: 6338, 6339, 737: 6337, 932: 6370}, - {2007, 2007, 17: 2007, 51: 2007, 53: 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 475: 2007, 656: 2007}, - {511: 2759, 737: 2758, 745: 6372}, + {2009, 2009, 17: 2009, 52: 2009, 54: 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 74: 2009, 485: 2009, 666: 2009}, + {2008, 2008, 17: 2008, 52: 2008, 54: 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 74: 2008, 485: 2008, 666: 2008}, + {2007, 2007, 17: 2007, 52: 2007, 54: 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 74: 2007, 485: 2007, 666: 2007}, + {196: 6401, 6402, 202: 6403, 521: 2798, 584: 6399, 6400, 747: 6398, 943: 6405, 1113: 6406}, + {2019, 2019, 17: 2019, 52: 2019, 54: 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 74: 2019, 485: 2019, 666: 2019}, // 3815 - {2008, 2008, 17: 2008, 51: 2008, 53: 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 2008, 475: 2008, 656: 2008}, - {2: 2009, 2009, 2009, 2009, 2009, 2009, 2009, 10: 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 51: 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 2009, 478: 2009, 492: 2009, 502: 2009, 507: 2009}, - {653: 6375}, - {478: 6376}, - {2027, 2027, 17: 2027, 51: 2027, 53: 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 475: 2027, 656: 2027, 902: 6377}, + {2018, 2018, 17: 2018, 52: 2018, 54: 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 2018, 74: 2018, 485: 2018, 666: 2018}, + {105: 4019, 128: 4018, 521: 2798, 747: 2797, 755: 6409, 849: 6408}, + {2021, 2021, 17: 2021, 52: 2021, 54: 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 74: 2021, 485: 2021, 666: 2021}, + {2020, 2020, 17: 2020, 52: 2020, 54: 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 2020, 74: 2020, 485: 2020, 666: 2020}, + {521: 2798, 747: 2797, 755: 6411}, // 3820 - {2034, 2034, 17: 6332, 51: 6308, 53: 6328, 6321, 6311, 6307, 6315, 6319, 6331, 6314, 6320, 6318, 6316, 6329, 6322, 6310, 6330, 6309, 6312, 6313, 6317, 475: 6323, 656: 6333, 898: 6325, 6324, 6327, 6306, 903: 6326}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6379, 2785, 2786, 2784}, - {2035, 2035}, - {2036, 2036}, - {2054, 2054, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 6413}, + {223: 6412}, + {560: 6413}, + {109: 6414}, + {2022, 2022, 17: 2022, 52: 2022, 54: 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 74: 2022, 485: 2022, 666: 2022}, + {487: 6416, 521: 2798, 747: 2797, 755: 6417}, // 3825 - {2052, 2052}, - {28: 6411}, - {1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 10: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 51: 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 1784, 502: 6400, 655: 1784}, - {259: 6387, 476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 6386}, - {2046, 2046}, + {2024, 2024, 17: 2024, 52: 2024, 54: 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024, 74: 2024, 485: 2024, 666: 2024}, + {2023, 2023, 17: 2023, 52: 2023, 54: 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 2023, 74: 2023, 485: 2023, 666: 2023}, + {487: 6420, 521: 2798, 747: 2797, 755: 6419}, + {2025, 2025, 17: 2025, 52: 2025, 54: 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 74: 2025, 107: 3535, 3539, 3532, 3547, 114: 3534, 3531, 3533, 3537, 3538, 3543, 3542, 3541, 3545, 3546, 3540, 3544, 127: 3536, 485: 2025, 666: 2025, 805: 6421}, + {2026, 2026, 17: 2026, 52: 2026, 54: 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 2026, 74: 2026, 485: 2026, 666: 2026}, // 3830 - {502: 6388}, - {173: 6392, 234: 6395, 252: 6394, 306: 6391, 6397, 6396, 478: 6390, 578: 6393, 1048: 6389}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 6399}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 6398}, - {476: 2043, 2043, 497: 2043, 2043, 507: 2043, 570: 2043, 572: 2043, 649: 2043, 657: 2043, 668: 2043, 743: 2043}, + {323: 6422}, + {2027, 2027, 17: 2027, 52: 2027, 54: 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 74: 2027, 485: 2027, 666: 2027}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 502: 6426, 517: 6427, 676: 3566, 2824, 2825, 2823, 752: 6425, 1336: 6424}, + {2028, 2028, 17: 2028, 52: 2028, 54: 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 2028, 74: 2028, 485: 2028, 666: 2028}, + {275, 275, 17: 275, 52: 275, 54: 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 74: 275, 485: 275, 666: 275}, // 3835 - {476: 2042, 2042, 497: 2042, 2042, 507: 2042, 570: 2042, 572: 2042, 649: 2042, 657: 2042, 668: 2042, 743: 2042}, - {476: 2041, 2041, 497: 2041, 2041, 507: 2041, 570: 2041, 572: 2041, 649: 2041, 657: 2041, 668: 2041, 743: 2041}, - {476: 2040, 2040, 497: 2040, 2040, 507: 2040, 570: 2040, 572: 2040, 649: 2040, 657: 2040, 668: 2040, 743: 2040}, - {476: 2039, 2039, 497: 2039, 2039, 507: 2039, 570: 2039, 572: 2039, 649: 2039, 657: 2039, 668: 2039, 743: 2039}, - {476: 2038, 2038, 497: 2038, 2038, 507: 2038, 570: 2038, 572: 2038, 649: 2038, 657: 2038, 668: 2038, 743: 2038}, + {274, 274, 17: 274, 52: 274, 54: 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 74: 274, 485: 274, 666: 274}, + {273, 273, 17: 273, 52: 273, 54: 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 74: 273, 485: 273, 666: 273}, + {487: 6429}, + {2029, 2029, 17: 2029, 52: 2029, 54: 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 2029, 74: 2029, 485: 2029, 666: 2029}, + {521: 2798, 584: 6399, 6400, 747: 6398, 943: 6431}, // 3840 - {476: 2037, 2037, 497: 2037, 2037, 507: 2037, 570: 2037, 572: 2037, 649: 2037, 657: 2037, 668: 2037, 743: 2037}, - {2044, 2044}, - {2045, 2045}, - {173: 6392, 234: 6395, 252: 6394, 306: 6391, 6397, 6396, 478: 6401, 578: 6393, 1048: 6402}, - {476: 2608, 2607, 497: 6407, 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 6408}, + {2030, 2030, 17: 2030, 52: 2030, 54: 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 2030, 74: 2030, 485: 2030, 666: 2030}, + {521: 2798, 747: 2797, 755: 6433}, + {2031, 2031, 17: 2031, 52: 2031, 54: 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 2031, 74: 2031, 485: 2031, 666: 2031}, + {2: 2032, 2032, 2032, 2032, 2032, 2032, 2032, 10: 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 74: 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 2032, 487: 2032, 502: 2032, 512: 2032, 517: 2032}, + {663: 6436}, // 3845 - {476: 2608, 2607, 497: 6403, 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 668: 2730, 713: 2731, 743: 2573, 752: 2732, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2738, 2737, 770: 2712, 2574, 777: 2735, 2734, 780: 2736, 783: 2575, 788: 2733, 810: 2739, 829: 6404}, - {28: 6405}, - {2047, 2047}, - {511: 2759, 737: 6406}, - {2048, 2048}, + {487: 6437}, + {2050, 2050, 17: 2050, 52: 2050, 54: 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 485: 2050, 666: 2050, 913: 6438}, + {2057, 2057, 17: 6393, 52: 6369, 54: 6389, 6382, 6372, 6368, 6376, 6380, 6392, 6375, 6381, 6379, 6377, 6390, 6383, 6371, 6391, 6370, 6373, 6374, 6378, 485: 6384, 666: 6394, 909: 6386, 6385, 6388, 6367, 914: 6387}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6440, 2824, 2825, 2823}, + {2058, 2058}, // 3850 - {28: 6409}, - {2049, 2049}, - {511: 2759, 737: 6410}, - {2050, 2050}, - {511: 2759, 737: 6412}, + {2059, 2059}, + {2078, 2078, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 6475}, + {2076, 2076}, + {28: 6473}, + {1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 10: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 74: 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 1807, 512: 6462, 665: 1807}, // 3855 - {2051, 2051}, - {2053, 2053}, - {2061, 2061}, - {502: 6440}, - {74: 2567, 150: 2569, 157: 2597, 2582, 161: 2566, 399: 6436, 476: 2608, 2607, 498: 2606, 507: 2592, 509: 6419, 570: 2591, 572: 2605, 649: 2601, 656: 2565, 2713, 713: 6417, 743: 2573, 752: 6418, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 6425, 6424, 770: 2712, 2574, 777: 6422, 6421, 780: 6423, 783: 2575, 788: 6420, 804: 2583, 814: 6434, 849: 6433, 6427, 854: 6428, 863: 6426, 865: 6430, 867: 6431, 6429, 6432, 925: 6435}, + {268: 6448, 486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 6447}, + {2070, 2070}, + {512: 6449}, + {180: 6453, 242: 6456, 261: 6455, 304: 6459, 316: 6452, 6458, 6457, 487: 6451, 588: 6454, 1060: 6450}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 6461}, // 3860 - {473, 473, 483: 828, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {475, 475, 483: 829, 493: 829, 829}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 5738, 5733, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 5736, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 5735, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 5740, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 5734, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 5743, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 5741, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 5737, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 508: 3863, 571: 5749, 590: 5748, 650: 3861, 664: 5746, 2785, 2786, 2784, 779: 5750, 835: 5747, 983: 5751, 1167: 5744}, - {480, 480}, - {479, 479}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 6460}, + {486: 2067, 488: 2067, 507: 2067, 509: 2067, 517: 2067, 580: 2067, 2067, 658: 2067, 667: 2067, 674: 2067, 753: 2067}, + {486: 2066, 488: 2066, 507: 2066, 509: 2066, 517: 2066, 580: 2066, 2066, 658: 2066, 667: 2066, 674: 2066, 753: 2066}, + {486: 2065, 488: 2065, 507: 2065, 509: 2065, 517: 2065, 580: 2065, 2065, 658: 2065, 667: 2065, 674: 2065, 753: 2065}, + {486: 2064, 488: 2064, 507: 2064, 509: 2064, 517: 2064, 580: 2064, 2064, 658: 2064, 667: 2064, 674: 2064, 753: 2064}, // 3865 - {478, 478}, - {477, 477}, - {476, 476}, - {474, 474}, - {472, 472}, + {486: 2063, 488: 2063, 507: 2063, 509: 2063, 517: 2063, 580: 2063, 2063, 658: 2063, 667: 2063, 674: 2063, 753: 2063}, + {486: 2062, 488: 2062, 507: 2062, 509: 2062, 517: 2062, 580: 2062, 2062, 658: 2062, 667: 2062, 674: 2062, 753: 2062}, + {486: 2061, 488: 2061, 507: 2061, 509: 2061, 517: 2061, 580: 2061, 2061, 658: 2061, 667: 2061, 674: 2061, 753: 2061}, + {486: 2060, 488: 2060, 507: 2060, 509: 2060, 517: 2060, 580: 2060, 2060, 658: 2060, 667: 2060, 674: 2060, 753: 2060}, + {2068, 2068}, // 3870 - {471, 471}, - {470, 470}, - {469, 469}, - {468, 468}, - {467, 467}, + {2069, 2069}, + {180: 6453, 242: 6456, 261: 6455, 304: 6459, 316: 6452, 6458, 6457, 487: 6463, 588: 6454, 1060: 6464}, + {486: 2642, 488: 2641, 507: 6469, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 6470}, + {486: 2642, 488: 2641, 507: 6465, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 674: 2769, 723: 2770, 753: 2607, 762: 2771, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2777, 2776, 780: 2748, 2608, 787: 2774, 2775, 2773, 794: 2609, 799: 2772, 821: 2778, 839: 6466}, + {28: 6467}, // 3875 - {466, 466}, - {465, 465}, - {23: 5236}, - {2059, 2059}, - {502: 6437}, + {2071, 2071}, + {521: 2798, 747: 6468}, + {2072, 2072}, + {28: 6471}, + {2073, 2073}, // 3880 - {478: 6438}, - {74: 2567, 150: 2569, 157: 2597, 2582, 161: 2566, 476: 2608, 2607, 498: 2606, 507: 2592, 509: 6419, 570: 2591, 572: 2605, 649: 2601, 656: 2565, 2713, 713: 6417, 743: 2573, 752: 6418, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 6425, 6424, 770: 2712, 2574, 777: 6422, 6421, 780: 6423, 783: 2575, 788: 6420, 804: 2583, 814: 6434, 849: 6433, 6427, 854: 6428, 863: 6426, 865: 6430, 867: 6431, 6429, 6432, 925: 6439}, - {2058, 2058}, - {478: 6441}, - {74: 2567, 150: 2569, 157: 2597, 2582, 161: 2566, 476: 2608, 2607, 498: 2606, 507: 2592, 509: 6419, 570: 2591, 572: 2605, 649: 2601, 656: 2565, 2713, 713: 6417, 743: 2573, 752: 6418, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 6425, 6424, 770: 2712, 2574, 777: 6422, 6421, 780: 6423, 783: 2575, 788: 6420, 804: 2583, 814: 6434, 849: 6433, 6427, 854: 6428, 863: 6426, 865: 6430, 867: 6431, 6429, 6432, 925: 6442}, + {521: 2798, 747: 6472}, + {2074, 2074}, + {521: 2798, 747: 6474}, + {2075, 2075}, + {2077, 2077}, // 3885 - {2060, 2060}, - {2: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 10: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 51: 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 492: 1071, 503: 1071, 757: 5441, 5440, 5439, 842: 5442, 891: 6444}, - {2: 1059, 1059, 1059, 1059, 1059, 1059, 1059, 10: 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 51: 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 5813, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 492: 1059, 503: 1059, 1117: 6445}, - {2: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 10: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 51: 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 1873, 492: 4217, 503: 1873, 859: 6446}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 503: 6447, 664: 5817, 2785, 2786, 2784, 922: 5818, 972: 5816}, + {2085, 2085}, + {512: 6502}, + {76: 2601, 157: 2603, 164: 2631, 2616, 168: 2600, 409: 6498, 486: 2642, 488: 2641, 509: 2640, 517: 2626, 519: 6481, 580: 2625, 2639, 658: 2635, 666: 2599, 2749, 723: 6479, 753: 2607, 762: 6480, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 6487, 6486, 780: 2748, 2608, 787: 6484, 6485, 6483, 794: 2609, 799: 6482, 814: 2617, 825: 6496, 859: 6495, 6489, 864: 6490, 873: 6488, 876: 6492, 878: 6493, 6491, 6494, 936: 6497}, + {484, 484, 494: 841, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {486, 486, 494: 842, 503: 842, 842}, // 3890 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6449, 2785, 2786, 2784, 740: 5830, 922: 5818, 972: 6448}, - {9: 5826, 484: 6452}, - {1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1061, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 51: 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 481: 1069, 484: 1061, 491: 1069, 1069, 496: 1069, 501: 1069, 505: 1069, 1069, 528: 1069, 655: 6450, 912: 5819}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 523: 5822, 664: 6451, 2785, 2786, 2784}, - {1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1061, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 51: 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 481: 1068, 484: 1061, 491: 1068, 1068, 496: 1068, 501: 1068, 505: 1068, 1068, 528: 1068, 655: 5824, 912: 5823}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 5799, 5794, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 5797, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 5796, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 5801, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 5795, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 5804, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 5802, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 5798, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 508: 3912, 582: 5810, 600: 5809, 660: 3910, 676: 5807, 2824, 2825, 2823, 790: 5811, 845: 5808, 993: 5812, 1181: 5805}, + {491, 491}, + {490, 490}, + {489, 489}, + {488, 488}, // 3895 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 5453, 582: 5448, 664: 3947, 2785, 2786, 2784, 713: 5452, 740: 5451, 802: 5450, 806: 5449, 5455, 856: 5445, 894: 6453}, - {257, 257, 9: 5499, 501: 2745, 795: 2746, 6454}, - {2090, 2090}, - {2093, 2093, 9: 3616}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6515, 2785, 2786, 2784}, + {487, 487}, + {485, 485}, + {483, 483}, + {482, 482}, + {481, 481}, // 3900 - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6513}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6504}, - {126: 5577, 572: 5576, 1156: 6500}, - {162: 609, 169: 5631}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 567: 6495, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 6494}, + {480, 480}, + {479, 479}, + {478, 478}, + {477, 477}, + {476, 476}, // 3905 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 567: 6491, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5334, 872: 6490}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 567: 6487, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5777, 5775, 866: 6486}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6482, 786: 6481}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6479}, - {162: 6474}, + {23: 5297}, + {2083, 2083}, + {512: 6499}, + {487: 6500}, + {76: 2601, 157: 2603, 164: 2631, 2616, 168: 2600, 486: 2642, 488: 2641, 509: 2640, 517: 2626, 519: 6481, 580: 2625, 2639, 658: 2635, 666: 2599, 2749, 723: 6479, 753: 2607, 762: 6480, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 6487, 6486, 780: 2748, 2608, 787: 6484, 6485, 6483, 794: 2609, 799: 6482, 814: 2617, 825: 6496, 859: 6495, 6489, 864: 6490, 873: 6488, 876: 6492, 878: 6493, 6491, 6494, 936: 6501}, // 3910 - {167: 6471}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6469}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 6470}, - {28, 28, 9: 3950}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6472}, + {2082, 2082}, + {487: 6503}, + {76: 2601, 157: 2603, 164: 2631, 2616, 168: 2600, 486: 2642, 488: 2641, 509: 2640, 517: 2626, 519: 6481, 580: 2625, 2639, 658: 2635, 666: 2599, 2749, 723: 6479, 753: 2607, 762: 6480, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 6487, 6486, 780: 2748, 2608, 787: 6484, 6485, 6483, 794: 2609, 799: 6482, 814: 2617, 825: 6496, 859: 6495, 6489, 864: 6490, 873: 6488, 876: 6492, 878: 6493, 6491, 6494, 936: 6504}, + {2084, 2084}, + {2: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 10: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 74: 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 1084, 502: 1084, 514: 1084, 767: 5502, 5501, 5500, 852: 5503, 902: 6506}, // 3915 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5030, 2785, 2786, 2784, 890: 6473}, - {55, 55}, - {497: 6475}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 713: 5799, 743: 5797, 752: 5800, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 5798, 5802, 5801, 770: 2712, 5804, 777: 5805, 5803, 780: 5806, 851: 6476}, - {185, 185, 484: 6477}, + {2: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 10: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 74: 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 5874, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 502: 1072, 514: 1072, 1129: 6507}, + {2: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 10: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 74: 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 1896, 502: 4266, 514: 1896, 869: 6508}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 514: 6509, 676: 5878, 2824, 2825, 2823, 933: 5879, 982: 5877}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6511, 2824, 2825, 2823, 751: 5891, 933: 5879, 982: 6510}, + {9: 5887, 495: 6514}, // 3920 - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 713: 5799, 743: 5797, 752: 5800, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 5798, 5802, 5801, 770: 2712, 5804, 777: 5805, 5803, 780: 5806, 851: 6478}, - {184, 184}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6480, 2785, 2786, 2784}, - {1978, 1978}, - {2072, 2072, 9: 3950}, + {1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1074, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 74: 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 492: 1082, 495: 1074, 501: 1082, 1082, 506: 1082, 513: 1082, 516: 1082, 518: 1082, 538: 1082, 665: 6512, 923: 5880}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 533: 5883, 676: 6513, 2824, 2825, 2823}, + {1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1074, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 74: 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1081, 492: 1081, 495: 1074, 501: 1081, 1081, 506: 1081, 513: 1081, 516: 1081, 518: 1081, 538: 1081, 665: 5885, 923: 5884}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 5514, 593: 5509, 676: 3996, 2824, 2825, 2823, 723: 5513, 751: 5512, 812: 5511, 816: 5510, 5516, 866: 5506, 905: 6515}, + {266, 266, 9: 5560, 513: 2784, 806: 2785, 6516}, // 3925 - {1067, 1067, 9: 1067, 164: 6484, 491: 6483}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 6485}, - {2070, 2070}, - {2071, 2071, 9: 4781}, - {2074, 2074, 9: 5778}, + {2114, 2114}, + {2117, 2117, 9: 3665}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6584, 2824, 2825, 2823}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6582}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6573}, // 3930 - {586: 6488}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 5777, 5775, 866: 6489}, - {2073, 2073, 9: 5778}, - {2076, 2076, 9: 5336}, - {586: 6492}, + {132: 5638, 581: 5637, 1170: 6569}, + {169: 622, 176: 5692}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 577: 6564, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 6563}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 577: 6560, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5395, 883: 6559}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 577: 6556, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5838, 5836, 877: 6555}, // 3935 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5334, 872: 6493}, - {2075, 2075, 9: 5336}, - {2069, 2069, 9: 3950, 673: 4839, 675: 4838, 916: 6499}, - {586: 6496}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 6497}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6551, 796: 6550}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6548}, + {169: 6540}, + {174: 6537}, + {526: 6534}, // 3940 - {2069, 2069, 9: 3950, 673: 4839, 675: 4838, 916: 6498}, - {2077, 2077}, - {2078, 2078}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6501}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 3948, 786: 6502}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6532}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 6533}, + {29, 29, 9: 3999}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6535}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5089, 2824, 2825, 2823, 875: 6536}, // 3945 - {2069, 2069, 9: 3950, 673: 4839, 675: 4838, 916: 6503}, - {2082, 2082}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6505, 2785, 2786, 2784}, - {475: 6506}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6507}, + {56, 56}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6538}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5089, 2824, 2825, 2823, 875: 6539}, + {59, 59}, + {507: 6541}, // 3950 - {2222, 2222, 84: 4261, 500: 4262, 874: 6509, 887: 6508, 1071: 6510}, - {2221, 2221, 84: 4261, 874: 6512}, - {2220, 2220, 500: 4262, 887: 6511}, - {2083, 2083}, - {2218, 2218}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 681: 6543, 723: 5860, 753: 5858, 762: 5861, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 5859, 5863, 5862, 780: 2748, 5865, 787: 5866, 5867, 5864, 861: 6542}, + {191, 191, 495: 6546}, + {256: 6544}, + {487: 6545}, + {189, 189}, // 3955 - {2219, 2219}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6514}, - {2084, 2084}, - {2230, 2230}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6742}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 723: 5860, 753: 5858, 762: 5861, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 5859, 5863, 5862, 780: 2748, 5865, 787: 5866, 5867, 5864, 861: 6547}, + {190, 190}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6549, 2824, 2825, 2823}, + {2001, 2001}, + {2096, 2096, 9: 3999}, // 3960 - {652: 6730}, - {652: 2216}, - {652: 2215}, - {652: 2214}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6707}, + {1080, 1080, 9: 1080, 171: 6553, 501: 6552}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 6554}, + {2094, 2094}, + {2095, 2095, 9: 4840}, + {2098, 2098, 9: 5839}, // 3965 - {18: 6628, 84: 6627, 104: 2110, 145: 2110, 671: 2110, 1345: 6626}, - {507: 6625}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6613}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 478: 1875, 567: 4870, 573: 1875, 790: 6576}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 478: 1875, 567: 4870, 790: 6570}, + {596: 6557}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 5838, 5836, 877: 6558}, + {2097, 2097, 9: 5839}, + {2100, 2100, 9: 5397}, + {596: 6561}, // 3970 - {162: 6565}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6529}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6530}, - {51, 51, 6: 51, 51, 51, 15: 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 73: 6538, 6535, 6541, 6542, 6543, 6536, 6534, 6544, 6540, 6537, 482: 51, 51, 487: 51, 506: 51, 508: 51, 650: 51, 652: 51, 658: 6539, 918: 6533, 1207: 6531, 1301: 6532}, - {406, 406, 6: 4267, 4269, 410, 15: 4286, 2193, 4284, 4223, 4288, 4275, 4304, 4268, 4271, 4270, 4273, 4274, 4276, 4283, 410, 4294, 4295, 4281, 4282, 4287, 4289, 4301, 4300, 4306, 4302, 4299, 4292, 4297, 4298, 4291, 4293, 4296, 4285, 482: 4266, 4303, 487: 2193, 506: 5013, 508: 2193, 650: 2193, 652: 4272, 785: 4277, 797: 4279, 818: 4278, 840: 4280, 843: 4290, 847: 4305, 924: 5653, 1022: 6564}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5395, 883: 6562}, + {2099, 2099, 9: 5397}, + {2093, 2093, 9: 3999, 683: 4898, 685: 4897, 927: 6568}, + {596: 6565}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 6566}, // 3975 - {50, 50, 6: 50, 50, 50, 15: 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 73: 6538, 6535, 6541, 6542, 6543, 6536, 6534, 6544, 6540, 6537, 482: 50, 50, 487: 50, 506: 50, 508: 50, 650: 50, 652: 50, 658: 6539, 918: 6563}, - {49, 49, 6: 49, 49, 49, 15: 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 73: 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 482: 49, 49, 487: 49, 506: 49, 508: 49, 650: 49, 652: 49, 658: 49}, - {488: 2064, 2064, 502: 4307, 511: 2064, 663: 6560, 741: 6559}, - {477: 6556, 488: 2064, 2064, 502: 4307, 511: 2064, 741: 6555}, - {488: 2064, 2064, 502: 4307, 511: 2064, 741: 6553}, + {2093, 2093, 9: 3999, 683: 4898, 685: 4897, 927: 6567}, + {2101, 2101}, + {2102, 2102}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6570}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 3997, 796: 6571}, // 3980 - {42, 42, 6: 42, 42, 42, 15: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 73: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 482: 42, 42, 487: 42, 506: 42, 508: 42, 650: 42, 652: 42, 658: 42}, - {75: 6551, 77: 6552, 6549, 658: 6550}, - {488: 2064, 2064, 502: 4307, 511: 2064, 741: 6547}, - {39, 39, 6: 39, 39, 39, 15: 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 73: 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 482: 39, 39, 487: 39, 506: 39, 508: 39, 650: 39, 652: 39, 658: 39}, - {488: 2064, 2064, 502: 4307, 511: 2064, 741: 6545}, + {2093, 2093, 9: 3999, 683: 4898, 685: 4897, 927: 6572}, + {2106, 2106}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6574, 2824, 2825, 2823}, + {485: 6575}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6576}, // 3985 - {36, 36, 6: 36, 36, 36, 15: 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 73: 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 482: 36, 36, 487: 36, 506: 36, 508: 36, 650: 36, 652: 36, 658: 36}, - {34, 34, 6: 34, 34, 34, 15: 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 73: 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 482: 34, 34, 487: 34, 506: 34, 508: 34, 650: 34, 652: 34, 658: 34}, - {33, 33, 6: 33, 33, 33, 15: 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 73: 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 482: 33, 33, 487: 33, 506: 33, 508: 33, 650: 33, 652: 33, 658: 33}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6546}, - {37, 37, 6: 37, 37, 37, 15: 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 73: 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 482: 37, 37, 487: 37, 506: 37, 508: 37, 650: 37, 652: 37, 658: 37}, + {2247, 2247, 86: 4310, 511: 4311, 885: 6578, 899: 6577, 1083: 6579}, + {2246, 2246, 86: 4310, 885: 6581}, + {2245, 2245, 511: 4311, 899: 6580}, + {2107, 2107}, + {2243, 2243}, // 3990 - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6548}, - {40, 40, 6: 40, 40, 40, 15: 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 73: 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 482: 40, 40, 487: 40, 506: 40, 508: 40, 650: 40, 652: 40, 658: 40}, - {41, 41, 6: 41, 41, 41, 15: 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 73: 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 482: 41, 41, 487: 41, 506: 41, 508: 41, 650: 41, 652: 41, 658: 41}, - {38, 38, 6: 38, 38, 38, 15: 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 73: 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 482: 38, 38, 487: 38, 506: 38, 508: 38, 650: 38, 652: 38, 658: 38}, - {35, 35, 6: 35, 35, 35, 15: 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 73: 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 482: 35, 35, 487: 35, 506: 35, 508: 35, 650: 35, 652: 35, 658: 35}, + {2244, 2244}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6583}, + {2108, 2108}, + {2255, 2255}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6848}, // 3995 - {32, 32, 6: 32, 32, 32, 15: 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 73: 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 482: 32, 32, 487: 32, 506: 32, 508: 32, 650: 32, 652: 32, 658: 32}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6554}, - {43, 43, 6: 43, 43, 43, 15: 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 73: 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 482: 43, 43, 487: 43, 506: 43, 508: 43, 650: 43, 652: 43, 658: 43}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6558}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6557}, + {661: 6836}, + {661: 2241}, + {661: 2240}, + {661: 2239}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6813}, // 4000 - {44, 44, 6: 44, 44, 44, 15: 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 73: 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 482: 44, 44, 487: 44, 506: 44, 508: 44, 650: 44, 652: 44, 658: 44}, - {45, 45, 6: 45, 45, 45, 15: 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 73: 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 482: 45, 45, 487: 45, 506: 45, 508: 45, 650: 45, 652: 45, 658: 45}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6562}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6561}, - {46, 46, 6: 46, 46, 46, 15: 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 73: 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 482: 46, 46, 487: 46, 506: 46, 508: 46, 650: 46, 652: 46, 658: 46}, + {18: 6734, 86: 6733, 106: 2134, 152: 2134, 681: 2134, 1358: 6732}, + {517: 6731}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6719}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 487: 1898, 577: 4929, 583: 1898, 797: 6676}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 487: 1898, 577: 4929, 797: 6670}, // 4005 - {47, 47, 6: 47, 47, 47, 15: 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 73: 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 482: 47, 47, 487: 47, 506: 47, 508: 47, 650: 47, 652: 47, 658: 47}, - {48, 48, 6: 48, 48, 48, 15: 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 73: 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 482: 48, 48, 487: 48, 506: 48, 508: 48, 650: 48, 652: 48, 658: 48}, - {52, 52}, - {497: 6566}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 713: 5799, 743: 5797, 752: 5800, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 5798, 5802, 5801, 770: 2712, 5804, 777: 5805, 5803, 780: 5806, 851: 6567}, + {169: 6659}, + {526: 6635}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6599}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6600}, + {52, 52, 6: 52, 52, 52, 15: 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 75: 6608, 6605, 6611, 6612, 6613, 6606, 6604, 6614, 6610, 6607, 490: 52, 493: 52, 52, 508: 52, 518: 52, 660: 52, 52, 668: 6609, 929: 6603, 1220: 6601, 1314: 6602}, // 4010 - {484: 6568}, - {476: 2608, 2607, 498: 2606, 507: 2592, 570: 2591, 572: 2605, 649: 2601, 657: 2713, 713: 5799, 743: 5797, 752: 5800, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 5798, 5802, 5801, 770: 2712, 5804, 777: 5805, 5803, 780: 5806, 851: 6569}, - {186, 186}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 6572, 5775, 1130: 6573, 1296: 6571}, - {252, 252, 9: 6574}, + {415, 415, 6: 4316, 4318, 419, 15: 4335, 2217, 4333, 4272, 4337, 4324, 4353, 4317, 4320, 4319, 4322, 4323, 4325, 4332, 419, 4343, 4344, 4354, 4330, 4331, 4336, 4338, 4350, 4349, 4357, 4351, 4348, 4341, 4346, 4347, 4340, 4342, 4345, 4334, 4355, 490: 4315, 493: 2217, 4352, 508: 2217, 518: 5072, 660: 2217, 4321, 795: 4326, 808: 4328, 829: 4327, 850: 4329, 853: 4339, 857: 4356, 935: 5714, 1034: 6634}, + {51, 51, 6: 51, 51, 51, 15: 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 75: 6608, 6605, 6611, 6612, 6613, 6606, 6604, 6614, 6610, 6607, 490: 51, 493: 51, 51, 508: 51, 518: 51, 660: 51, 51, 668: 6609, 929: 6633}, + {50, 50, 6: 50, 50, 50, 15: 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 75: 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 490: 50, 493: 50, 50, 508: 50, 518: 50, 660: 50, 50, 668: 50}, + {498: 2088, 2088, 512: 4358, 521: 2088, 673: 6630, 750: 6629}, + {488: 6626, 498: 2088, 2088, 512: 4358, 521: 2088, 750: 6625}, // 4015 - {197, 197, 9: 197}, - {196, 196, 9: 196}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 5769, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 5774, 664: 3517, 2785, 2786, 2784, 742: 5287, 805: 5776, 825: 6572, 5775, 1130: 6575}, - {195, 195, 9: 195}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5350, 895: 5351, 927: 6577}, + {498: 2088, 2088, 512: 4358, 521: 2088, 750: 6623}, + {43, 43, 6: 43, 43, 43, 15: 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 75: 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 490: 43, 493: 43, 43, 508: 43, 518: 43, 660: 43, 43, 668: 43}, + {77: 6621, 79: 6622, 6619, 668: 6620}, + {498: 2088, 2088, 512: 4358, 521: 2088, 750: 6617}, + {40, 40, 6: 40, 40, 40, 15: 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 75: 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 490: 40, 493: 40, 40, 508: 40, 518: 40, 660: 40, 40, 668: 40}, // 4020 - {235, 235, 6: 235, 9: 5353, 15: 235, 48: 235, 235, 477: 235, 669: 5397, 965: 5396, 6578}, - {243, 243, 6: 243, 15: 243, 48: 243, 243, 477: 6580, 1013: 6579}, - {218, 218, 6: 218, 15: 6597, 48: 218, 6595, 958: 6596, 6594, 1110: 6593, 6592}, - {132: 6585, 6583, 6584, 6586, 1012: 6582, 1205: 6581}, - {242, 242, 6: 242, 15: 242, 48: 242, 242, 132: 6585, 6583, 6584, 6586, 1012: 6591}, + {498: 2088, 2088, 512: 4358, 521: 2088, 750: 6615}, + {37, 37, 6: 37, 37, 37, 15: 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 75: 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 490: 37, 493: 37, 37, 508: 37, 518: 37, 660: 37, 37, 668: 37}, + {35, 35, 6: 35, 35, 35, 15: 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 75: 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 490: 35, 493: 35, 35, 508: 35, 518: 35, 660: 35, 35, 668: 35}, + {34, 34, 6: 34, 34, 34, 15: 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 75: 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 490: 34, 493: 34, 34, 508: 34, 518: 34, 660: 34, 34, 668: 34}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6616}, // 4025 - {241, 241, 6: 241, 15: 241, 48: 241, 241, 132: 241, 241, 241, 241}, - {511: 2759, 737: 4079, 767: 6590}, - {511: 2759, 737: 4079, 767: 6589}, - {511: 2759, 737: 4079, 767: 6588}, - {511: 2759, 737: 4079, 767: 6587}, + {38, 38, 6: 38, 38, 38, 15: 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 75: 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 490: 38, 493: 38, 38, 508: 38, 518: 38, 660: 38, 38, 668: 38}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6618}, + {41, 41, 6: 41, 41, 41, 15: 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 75: 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 490: 41, 493: 41, 41, 508: 41, 518: 41, 660: 41, 41, 668: 41}, + {42, 42, 6: 42, 42, 42, 15: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 75: 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 490: 42, 493: 42, 42, 508: 42, 518: 42, 660: 42, 42, 668: 42}, + {39, 39, 6: 39, 39, 39, 15: 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 75: 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 490: 39, 493: 39, 39, 508: 39, 518: 39, 660: 39, 39, 668: 39}, // 4030 - {236, 236, 6: 236, 15: 236, 48: 236, 236, 132: 236, 236, 236, 236}, - {237, 237, 6: 237, 15: 237, 48: 237, 237, 132: 237, 237, 237, 237}, - {238, 238, 6: 238, 15: 238, 48: 238, 238, 132: 238, 238, 238, 238}, - {239, 239, 6: 239, 15: 239, 48: 239, 239, 132: 239, 239, 239, 239}, - {240, 240, 6: 240, 15: 240, 48: 240, 240, 132: 240, 240, 240, 240}, + {36, 36, 6: 36, 36, 36, 15: 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 75: 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 490: 36, 493: 36, 36, 508: 36, 518: 36, 660: 36, 36, 668: 36}, + {33, 33, 6: 33, 33, 33, 15: 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 75: 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 490: 33, 493: 33, 33, 508: 33, 518: 33, 660: 33, 33, 668: 33}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6624}, + {44, 44, 6: 44, 44, 44, 15: 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 75: 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 490: 44, 493: 44, 44, 508: 44, 518: 44, 660: 44, 44, 668: 44}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6628}, // 4035 - {221, 221, 6: 6609, 48: 6610, 1010: 6608}, - {217, 217, 6: 217, 15: 6597, 48: 217, 6595, 958: 6596, 6607}, - {216, 216, 6: 216, 15: 216, 48: 216, 216}, - {500: 6606, 978: 6605}, - {212, 212, 6: 212, 15: 212, 48: 212, 212, 216: 6601, 482: 6602, 581: 6600}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6627}, + {45, 45, 6: 45, 45, 45, 15: 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 75: 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 490: 45, 493: 45, 45, 508: 45, 518: 45, 660: 45, 45, 668: 45}, + {46, 46, 6: 46, 46, 46, 15: 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 75: 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 490: 46, 493: 46, 46, 508: 46, 518: 46, 660: 46, 46, 668: 46}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6632}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6631}, // 4040 - {343: 6598}, - {207, 207, 6: 207, 15: 207, 48: 207, 207, 216: 207, 482: 207, 581: 207, 1197: 6599}, - {208, 208, 6: 208, 15: 208, 48: 208, 208, 216: 208, 482: 208, 581: 208}, - {511: 2759, 737: 4079, 767: 6603}, - {210, 210, 6: 210, 15: 210, 48: 210, 210}, + {47, 47, 6: 47, 47, 47, 15: 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 75: 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 490: 47, 493: 47, 47, 508: 47, 518: 47, 660: 47, 47, 668: 47}, + {48, 48, 6: 48, 48, 48, 15: 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 75: 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 490: 48, 493: 48, 48, 508: 48, 518: 48, 660: 48, 48, 668: 48}, + {49, 49, 6: 49, 49, 49, 15: 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 75: 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 490: 49, 493: 49, 49, 508: 49, 518: 49, 660: 49, 49, 668: 49}, + {53, 53}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6636}, // 4045 - {209, 209, 6: 209, 15: 209, 48: 209, 209}, - {106: 6604}, - {211, 211, 6: 211, 15: 211, 48: 211, 211}, - {214, 214, 6: 214, 15: 214, 48: 214, 214}, - {213, 213, 6: 213, 15: 213, 48: 213, 213}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6637, 2824, 2825, 2823, 1136: 6638}, + {113: 2233, 129: 2233, 2233, 2233, 133: 2233}, + {113: 6643, 129: 6644, 6645, 6641, 133: 6642, 890: 6639, 1137: 6640}, + {2582, 2582, 9: 2582, 113: 2582, 129: 2582, 2582, 2582, 133: 2582}, + {58, 58, 9: 6657, 113: 6643, 129: 6644, 6645, 6641, 133: 6642, 890: 6656}, // 4050 - {215, 215, 6: 215, 15: 215, 48: 215, 215}, - {253, 253}, - {478: 6612}, - {478: 6611}, - {219, 219}, + {487: 2088, 512: 4358, 750: 6654}, + {487: 2088, 512: 4358, 750: 6652}, + {487: 2088, 512: 4358, 750: 6650}, + {487: 2088, 512: 4358, 750: 6648}, + {487: 2088, 512: 4358, 750: 6646}, // 4055 - {220, 220}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6614, 2785, 2786, 2784}, - {503: 6615}, - {478: 6616}, - {1970, 1970, 17: 1970, 51: 1970, 53: 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 143: 6619, 475: 1970, 507: 6618, 656: 1970, 1046: 6617}, + {487: 6647}, + {2575, 2575, 9: 2575, 113: 2575, 129: 2575, 2575, 2575, 133: 2575}, + {487: 6649}, + {2576, 2576, 9: 2576, 113: 2576, 129: 2576, 2576, 2576, 133: 2576}, + {487: 6651}, // 4060 - {2027, 2027, 17: 2027, 51: 2027, 53: 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 475: 2027, 656: 2027, 902: 6624}, - {1969, 1969, 17: 1969, 51: 1969, 53: 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 1969, 475: 1969, 656: 1969}, - {208: 6622, 395: 6623, 646: 6621, 654: 6620}, - {1968, 1968, 17: 1968, 51: 1968, 53: 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 1968, 475: 1968, 656: 1968}, - {1967, 1967, 17: 1967, 51: 1967, 53: 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 1967, 475: 1967, 656: 1967}, + {2577, 2577, 9: 2577, 113: 2577, 129: 2577, 2577, 2577, 133: 2577}, + {487: 6653}, + {2578, 2578, 9: 2578, 113: 2578, 129: 2578, 2578, 2578, 133: 2578}, + {487: 6655}, + {2579, 2579, 9: 2579, 113: 2579, 129: 2579, 2579, 2579, 133: 2579}, // 4065 - {1966, 1966, 17: 1966, 51: 1966, 53: 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 1966, 475: 1966, 656: 1966}, - {1965, 1965, 17: 1965, 51: 1965, 53: 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 1965, 475: 1965, 656: 1965}, - {1982, 1982, 17: 6332, 51: 6308, 53: 6328, 6321, 6311, 6307, 6315, 6319, 6331, 6314, 6320, 6318, 6316, 6329, 6322, 6310, 6330, 6309, 6312, 6313, 6317, 475: 6323, 656: 6333, 898: 6325, 6324, 6327, 6306, 903: 6326}, - {18: 2111, 84: 2111, 104: 2111, 145: 2111, 671: 2111}, - {104: 2106, 145: 6675, 671: 2106, 1347: 6674}, + {2581, 2581, 9: 2581, 113: 2581, 129: 2581, 2581, 2581, 133: 2581}, + {113: 6643, 129: 6644, 6645, 6641, 133: 6642, 890: 6658}, + {2580, 2580, 9: 2580, 113: 2580, 129: 2580, 2580, 2580, 133: 2580}, + {507: 6660, 514: 6661}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 723: 5860, 753: 5858, 762: 5861, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 5859, 5863, 5862, 780: 2748, 5865, 787: 5866, 5867, 5864, 861: 6667}, // 4070 - {502: 6670}, - {167: 6629}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6630}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5030, 2785, 2786, 2784, 890: 6631}, - {89: 6635, 93: 6640, 6642, 6636, 6641, 6644, 6638, 6634, 6639, 6643, 6637, 878: 6632, 1112: 6633}, + {222: 6662}, + {495: 6663}, + {199: 6664}, + {256: 6665}, + {487: 6666}, // 4075 - {2548, 2548, 9: 2548, 89: 2548, 93: 2548, 2548, 2548, 2548, 2548, 2548, 2548, 2548, 2548, 2548}, - {54, 54, 9: 6668, 89: 6635, 93: 6640, 6642, 6636, 6641, 6644, 6638, 6634, 6639, 6643, 6637, 878: 6667}, - {478: 2064, 502: 4307, 741: 6665}, - {478: 2064, 502: 4307, 741: 6663}, - {502: 4307, 511: 2064, 741: 6661}, + {192, 192}, + {495: 6668}, + {486: 2642, 488: 2641, 509: 2640, 517: 2626, 580: 2625, 2639, 658: 2635, 667: 2749, 723: 5860, 753: 5858, 762: 5861, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 5859, 5863, 5862, 780: 2748, 5865, 787: 5866, 5867, 5864, 861: 6669}, + {193, 193}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 6672, 5836, 1144: 6673, 1309: 6671}, // 4080 - {502: 4307, 511: 2064, 741: 6659}, - {502: 4307, 511: 2064, 741: 6657}, - {478: 2064, 502: 4307, 741: 6655}, - {478: 2064, 502: 4307, 741: 6653}, - {478: 2064, 502: 4307, 741: 6651}, + {261, 261, 9: 6674}, + {204, 204, 9: 204}, + {203, 203, 9: 203}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 5830, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 5835, 676: 3566, 2824, 2825, 2823, 752: 5348, 815: 5837, 835: 6672, 5836, 1144: 6675}, + {202, 202, 9: 202}, // 4085 - {478: 2064, 502: 4307, 741: 6649}, - {478: 2064, 502: 4307, 741: 6647}, - {478: 2064, 502: 4307, 741: 6645}, - {478: 6646}, - {2535, 2535, 9: 2535, 89: 2535, 93: 2535, 2535, 2535, 2535, 2535, 2535, 2535, 2535, 2535, 2535}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5411, 906: 5412, 938: 6677}, + {244, 244, 6: 244, 9: 5414, 15: 244, 50: 244, 244, 488: 244, 675: 5458, 975: 5457, 6678}, + {252, 252, 6: 252, 15: 252, 50: 252, 252, 488: 6680, 1024: 6679}, + {227, 227, 6: 227, 15: 6696, 50: 227, 6695, 969: 6694, 1122: 6693, 6692}, + {139: 6685, 6683, 6684, 6686, 1023: 6682, 1218: 6681}, // 4090 - {478: 6648}, - {2536, 2536, 9: 2536, 89: 2536, 93: 2536, 2536, 2536, 2536, 2536, 2536, 2536, 2536, 2536, 2536}, - {478: 6650}, - {2537, 2537, 9: 2537, 89: 2537, 93: 2537, 2537, 2537, 2537, 2537, 2537, 2537, 2537, 2537, 2537}, - {478: 6652}, + {251, 251, 6: 251, 15: 251, 50: 251, 251, 139: 6685, 6683, 6684, 6686, 1023: 6691}, + {250, 250, 6: 250, 15: 250, 50: 250, 250, 139: 250, 250, 250, 250}, + {521: 2798, 747: 4128, 777: 6690}, + {521: 2798, 747: 4128, 777: 6689}, + {521: 2798, 747: 4128, 777: 6688}, // 4095 - {2538, 2538, 9: 2538, 89: 2538, 93: 2538, 2538, 2538, 2538, 2538, 2538, 2538, 2538, 2538, 2538}, - {478: 6654}, - {2539, 2539, 9: 2539, 89: 2539, 93: 2539, 2539, 2539, 2539, 2539, 2539, 2539, 2539, 2539, 2539}, - {478: 6656}, - {2540, 2540, 9: 2540, 89: 2540, 93: 2540, 2540, 2540, 2540, 2540, 2540, 2540, 2540, 2540, 2540}, + {521: 2798, 747: 4128, 777: 6687}, + {245, 245, 6: 245, 15: 245, 50: 245, 245, 139: 245, 245, 245, 245}, + {246, 246, 6: 246, 15: 246, 50: 246, 246, 139: 246, 246, 246, 246}, + {247, 247, 6: 247, 15: 247, 50: 247, 247, 139: 247, 247, 247, 247}, + {248, 248, 6: 248, 15: 248, 50: 248, 248, 139: 248, 248, 248, 248}, // 4100 - {511: 2759, 737: 2758, 745: 6658}, - {2541, 2541, 9: 2541, 89: 2541, 93: 2541, 2541, 2541, 2541, 2541, 2541, 2541, 2541, 2541, 2541}, - {511: 2759, 737: 2758, 745: 6660}, - {2542, 2542, 9: 2542, 89: 2542, 93: 2542, 2542, 2542, 2542, 2542, 2542, 2542, 2542, 2542, 2542}, - {511: 2759, 737: 2758, 745: 6662}, + {249, 249, 6: 249, 15: 249, 50: 249, 249, 139: 249, 249, 249, 249}, + {230, 230, 6: 6715, 50: 6716, 1021: 6714}, + {226, 226, 6: 226, 15: 6696, 50: 226, 6695, 969: 6713}, + {225, 225, 6: 225, 15: 225, 50: 225, 225}, + {511: 6712, 988: 6711}, // 4105 - {2543, 2543, 9: 2543, 89: 2543, 93: 2543, 2543, 2543, 2543, 2543, 2543, 2543, 2543, 2543, 2543}, - {478: 6664}, - {2544, 2544, 9: 2544, 89: 2544, 93: 2544, 2544, 2544, 2544, 2544, 2544, 2544, 2544, 2544, 2544}, - {478: 6666}, - {2545, 2545, 9: 2545, 89: 2545, 93: 2545, 2545, 2545, 2545, 2545, 2545, 2545, 2545, 2545, 2545}, + {222: 6697, 352: 6699, 394: 6698}, + {490: 6709, 521: 2798, 747: 6710}, + {592: 6705}, + {217, 217, 6: 217, 15: 217, 50: 217, 217, 372: 6701, 490: 6702, 592: 6700}, + {521: 2798, 747: 4128, 777: 6703}, // 4110 - {2547, 2547, 9: 2547, 89: 2547, 93: 2547, 2547, 2547, 2547, 2547, 2547, 2547, 2547, 2547, 2547}, - {89: 6635, 93: 6640, 6642, 6636, 6641, 6644, 6638, 6634, 6639, 6643, 6637, 878: 6669}, - {2546, 2546, 9: 2546, 89: 2546, 93: 2546, 2546, 2546, 2546, 2546, 2546, 2546, 2546, 2546, 2546}, - {3: 6672, 401: 6673, 408: 6671}, - {104: 2109, 145: 2109, 671: 2109}, + {215, 215, 6: 215, 15: 215, 50: 215, 215}, + {214, 214, 6: 214, 15: 214, 50: 214, 214}, + {107: 6704}, + {216, 216, 6: 216, 15: 216, 50: 216, 216}, + {490: 6706, 521: 2798, 747: 6707}, // 4115 - {104: 2108, 145: 2108, 671: 2108}, - {104: 2107, 145: 2107, 671: 2107}, - {104: 2104, 671: 6679, 1350: 6678}, - {502: 6676}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 6677}, + {219, 219, 6: 219, 15: 219, 50: 219, 219}, + {107: 6708}, + {218, 218, 6: 218, 15: 218, 50: 218, 218}, + {221, 221, 6: 221, 15: 221, 50: 221, 221}, + {220, 220, 6: 220, 15: 220, 50: 220, 220}, // 4120 - {104: 2105, 671: 2105}, - {104: 6683}, - {386: 6680}, - {145: 6681, 355: 6682}, - {104: 2103}, + {223, 223, 6: 223, 15: 223, 50: 223, 223}, + {222, 222, 6: 222, 15: 222, 50: 222, 222}, + {224, 224, 6: 224, 15: 224, 50: 224, 224}, + {262, 262}, + {487: 6718}, // 4125 - {104: 2102}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6685, 1349: 6684}, - {476: 6687, 481: 2100, 1348: 6686}, - {476: 2101, 481: 2101}, - {481: 6693}, + {487: 6717}, + {228, 228}, + {229, 229}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6720, 2824, 2825, 2823}, + {514: 6721}, // 4130 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6689, 2785, 2786, 2784, 1199: 6688}, - {9: 6691, 50: 6690}, - {9: 2098, 50: 2098}, - {481: 2099}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6692, 2785, 2786, 2784}, + {487: 6722}, + {1993, 1993, 17: 1993, 52: 1993, 54: 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 150: 6725, 485: 1993, 517: 6724, 666: 1993, 1058: 6723}, + {2050, 2050, 17: 2050, 52: 2050, 54: 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 485: 2050, 666: 2050, 913: 6730}, + {1992, 1992, 17: 1992, 52: 1992, 54: 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 1992, 74: 1992, 485: 1992, 666: 1992}, + {216: 6728, 405: 6729, 656: 6727, 664: 6726}, // 4135 - {9: 2097, 50: 2097}, - {476: 2608, 2607, 498: 2606, 572: 2605, 649: 2601, 713: 6697, 752: 6695, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 3906, 6696, 6694, 1209: 6698}, - {2119, 2119, 477: 2119}, - {2118, 2118, 477: 2118, 483: 829, 493: 829, 829}, - {2117, 2117, 477: 2117}, + {1991, 1991, 17: 1991, 52: 1991, 54: 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 1991, 74: 1991, 485: 1991, 666: 1991}, + {1990, 1990, 17: 1990, 52: 1990, 54: 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 1990, 74: 1990, 485: 1990, 666: 1990}, + {1989, 1989, 17: 1989, 52: 1989, 54: 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 1989, 74: 1989, 485: 1989, 666: 1989}, + {1988, 1988, 17: 1988, 52: 1988, 54: 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 1988, 74: 1988, 485: 1988, 666: 1988}, + {2005, 2005, 17: 6393, 52: 6369, 54: 6389, 6382, 6372, 6368, 6376, 6380, 6392, 6375, 6381, 6379, 6377, 6390, 6383, 6371, 6391, 6370, 6373, 6374, 6378, 485: 6384, 666: 6394, 909: 6386, 6385, 6388, 6367, 914: 6387}, // 4140 - {2116, 2116, 477: 2116, 483: 828, 493: 828, 828, 496: 2751, 504: 2752, 2748, 772: 3917, 3918}, - {2096, 2096, 477: 6700, 1346: 6699}, - {2113, 2113}, - {141: 6702, 323: 6701}, - {593: 6705}, + {18: 2135, 86: 2135, 106: 2135, 152: 2135, 681: 2135}, + {106: 2130, 152: 6781, 681: 2130, 1360: 6780}, + {512: 6776}, + {174: 6735}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6736}, // 4145 - {593: 6703}, - {911: 6704}, - {2094, 2094}, - {911: 6706}, - {2095, 2095}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5089, 2824, 2825, 2823, 875: 6737}, + {91: 6741, 95: 6746, 6748, 6742, 6747, 6750, 6744, 6740, 6745, 6749, 6743, 889: 6738, 1124: 6739}, + {2574, 2574, 9: 2574, 91: 2574, 95: 2574, 2574, 2574, 2574, 2574, 2574, 2574, 2574, 2574, 2574}, + {55, 55, 9: 6774, 91: 6741, 95: 6746, 6748, 6742, 6747, 6750, 6744, 6740, 6745, 6749, 6743, 889: 6773}, + {487: 2088, 512: 4358, 750: 6771}, // 4150 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6708}, - {2202, 2202, 16: 2193, 18: 2193, 21: 2193, 482: 4266, 487: 2193, 508: 2193, 6712, 650: 2193, 785: 6711, 797: 6710, 855: 6714, 937: 6713, 1210: 6709}, - {2211, 2211}, - {16: 3862, 18: 4223, 21: 6722, 487: 6721, 508: 3863, 650: 3861, 779: 6720, 785: 6723}, - {2204, 2204, 16: 2204, 18: 2204, 21: 2204, 482: 2204, 487: 2204, 508: 2204, 2204, 650: 2204}, + {487: 2088, 512: 4358, 750: 6769}, + {512: 4358, 521: 2088, 750: 6767}, + {512: 4358, 521: 2088, 750: 6765}, + {512: 4358, 521: 2088, 750: 6763}, + {487: 2088, 512: 4358, 750: 6761}, // 4155 - {170: 6716}, - {2201, 2201, 16: 2193, 18: 2193, 21: 2193, 482: 4266, 487: 2193, 508: 2193, 6712, 650: 2193, 785: 6711, 797: 6710, 855: 6715}, - {2200, 2200, 16: 2200, 18: 2200, 21: 2200, 482: 2200, 487: 2200, 508: 2200, 2200, 650: 2200}, - {2199, 2199, 16: 2199, 18: 2199, 21: 2199, 482: 2199, 487: 2199, 508: 2199, 2199, 650: 2199}, - {193: 6717}, + {487: 2088, 512: 4358, 750: 6759}, + {487: 2088, 512: 4358, 750: 6757}, + {487: 2088, 512: 4358, 750: 6755}, + {487: 2088, 512: 4358, 750: 6753}, + {487: 2088, 512: 4358, 750: 6751}, // 4160 - {511: 2759, 737: 2758, 745: 6718}, - {2519, 2519, 16: 2519, 18: 2519, 21: 2519, 186: 5006, 482: 2519, 487: 2519, 508: 2519, 2519, 650: 2519, 1084: 6719}, - {2203, 2203, 16: 2203, 18: 2203, 21: 2203, 482: 2203, 487: 2203, 508: 2203, 2203, 650: 2203}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 533: 2064, 741: 6728}, - {2: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 10: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 51: 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 2064, 478: 2064, 502: 4307, 533: 2064, 741: 6726}, + {487: 6752}, + {2561, 2561, 9: 2561, 91: 2561, 95: 2561, 2561, 2561, 2561, 2561, 2561, 2561, 2561, 2561, 2561}, + {487: 6754}, + {2562, 2562, 9: 2562, 91: 2562, 95: 2562, 2562, 2562, 2562, 2562, 2562, 2562, 2562, 2562, 2562}, + {487: 6756}, // 4165 - {478: 2064, 502: 4307, 741: 6724}, - {2205, 2205, 16: 2205, 18: 2205, 21: 2205, 482: 2205, 487: 2205, 508: 2205, 2205, 650: 2205}, - {478: 4326, 1044: 6725}, - {2206, 2206, 16: 2206, 18: 2206, 21: 2206, 482: 2206, 487: 2206, 508: 2206, 2206, 650: 2206}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3515, 664: 3517, 2785, 2786, 2784, 742: 3514, 876: 6727}, + {2563, 2563, 9: 2563, 91: 2563, 95: 2563, 2563, 2563, 2563, 2563, 2563, 2563, 2563, 2563, 2563}, + {487: 6758}, + {2564, 2564, 9: 2564, 91: 2564, 95: 2564, 2564, 2564, 2564, 2564, 2564, 2564, 2564, 2564, 2564}, + {487: 6760}, + {2565, 2565, 9: 2565, 91: 2565, 95: 2565, 2565, 2565, 2565, 2565, 2565, 2565, 2565, 2565, 2565}, // 4170 - {2207, 2207, 16: 2207, 18: 2207, 21: 2207, 482: 2207, 487: 2207, 508: 2207, 2207, 650: 2207}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 533: 3787, 664: 3517, 2785, 2786, 2784, 742: 3786, 811: 6729}, - {2208, 2208, 16: 2208, 18: 2208, 21: 2208, 482: 2208, 487: 2208, 508: 2208, 2208, 650: 2208}, - {2: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 10: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 51: 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 1875, 567: 4870, 790: 6731}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6732, 2785, 2786, 2784}, + {487: 6762}, + {2566, 2566, 9: 2566, 91: 2566, 95: 2566, 2566, 2566, 2566, 2566, 2566, 2566, 2566, 2566, 2566}, + {521: 2798, 747: 2797, 755: 6764}, + {2567, 2567, 9: 2567, 91: 2567, 95: 2567, 2567, 2567, 2567, 2567, 2567, 2567, 2567, 2567, 2567}, + {521: 2798, 747: 2797, 755: 6766}, // 4175 - {85: 4903, 475: 1858, 484: 4902, 862: 6734, 1242: 6733}, - {475: 6735}, - {475: 1857}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6736}, - {476: 6737}, + {2568, 2568, 9: 2568, 91: 2568, 95: 2568, 2568, 2568, 2568, 2568, 2568, 2568, 2568, 2568, 2568}, + {521: 2798, 747: 2797, 755: 6768}, + {2569, 2569, 9: 2569, 91: 2569, 95: 2569, 2569, 2569, 2569, 2569, 2569, 2569, 2569, 2569, 2569}, + {487: 6770}, + {2570, 2570, 9: 2570, 91: 2570, 95: 2570, 2570, 2570, 2570, 2570, 2570, 2570, 2570, 2570, 2570}, // 4180 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 476: 4644, 664: 4169, 2785, 2786, 2784, 748: 4643, 831: 4642, 841: 6738}, - {9: 4653, 50: 6739}, - {1869, 1869, 6: 1869, 19: 1869, 84: 1869, 1869, 1869, 1869, 1869, 90: 1869, 477: 1869, 484: 1869, 500: 1869, 884: 6740}, - {2222, 2222, 6: 4899, 19: 4896, 84: 4261, 4903, 4749, 4456, 4750, 90: 4455, 477: 4898, 484: 4902, 500: 4262, 860: 4900, 862: 4897, 873: 4901, 6509, 883: 4895, 887: 6508, 1071: 6741}, - {2229, 2229}, + {487: 6772}, + {2571, 2571, 9: 2571, 91: 2571, 95: 2571, 2571, 2571, 2571, 2571, 2571, 2571, 2571, 2571, 2571}, + {2573, 2573, 9: 2573, 91: 2573, 95: 2573, 2573, 2573, 2573, 2573, 2573, 2573, 2573, 2573, 2573}, + {91: 6741, 95: 6746, 6748, 6742, 6747, 6750, 6744, 6740, 6745, 6749, 6743, 889: 6775}, + {2572, 2572, 9: 2572, 91: 2572, 95: 2572, 2572, 2572, 2572, 2572, 2572, 2572, 2572, 2572, 2572}, // 4185 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6743, 2785, 2786, 2784}, - {476: 6744}, - {236: 4932, 244: 4934, 247: 4933, 1148: 6745}, - {50: 6746}, - {475: 6747}, + {3: 6778, 411: 6779, 418: 6777}, + {106: 2133, 152: 2133, 681: 2133}, + {106: 2132, 152: 2132, 681: 2132}, + {106: 2131, 152: 2131, 681: 2131}, + {106: 2128, 681: 6785, 1363: 6784}, // 4190 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6748}, - {476: 6749}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4169, 2785, 2786, 2784, 748: 4170, 812: 6750}, - {9: 4172, 50: 6751}, - {2231, 2231}, + {512: 6782}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 6783}, + {106: 2129, 681: 2129}, + {106: 6789}, + {396: 6786}, // 4195 - {2334, 2334}, - {2359, 2359}, - {2365, 2365, 477: 6756, 674: 6755}, - {156: 6763, 691: 6762}, - {324: 6758, 333: 6757}, + {152: 6787, 363: 6788}, + {106: 2127}, + {106: 2126}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6791, 1362: 6790}, + {486: 6793, 492: 2124, 1361: 6792}, // 4200 - {53: 6761}, - {332: 6759}, - {156: 6760}, - {2362, 2362}, - {2363, 2363}, + {486: 2125, 492: 2125}, + {492: 6799}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6795, 2824, 2825, 2823, 1212: 6794}, + {9: 6797, 73: 6796}, + {9: 2122, 73: 2122}, // 4205 - {2364, 2364}, - {2361, 2361, 676: 5509, 929: 6764}, - {2360, 2360}, - {2367, 2367}, - {2366, 2366}, + {492: 2123}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6798, 2824, 2825, 2823}, + {9: 2121, 73: 2121}, + {486: 2642, 488: 2641, 509: 2640, 581: 2639, 658: 2635, 723: 6803, 762: 6801, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 3955, 6802, 6800, 1222: 6804}, + {2143, 2143, 488: 2143}, // 4210 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6780, 786: 6779}, - {572: 6769}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6770}, - {491: 6772, 652: 6771}, - {922, 922, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 922, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 477: 922, 594: 5058, 664: 5057, 2785, 2786, 2784, 861: 6777}, + {2142, 2142, 488: 2142, 494: 842, 503: 842, 842}, + {2141, 2141, 488: 2141}, + {2140, 2140, 488: 2140, 494: 841, 503: 841, 841, 506: 2790, 515: 2791, 2787, 782: 3966, 3967}, + {2120, 2120, 488: 6806, 1359: 6805}, + {2137, 2137}, // 4215 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 6773}, - {9: 4781, 652: 6774}, - {922, 922, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 922, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 477: 922, 594: 5058, 664: 5057, 2785, 2786, 2784, 861: 6775}, - {2383, 2383, 9: 5060, 477: 5041, 808: 6776}, - {2391, 2391}, + {148: 6808, 332: 6807}, + {604: 6811}, + {604: 6809}, + {922: 6810}, + {2118, 2118}, // 4220 - {2383, 2383, 9: 5060, 477: 5041, 808: 6778}, - {2394, 2394}, - {2386, 2386, 9: 3950, 168: 6800, 477: 2386, 654: 6799, 986: 6810}, - {1067, 1067, 9: 1067, 103: 6785, 168: 1067, 477: 1067, 491: 6782, 652: 6781, 654: 1067, 657: 6783, 672: 6784}, - {922, 922, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 922, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 477: 922, 594: 5058, 664: 5057, 2785, 2786, 2784, 861: 6808}, + {922: 6812}, + {2119, 2119}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6814}, + {2226, 2226, 16: 2217, 18: 2217, 21: 2217, 490: 4315, 493: 2217, 508: 2217, 519: 6818, 660: 2217, 795: 6817, 808: 6816, 865: 6820, 948: 6819, 1223: 6815}, + {2236, 2236}, // 4225 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 4780, 2785, 2786, 2784, 791: 6795}, - {262: 6791}, - {262: 6788}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5938, 2785, 2786, 2784, 881: 6786}, - {2383, 2383, 9: 5940, 477: 5041, 808: 6787}, + {16: 3911, 18: 4272, 21: 6828, 493: 6827, 508: 3912, 660: 3910, 790: 6826, 795: 6829}, + {2228, 2228, 16: 2228, 18: 2228, 21: 2228, 490: 2228, 493: 2228, 508: 2228, 519: 2228, 660: 2228}, + {177: 6822}, + {2225, 2225, 16: 2217, 18: 2217, 21: 2217, 490: 4315, 493: 2217, 508: 2217, 519: 6818, 660: 2217, 795: 6817, 808: 6816, 865: 6821}, + {2224, 2224, 16: 2224, 18: 2224, 21: 2224, 490: 2224, 493: 2224, 508: 2224, 519: 2224, 660: 2224}, // 4230 - {2388, 2388}, - {475: 6789}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5938, 2785, 2786, 2784, 881: 6790}, - {2389, 2389, 9: 5940}, - {475: 6792}, + {2223, 2223, 16: 2223, 18: 2223, 21: 2223, 490: 2223, 493: 2223, 508: 2223, 519: 2223, 660: 2223}, + {201: 6823}, + {521: 2798, 747: 2797, 755: 6824}, + {2544, 2544, 16: 2544, 18: 2544, 21: 2544, 193: 5065, 490: 2544, 493: 2544, 508: 2544, 519: 2544, 660: 2544, 1096: 6825}, + {2227, 2227, 16: 2227, 18: 2227, 21: 2227, 490: 2227, 493: 2227, 508: 2227, 519: 2227, 660: 2227}, // 4235 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5938, 2785, 2786, 2784, 881: 6793}, - {2383, 2383, 9: 5940, 477: 5041, 808: 6794}, - {2390, 2390}, - {2386, 2386, 9: 4781, 103: 6798, 168: 6800, 477: 2386, 652: 6797, 654: 6799, 986: 6796}, - {2383, 2383, 477: 5041, 808: 6807}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 543: 2088, 750: 6834}, + {2: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 10: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 74: 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 2088, 487: 2088, 512: 4358, 543: 2088, 750: 6832}, + {487: 2088, 512: 4358, 750: 6830}, + {2229, 2229, 16: 2229, 18: 2229, 21: 2229, 490: 2229, 493: 2229, 508: 2229, 519: 2229, 660: 2229}, + {487: 4385, 1056: 6831}, // 4240 - {922, 922, 3161, 2991, 3026, 2871, 2907, 3028, 2798, 922, 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 477: 922, 594: 5058, 664: 5057, 2785, 2786, 2784, 861: 6805}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5938, 2785, 2786, 2784, 881: 6803}, - {103: 6802}, - {103: 6801}, - {2384, 2384, 477: 2384}, + {2230, 2230, 16: 2230, 18: 2230, 21: 2230, 490: 2230, 493: 2230, 508: 2230, 519: 2230, 660: 2230}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3564, 676: 3566, 2824, 2825, 2823, 752: 3563, 887: 6833}, + {2231, 2231, 16: 2231, 18: 2231, 21: 2231, 490: 2231, 493: 2231, 508: 2231, 519: 2231, 660: 2231}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 543: 3836, 676: 3566, 2824, 2825, 2823, 752: 3835, 822: 6835}, + {2232, 2232, 16: 2232, 18: 2232, 21: 2232, 490: 2232, 493: 2232, 508: 2232, 519: 2232, 660: 2232}, // 4245 - {2385, 2385, 477: 2385}, - {2383, 2383, 9: 5940, 477: 5041, 808: 6804}, - {2387, 2387}, - {2383, 2383, 9: 5060, 477: 5041, 808: 6806}, - {2392, 2392}, + {2: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 10: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 74: 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 1898, 577: 4929, 797: 6837}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6838, 2824, 2825, 2823}, + {87: 4962, 485: 1881, 495: 4961, 872: 6840, 1255: 6839}, + {485: 6841}, + {485: 1880}, // 4250 - {2393, 2393}, - {2383, 2383, 9: 5060, 477: 5041, 808: 6809}, - {2395, 2395}, - {2383, 2383, 477: 5041, 808: 6811}, - {2396, 2396}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6842}, + {486: 6843}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 486: 4703, 676: 4218, 2824, 2825, 2823, 758: 4702, 841: 4701, 851: 6844}, + {9: 4712, 73: 6845}, + {1892, 1892, 6: 1892, 19: 1892, 86: 1892, 1892, 1892, 1892, 1892, 92: 1892, 488: 1892, 495: 1892, 511: 1892, 896: 6846}, // 4255 - {572: 6817}, - {497: 6815}, - {572: 2398}, - {491: 6816, 572: 2399}, - {572: 2397}, + {2247, 2247, 6: 4958, 19: 4955, 86: 4310, 4962, 4808, 4515, 4809, 92: 4514, 488: 4957, 495: 4961, 511: 4311, 870: 4959, 872: 4956, 884: 4960, 6578, 895: 4954, 899: 6577, 1083: 6847}, + {2254, 2254}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6849, 2824, 2825, 2823}, + {486: 6850}, + {245: 4991, 253: 4993, 255: 4992, 1162: 6851}, // 4260 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6818}, - {491: 5503, 566: 936, 652: 936, 663: 936, 864: 6819}, - {566: 6822, 652: 6821, 663: 6823, 1143: 6820}, - {2404, 2404}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6830, 2785, 2786, 2784}, + {73: 6852}, + {485: 6853}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6854}, + {486: 6855}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4218, 2824, 2825, 2823, 758: 4219, 823: 6856}, // 4265 - {476: 3923, 844: 6825}, - {476: 3923, 844: 6079, 980: 6824}, - {2401, 2401, 9: 6080}, - {510: 6826}, - {476: 3923, 844: 6827}, + {9: 4221, 73: 6857}, + {2256, 2256}, + {2359, 2359}, + {2384, 2384}, + {2390, 2390, 488: 6862, 684: 6861}, // 4270 - {89: 6828}, - {511: 2759, 737: 4079, 767: 6829}, - {2402, 2402}, - {566: 6822, 663: 6823, 1143: 6831}, - {2403, 2403}, + {163: 6869, 701: 6868}, + {333: 6864, 342: 6863}, + {54: 6867}, + {341: 6865}, + {163: 6866}, // 4275 - {680: 6846}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6842, 786: 6841}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5434, 2785, 2786, 2784, 813: 6835}, - {2407, 2407, 653: 6837, 680: 6836, 1056: 6838}, - {478: 6840}, + {2387, 2387}, + {2388, 2388}, + {2389, 2389}, + {2386, 2386, 686: 5570, 940: 6870}, + {2385, 2385}, // 4280 - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6839, 2785, 2786, 2784}, - {2405, 2405}, - {2406, 2406}, - {2409, 2409}, - {9: 3950, 680: 6844}, + {2392, 2392}, + {2391, 2391}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6886, 796: 6885}, + {581: 6875}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6876}, // 4285 - {2407, 2407, 9: 1067, 653: 6837, 680: 1067, 1056: 6843}, - {2408, 2408}, - {478: 6845}, - {2410, 2410}, - {478: 6847}, + {501: 6878, 661: 6877}, + {935, 935, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 935, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 488: 935, 605: 5117, 676: 5116, 2824, 2825, 2823, 871: 6883}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 6879}, + {9: 4840, 661: 6880}, + {935, 935, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 935, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 488: 935, 605: 5117, 676: 5116, 2824, 2825, 2823, 871: 6881}, // 4290 - {2411, 2411}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 663: 6849, 3947, 2785, 2786, 2784, 740: 6850}, - {268: 6852}, - {2413, 2413, 511: 2759, 737: 4079, 767: 6851}, - {2412, 2412}, + {2408, 2408, 9: 5119, 488: 5100, 818: 6882}, + {2416, 2416}, + {2408, 2408, 9: 5119, 488: 5100, 818: 6884}, + {2419, 2419}, + {2411, 2411, 9: 3999, 175: 6906, 488: 2411, 664: 6905, 996: 6916}, // 4295 - {511: 2759, 737: 4079, 767: 6853}, - {2414, 2414}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6865, 1158: 6864, 1335: 6863}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 6858, 1164: 6857, 1340: 6856}, - {2418, 2418, 9: 6861}, + {1080, 1080, 9: 1080, 105: 6891, 175: 1080, 488: 1080, 501: 6888, 661: 6887, 664: 1080, 667: 6889, 682: 6890}, + {935, 935, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 935, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 488: 935, 605: 5117, 676: 5116, 2824, 2825, 2823, 871: 6914}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 4839, 2824, 2825, 2823, 801: 6901}, + {271: 6897}, + {271: 6894}, // 4300 - {2417, 2417, 9: 2417}, - {653: 6859}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 6860}, - {2415, 2415, 9: 2415}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 6858, 1164: 6862}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5999, 2824, 2825, 2823, 893: 6892}, + {2408, 2408, 9: 6001, 488: 5100, 818: 6893}, + {2413, 2413}, + {485: 6895}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5999, 2824, 2825, 2823, 893: 6896}, // 4305 - {2416, 2416, 9: 2416}, - {2422, 2422, 9: 6868}, - {2421, 2421, 9: 2421}, - {653: 6866}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6867}, + {2414, 2414, 9: 6001}, + {485: 6898}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5999, 2824, 2825, 2823, 893: 6899}, + {2408, 2408, 9: 6001, 488: 5100, 818: 6900}, + {2415, 2415}, // 4310 - {2419, 2419, 9: 2419}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6865, 1158: 6869}, - {2420, 2420, 9: 2420}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 2193, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 482: 4266, 487: 2193, 508: 2193, 6712, 650: 2193, 664: 5434, 2785, 2786, 2784, 785: 6711, 797: 6710, 813: 6920, 855: 6714, 937: 6921}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 6910, 2785, 2786, 2784}, + {2411, 2411, 9: 4840, 105: 6904, 175: 6906, 488: 2411, 661: 6903, 664: 6905, 996: 6902}, + {2408, 2408, 488: 5100, 818: 6913}, + {935, 935, 3205, 3031, 3066, 2910, 2947, 3068, 2837, 935, 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 488: 935, 605: 5117, 676: 5116, 2824, 2825, 2823, 871: 6911}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5999, 2824, 2825, 2823, 893: 6909}, + {105: 6908}, // 4315 - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 478: 1877, 567: 4478, 573: 1877, 784: 6898}, - {282: 6892, 1244: 6891}, - {167: 6887}, - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6876}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 3947, 2785, 2786, 2784, 740: 6877}, + {105: 6907}, + {2409, 2409, 488: 2409}, + {2410, 2410, 488: 2410}, + {2408, 2408, 9: 6001, 488: 5100, 818: 6910}, + {2412, 2412}, // 4320 - {73: 6538, 6535, 6541, 6542, 6543, 6536, 6534, 6544, 6540, 6537, 6881, 658: 6539, 918: 6880, 992: 6879, 1178: 6878}, - {27, 27, 73: 6538, 6535, 6541, 6542, 6543, 6536, 6534, 6544, 6540, 6537, 6881, 658: 6539, 918: 6880, 992: 6886}, - {26, 26, 73: 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 658: 26}, - {24, 24, 73: 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 658: 24}, - {23, 23, 73: 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 477: 6883, 488: 2064, 2064, 502: 4307, 511: 2064, 658: 23, 741: 6882}, + {2408, 2408, 9: 5119, 488: 5100, 818: 6912}, + {2417, 2417}, + {2418, 2418}, + {2408, 2408, 9: 5119, 488: 5100, 818: 6915}, + {2420, 2420}, // 4325 - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6885}, - {488: 4082, 4083, 511: 2759, 737: 4079, 767: 4081, 819: 6884}, - {21, 21, 73: 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 658: 21}, - {22, 22, 73: 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 658: 22}, - {25, 25, 73: 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 658: 25}, + {2408, 2408, 488: 5100, 818: 6917}, + {2421, 2421}, + {581: 6923}, + {507: 6921}, + {581: 2423}, // 4330 - {2: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 10: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 51: 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 1877, 567: 4478, 784: 6888}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 3405, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 664: 5030, 2785, 2786, 2784, 890: 6889}, - {89: 6635, 93: 6640, 6642, 6636, 6641, 6644, 6638, 6634, 6639, 6643, 6637, 878: 6632, 1112: 6890}, - {53, 53, 9: 6668, 89: 6635, 93: 6640, 6642, 6636, 6641, 6644, 6638, 6634, 6639, 6643, 6637, 878: 6667}, - {249, 249}, + {501: 6922, 581: 2424}, + {581: 2422}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6924}, + {501: 5564, 576: 949, 661: 949, 673: 949, 874: 6925}, + {576: 6928, 661: 6927, 673: 6929, 1157: 6926}, // 4335 - {403: 6893}, - {248, 248, 73: 6894}, - {157: 6895}, - {475: 6896}, - {211: 6897}, + {2429, 2429}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6936, 2824, 2825, 2823}, + {486: 3972, 854: 6931}, + {486: 3972, 854: 6140, 990: 6930}, + {2426, 2426, 9: 6141}, // 4340 - {247, 247}, - {2: 3161, 2991, 3026, 2871, 2907, 3028, 2798, 10: 2844, 2799, 2930, 3045, 3038, 3398, 3393, 2910, 3196, 2912, 2886, 2830, 2833, 2822, 2855, 2914, 2915, 3022, 2909, 3046, 3152, 3151, 2797, 2908, 2911, 2922, 2862, 2866, 2918, 3031, 2877, 2958, 2795, 2796, 2957, 3030, 2794, 3043, 2790, 3003, 51: 3114, 2876, 2879, 3097, 3094, 3086, 3098, 3101, 3102, 3099, 3103, 3104, 3100, 3093, 3105, 3088, 3089, 3092, 3095, 3096, 3106, 3401, 2944, 2880, 3073, 3072, 3074, 3069, 3068, 3075, 3070, 3071, 2872, 2988, 3058, 3122, 3056, 3123, 3165, 3057, 2884, 2952, 3248, 3252, 3240, 3251, 3253, 3243, 3249, 3250, 3254, 3247, 2813, 2947, 3402, 3395, 3391, 2807, 3414, 3055, 3044, 2842, 3397, 3412, 3413, 3411, 3407, 3047, 3048, 3049, 3050, 3051, 3052, 3054, 3403, 2885, 2881, 2973, 2997, 3390, 2999, 2977, 2978, 2979, 2980, 2968, 2815, 2998, 3125, 3040, 2857, 2969, 3119, 2949, 2989, 2852, 2905, 3064, 2926, 2816, 2821, 2832, 2847, 2856, 3059, 2929, 2874, 2971, 2888, 2896, 2802, 2948, 2831, 2851, 3228, 2861, 3108, 3200, 2985, 3159, 2894, 6899, 2924, 3198, 2865, 2873, 2895, 3109, 2806, 2824, 3394, 2845, 2837, 2923, 2858, 3062, 3078, 3006, 3115, 3116, 3080, 2943, 3061, 3117, 3036, 3195, 3145, 3076, 2875, 2976, 3148, 3399, 3034, 2933, 2791, 2817, 2938, 2828, 2829, 2940, 2836, 2846, 2849, 3087, 2899, 3001, 3197, 2967, 2936, 2996, 3039, 2925, 3147, 2883, 3158, 3400, 3035, 3126, 3084, 3127, 2945, 3007, 2805, 3176, 3128, 3131, 2811, 3110, 3132, 3410, 2818, 3009, 3178, 3134, 3005, 2826, 3136, 3018, 3042, 3029, 2827, 3182, 3138, 3168, 3037, 2840, 3067, 3235, 3396, 2850, 2853, 3019, 3065, 3187, 3060, 3188, 3013, 3140, 3139, 3063, 3120, 2950, 3415, 3141, 3142, 2954, 3011, 3143, 3118, 2869, 2870, 2984, 3090, 2986, 3201, 3144, 3032, 3033, 2974, 2878, 3015, 2793, 3210, 3014, 3217, 3218, 3219, 3220, 3222, 3221, 3223, 3224, 3225, 3160, 2891, 3016, 3245, 3244, 2897, 2787, 2788, 3066, 3083, 2800, 3085, 3111, 2792, 2803, 2804, 3129, 3130, 2808, 2995, 2809, 2810, 2982, 3121, 3406, 3133, 2927, 2814, 2819, 2820, 3135, 3137, 2939, 3183, 2941, 2834, 2835, 2951, 2839, 3002, 3229, 2841, 3012, 2946, 2920, 3155, 3020, 3041, 3004, 2935, 3189, 2990, 3008, 3053, 2932, 3021, 2913, 3077, 2916, 2917, 3416, 2953, 2860, 2882, 3162, 3230, 2863, 3024, 3027, 3079, 3113, 3163, 3124, 2963, 2964, 2970, 3193, 3166, 3194, 3167, 3091, 3169, 2994, 2931, 3146, 3025, 2983, 3153, 3150, 3154, 3149, 3202, 3010, 3112, 3023, 3214, 3157, 2992, 2887, 3238, 3226, 2892, 2921, 2928, 2993, 3164, 3000, 3419, 2902, 3171, 3172, 3392, 3173, 3174, 3175, 3231, 3177, 3179, 3180, 3181, 2838, 2987, 3232, 2956, 3184, 2843, 3239, 3420, 3186, 3425, 3424, 3417, 3241, 3242, 3191, 3190, 2859, 3192, 3199, 2962, 2867, 2868, 3107, 2981, 3408, 3409, 3418, 2975, 2903, 3017, 2934, 2937, 3233, 3206, 3207, 3208, 3209, 3234, 3421, 3204, 3205, 2955, 3156, 3422, 3423, 3227, 3211, 3212, 3213, 3246, 3404, 478: 3516, 573: 5333, 664: 3517, 2785, 2786, 2784, 742: 5332, 781: 5350, 895: 5351, 927: 6900}, - {1728, 1728, 6: 1728, 9: 1728, 15: 1728, 48: 1728, 1728, 147: 1728, 476: 6905, 1728, 571: 1728, 669: 1728, 1728}, - {235, 235, 6: 235, 9: 5353, 15: 235, 48: 235, 235, 477: 235, 669: 5397, 965: 5396, 6901}, - {243, 243, 6: 243, 15: 243, 48: 243, 243, 477: 6580, 1013: 6902}, + {520: 6932}, + {486: 3972, 854: 6933}, + {91: 6934}, + {521: 2798, 747: 4128, 777: 6935}, + {2427, 2427}, // 4345 - {218, 218, 6: 218, 15: 6597, 48: 218, 6595, 958: 6596, 6594, 1110: 6593, 6903}, - {221, 221, 6: 6609, 48: 6610, 1010: 6904}, - {251, 251}, - {50: 6906}, - {147: 6907}, + {576: 6928, 673: 6929, 1157: 6937}, + {2428, 2428}, + {690: 6952}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6948, 796: 6947}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5495, 2824, 2825, 2823, 824: 6941}, // 4350 - {663: 6908}, - {478: 5366, 897: 6909}, - {250, 250}, - {1970, 1970, 17: 1970, 51: 1970, 53: 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 143: 6619, 475: 1970, 507: 6618, 656: 1970, 1046: 6911}, - {2027, 2027, 17: 2027, 51: 2027, 53: 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 2027, 475: 2027, 656: 2027, 902: 6912}, + {2432, 2432, 663: 6943, 690: 6942, 1068: 6944}, + {487: 6946}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6945, 2824, 2825, 2823}, + {2430, 2430}, + {2431, 2431}, // 4355 - {1964, 1964, 17: 6332, 51: 6308, 53: 6328, 6321, 6311, 6307, 6315, 6319, 6331, 6314, 6320, 6318, 6316, 6329, 6322, 6310, 6330, 6309, 6312, 6313, 6317, 6914, 475: 6323, 656: 6333, 898: 6325, 6324, 6327, 6306, 903: 6326, 1238: 6913}, - {1979, 1979}, - {183: 6916, 654: 6915}, - {577, 577, 572: 6279, 974: 6918}, - {577, 577, 572: 6279, 974: 6917}, + {2434, 2434}, + {9: 3999, 690: 6950}, + {2432, 2432, 9: 1080, 663: 6943, 690: 1080, 1068: 6949}, + {2433, 2433}, + {487: 6951}, // 4360 - {1962, 1962}, - {1963, 1963}, - {16: 1434, 18: 1434, 21: 1434, 167: 5023, 482: 1434, 487: 1434, 508: 1434, 1434, 650: 1434}, - {16: 2193, 18: 2193, 21: 2193, 482: 4266, 487: 2193, 508: 2193, 6712, 650: 2193, 785: 6711, 797: 6710, 855: 6714, 937: 6922}, - {2212, 2212, 16: 2193, 18: 2193, 21: 2193, 482: 4266, 487: 2193, 508: 2193, 6712, 650: 2193, 785: 6711, 797: 6710, 855: 6715}, + {2435, 2435}, + {487: 6953}, + {2436, 2436}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 673: 6955, 676: 3996, 2824, 2825, 2823, 751: 6956}, + {277: 6958}, // 4365 - {2213, 2213, 16: 2193, 18: 2193, 21: 2193, 482: 4266, 487: 2193, 508: 2193, 6712, 650: 2193, 785: 6711, 797: 6710, 855: 6715}, - {2062, 2062, 2564, 51: 2588, 72: 2711, 74: 2567, 83: 2599, 150: 2569, 157: 2597, 2582, 161: 2566, 175: 2593, 212: 2618, 217: 2724, 220: 2562, 228: 2617, 2584, 2720, 2568, 246: 2596, 251: 2572, 256: 2594, 258: 2563, 261: 2600, 279: 2586, 283: 2585, 290: 2598, 293: 2587, 305: 2577, 476: 2608, 2607, 498: 2606, 500: 2719, 507: 2592, 509: 2616, 528: 2714, 532: 2580, 570: 2591, 572: 2605, 649: 2601, 652: 2723, 656: 2565, 2713, 668: 2560, 672: 2571, 677: 2570, 683: 2615, 690: 2561, 713: 2612, 743: 2573, 752: 2614, 2602, 2603, 2604, 2613, 760: 2611, 2610, 2609, 2576, 2691, 2690, 770: 2712, 2574, 777: 2670, 2702, 780: 2683, 783: 2575, 788: 2634, 804: 2583, 810: 2622, 814: 2717, 849: 2628, 2629, 854: 2632, 858: 2715, 863: 2673, 865: 2685, 867: 2680, 2689, 2692, 2589, 936: 2641, 940: 2578, 978: 2718, 985: 2620, 987: 2621, 2624, 2625, 991: 2627, 993: 2626, 995: 2623, 997: 2630, 2631, 1000: 2590, 2669, 1003: 2637, 1014: 2645, 2638, 2639, 2640, 2646, 2644, 2647, 2648, 1023: 2643, 2642, 1026: 2633, 2595, 2579, 2649, 2661, 2650, 2651, 2652, 2654, 2658, 2655, 2659, 2660, 2653, 2657, 2656, 1043: 2619, 1047: 2635, 1049: 2636, 2581, 1054: 2665, 2663, 1057: 2664, 2662, 1061: 2667, 2668, 2666, 1067: 2708, 2671, 1075: 2722, 2721, 2672, 1082: 2674, 1085: 2675, 2705, 1088: 2709, 1113: 2677, 2678, 1116: 2679, 1118: 2684, 1121: 2681, 2682, 1124: 2707, 2686, 2716, 2688, 2687, 1133: 2693, 1135: 2695, 2694, 2698, 1139: 2699, 1141: 2706, 1144: 2696, 6924, 1149: 2697, 1160: 2700, 2701, 2676, 2704, 1165: 2703}, - {454, 454}, + {2438, 2438, 521: 2798, 747: 4128, 777: 6957}, + {2437, 2437}, + {521: 2798, 747: 4128, 777: 6959}, + {2439, 2439}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6971, 1172: 6970, 1348: 6969}, + // 4370 + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 6964, 1178: 6963, 1353: 6962}, + {2443, 2443, 9: 6967}, + {2442, 2442, 9: 2442}, + {663: 6965}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 6966}, + // 4375 + {2440, 2440, 9: 2440}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 6964, 1178: 6968}, + {2441, 2441, 9: 2441}, + {2447, 2447, 9: 6974}, + {2446, 2446, 9: 2446}, + // 4380 + {663: 6972}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6973}, + {2444, 2444, 9: 2444}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6971, 1172: 6975}, + {2445, 2445, 9: 2445}, + // 4385 + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 2217, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 490: 4315, 493: 2217, 508: 2217, 519: 6818, 660: 2217, 676: 5495, 2824, 2825, 2823, 795: 6817, 808: 6816, 824: 7031, 865: 6820, 948: 7032}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 7021, 2824, 2825, 2823}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 487: 1900, 577: 4537, 583: 1900, 792: 7009}, + {291: 7003, 1257: 7002}, + {526: 6998}, + // 4390 + {174: 6994}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6983}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 3996, 2824, 2825, 2823, 751: 6984}, + {75: 6608, 6605, 6611, 6612, 6613, 6606, 6604, 6614, 6610, 6607, 6988, 668: 6609, 929: 6987, 1003: 6986, 1192: 6985}, + {28, 28, 75: 6608, 6605, 6611, 6612, 6613, 6606, 6604, 6614, 6610, 6607, 6988, 668: 6609, 929: 6987, 1003: 6993}, + // 4395 + {27, 27, 75: 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 668: 27}, + {25, 25, 75: 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 668: 25}, + {24, 24, 75: 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 488: 6990, 498: 2088, 2088, 512: 4358, 521: 2088, 668: 24, 750: 6989}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6992}, + {498: 4131, 4132, 521: 2798, 747: 4128, 777: 4130, 830: 6991}, + // 4400 + {22, 22, 75: 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 668: 22}, + {23, 23, 75: 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 668: 23}, + {26, 26, 75: 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 668: 26}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6995}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 5089, 2824, 2825, 2823, 875: 6996}, + // 4405 + {91: 6741, 95: 6746, 6748, 6742, 6747, 6750, 6744, 6740, 6745, 6749, 6743, 889: 6738, 1124: 6997}, + {54, 54, 9: 6774, 91: 6741, 95: 6746, 6748, 6742, 6747, 6750, 6744, 6740, 6745, 6749, 6743, 889: 6773}, + {2: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 10: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 74: 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 1900, 577: 4537, 792: 6999}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 3454, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 676: 6637, 2824, 2825, 2823, 1136: 7000}, + {113: 6643, 129: 6644, 6645, 6641, 133: 6642, 890: 6639, 1137: 7001}, + // 4410 + {57, 57, 9: 6657, 113: 6643, 129: 6644, 6645, 6641, 133: 6642, 890: 6656}, + {258, 258}, + {413: 7004}, + {257, 257, 75: 7005}, + {164: 7006}, + // 4415 + {485: 7007}, + {219: 7008}, + {256, 256}, + {2: 3205, 3031, 3066, 2910, 2947, 3068, 2837, 10: 2883, 2838, 2970, 3085, 3078, 3447, 3442, 2950, 3240, 2952, 2926, 2869, 2872, 2861, 2894, 2954, 2955, 3062, 2949, 3086, 3196, 3195, 3166, 2836, 2948, 2951, 2962, 2901, 2905, 2958, 3071, 2917, 2998, 2834, 2835, 2997, 3070, 2833, 3083, 3167, 2829, 3043, 3154, 2916, 2919, 3137, 3134, 3126, 3138, 3141, 3142, 3139, 3143, 3144, 3140, 3133, 3145, 3128, 3129, 3132, 3135, 3136, 3146, 74: 3450, 2984, 2920, 3113, 3112, 3114, 3109, 3108, 3115, 3110, 3111, 2912, 3028, 3098, 3162, 3096, 3163, 3209, 3097, 2924, 2992, 3292, 3296, 3284, 3295, 3297, 3287, 3293, 3294, 3298, 3291, 2852, 2987, 3444, 3451, 3463, 3095, 3440, 2846, 3045, 3446, 3461, 3462, 3460, 3456, 3087, 3088, 3089, 3090, 3091, 3092, 3094, 3084, 3452, 2881, 3300, 3301, 3302, 2925, 3303, 2921, 3013, 3037, 3439, 3039, 3017, 3018, 3019, 3020, 3008, 2854, 3038, 3165, 3080, 2896, 3009, 3159, 2989, 3029, 2891, 2945, 3104, 2966, 2855, 2860, 2871, 2886, 2895, 3099, 2969, 2914, 3011, 2928, 2936, 2841, 2988, 2870, 2890, 3272, 2900, 3148, 3244, 3025, 3203, 2934, 7010, 2964, 3242, 2904, 2913, 2935, 3149, 2845, 2863, 3443, 2884, 2876, 2963, 2897, 3102, 3118, 3046, 3155, 3156, 3120, 3241, 2983, 3101, 3157, 3076, 3239, 3189, 3116, 2915, 3016, 3192, 3448, 3074, 2973, 2830, 2856, 2978, 2867, 2868, 2980, 2875, 2885, 2888, 3060, 3127, 2939, 3007, 2976, 3036, 3079, 2965, 2911, 3191, 2923, 3202, 3449, 3075, 3170, 3124, 3171, 2985, 3047, 2844, 3220, 3172, 2847, 3175, 2850, 3150, 3176, 3459, 2857, 3049, 3222, 3178, 2865, 3180, 3168, 3058, 3082, 3069, 2866, 3226, 3182, 3212, 3077, 2879, 3107, 3279, 3445, 2889, 2892, 3059, 3105, 3231, 3100, 3232, 3053, 3184, 3183, 3103, 3160, 2990, 3464, 3185, 3186, 2994, 3051, 3187, 3158, 2908, 2909, 3024, 3130, 3026, 3245, 3188, 3072, 3073, 3014, 2918, 3055, 2832, 3254, 3054, 3299, 3261, 3262, 3263, 3264, 3266, 3265, 3267, 3268, 3269, 3204, 2931, 3056, 3289, 3288, 2937, 2826, 2827, 3106, 3123, 2839, 3125, 3151, 2831, 2842, 2843, 3173, 3174, 3035, 2848, 2849, 3022, 3161, 3455, 3177, 2967, 2853, 2858, 2859, 3179, 3181, 2979, 3227, 2981, 2873, 2874, 2991, 2878, 3042, 3273, 2880, 3052, 2986, 2960, 3199, 3081, 3044, 2975, 3233, 3030, 3048, 3093, 2972, 3061, 2953, 3117, 2956, 2957, 3041, 3465, 2993, 2899, 2922, 3206, 3274, 2902, 3064, 3067, 3119, 3153, 3207, 3164, 3003, 3004, 3010, 3237, 3210, 3238, 3211, 3131, 3169, 3213, 3034, 2971, 3190, 3065, 3023, 3197, 3194, 3198, 3193, 3246, 3050, 3152, 3063, 3258, 3201, 3032, 2927, 3282, 3270, 2932, 2961, 2968, 3033, 3208, 3040, 3468, 2942, 3215, 3216, 3441, 3217, 3218, 3219, 3275, 3221, 3223, 3224, 3225, 2877, 3027, 3276, 2996, 3228, 2882, 3283, 3469, 3230, 3474, 3473, 3466, 3285, 3286, 3235, 3234, 2898, 3236, 3243, 3002, 2906, 2907, 3147, 3021, 3457, 3458, 3467, 3015, 2943, 3057, 2974, 2977, 3277, 3250, 3251, 3252, 3253, 3278, 3470, 3248, 3249, 2995, 3200, 3471, 3472, 3271, 3255, 3256, 3257, 3290, 3453, 487: 3565, 583: 5394, 676: 3566, 2824, 2825, 2823, 752: 5393, 791: 5411, 906: 5412, 938: 7011}, + {1750, 1750, 6: 1750, 9: 1750, 15: 1750, 50: 1750, 1750, 154: 1750, 486: 7016, 488: 1750, 582: 1750, 675: 1750, 680: 1750}, + // 4420 + {244, 244, 6: 244, 9: 5414, 15: 244, 50: 244, 244, 488: 244, 675: 5458, 975: 5457, 7012}, + {252, 252, 6: 252, 15: 252, 50: 252, 252, 488: 6680, 1024: 7013}, + {227, 227, 6: 227, 15: 6696, 50: 227, 6695, 969: 6694, 1122: 6693, 7014}, + {230, 230, 6: 6715, 50: 6716, 1021: 7015}, + {260, 260}, + // 4425 + {73: 7017}, + {154: 7018}, + {673: 7019}, + {487: 5427, 908: 7020}, + {259, 259}, + // 4430 + {1993, 1993, 17: 1993, 52: 1993, 54: 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 74: 1993, 150: 6725, 485: 1993, 517: 6724, 666: 1993, 1058: 7022}, + {2050, 2050, 17: 2050, 52: 2050, 54: 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 2050, 74: 2050, 485: 2050, 666: 2050, 913: 7023}, + {1987, 1987, 17: 6393, 52: 6369, 54: 6389, 6382, 6372, 6368, 6376, 6380, 6392, 6375, 6381, 6379, 6377, 6390, 6383, 6371, 6391, 6370, 6373, 6374, 6378, 74: 7025, 485: 6384, 666: 6394, 909: 6386, 6385, 6388, 6367, 914: 6387, 1251: 7024}, + {2002, 2002}, + {190: 7027, 664: 7026}, + // 4435 + {590, 590, 581: 6340, 984: 7029}, + {590, 590, 581: 6340, 984: 7028}, + {1985, 1985}, + {1986, 1986}, + {16: 1452, 18: 1452, 21: 1452, 174: 5082, 490: 1452, 493: 1452, 508: 1452, 519: 1452, 660: 1452}, + // 4440 + {16: 2217, 18: 2217, 21: 2217, 490: 4315, 493: 2217, 508: 2217, 519: 6818, 660: 2217, 795: 6817, 808: 6816, 865: 6820, 948: 7033}, + {2237, 2237, 16: 2217, 18: 2217, 21: 2217, 490: 4315, 493: 2217, 508: 2217, 519: 6818, 660: 2217, 795: 6817, 808: 6816, 865: 6821}, + {2238, 2238, 16: 2217, 18: 2217, 21: 2217, 490: 4315, 493: 2217, 508: 2217, 519: 6818, 660: 2217, 795: 6817, 808: 6816, 865: 6821}, + {2086, 2086, 2598, 52: 2622, 74: 2747, 76: 2601, 85: 2633, 157: 2603, 164: 2631, 2616, 168: 2600, 182: 2627, 199: 2760, 220: 2652, 227: 2596, 236: 2651, 2618, 2756, 2602, 254: 2630, 260: 2606, 265: 2628, 267: 2597, 270: 2634, 288: 2620, 292: 2619, 299: 2632, 302: 2621, 315: 2611, 486: 2642, 488: 2641, 509: 2640, 511: 2755, 517: 2626, 519: 2650, 538: 2750, 542: 2614, 580: 2625, 2639, 658: 2635, 661: 2759, 666: 2599, 2749, 674: 2594, 682: 2605, 687: 2604, 693: 2649, 700: 2595, 723: 2646, 753: 2607, 762: 2648, 2636, 2637, 2638, 2647, 770: 2645, 2644, 2643, 2610, 2727, 2726, 780: 2748, 2608, 787: 2706, 2719, 2738, 794: 2609, 799: 2669, 814: 2617, 821: 2656, 825: 2753, 859: 2663, 2664, 864: 2667, 868: 2751, 873: 2709, 876: 2721, 878: 2716, 2725, 2728, 2623, 947: 2676, 951: 2612, 988: 2754, 995: 2654, 997: 2655, 2658, 2659, 1001: 2661, 2662, 1004: 2660, 1006: 2657, 1008: 2665, 2666, 1011: 2624, 2705, 1014: 2672, 1025: 2680, 2673, 2674, 2675, 2681, 2682, 2679, 2683, 2684, 1035: 2678, 2677, 1038: 2668, 2629, 2613, 2685, 2697, 2686, 2687, 2688, 2690, 2694, 2691, 2695, 2696, 2689, 2693, 2692, 1055: 2653, 1059: 2670, 1061: 2671, 2615, 1066: 2701, 2699, 1069: 2700, 2698, 1073: 2703, 2704, 2702, 1079: 2744, 2707, 1087: 2758, 2757, 2708, 1094: 2710, 1097: 2711, 2741, 1100: 2745, 1125: 2713, 2714, 1128: 2715, 1130: 2720, 1133: 2717, 2718, 1138: 2743, 2722, 2752, 2724, 2723, 1147: 2729, 1149: 2731, 2730, 2734, 1153: 2735, 1155: 2742, 1158: 2732, 7035, 1163: 2733, 1174: 2736, 2737, 2712, 2740, 1179: 2739}, + {465, 465}, } ) @@ -11484,7 +11646,7 @@ func yylex1(yylex yyLexer, lval *yySymType) (n int) { } func yyParse(yylex yyLexer, parser *Parser) int { - const yyError = 1372 + const yyError = 1385 yyEx, _ := yylex.(yyLexerEx) var yyn int @@ -11716,25 +11878,57 @@ yynewstate: } case 9: { - parser.yyVAL.item = []*ast.PlacementOption{yyS[yypt-0].item.(*ast.PlacementOption)} + parser.yyVAL.item = []*ast.ResourceGroupOption{yyS[yypt-0].item.(*ast.ResourceGroupOption)} } case 10: { - parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.PlacementOption), yyS[yypt-0].item.(*ast.PlacementOption)) + parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.ResourceGroupOption), yyS[yypt-0].item.(*ast.ResourceGroupOption)) } case 11: { - parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.PlacementOption), yyS[yypt-0].item.(*ast.PlacementOption)) + parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.ResourceGroupOption), yyS[yypt-0].item.(*ast.ResourceGroupOption)) } case 12: { - parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionPrimaryRegion, StrValue: yyS[yypt-0].ident} + parser.yyVAL.item = &ast.ResourceGroupOption{Tp: ast.ResourceRRURate, StrValue: yyS[yypt-0].ident} } case 13: { - parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionRegions, StrValue: yyS[yypt-0].ident} + parser.yyVAL.item = &ast.ResourceGroupOption{Tp: ast.ResourceWRURate, StrValue: yyS[yypt-0].ident} } case 14: + { + parser.yyVAL.item = &ast.ResourceGroupOption{Tp: ast.ResourceUnitCPU, StrValue: yyS[yypt-0].ident} + } + case 15: + { + parser.yyVAL.item = &ast.ResourceGroupOption{Tp: ast.ResourceUnitIOReadRate, StrValue: yyS[yypt-0].ident} + } + case 16: + { + parser.yyVAL.item = &ast.ResourceGroupOption{Tp: ast.ResourceUnitIOWriteRate, StrValue: yyS[yypt-0].ident} + } + case 17: + { + parser.yyVAL.item = []*ast.PlacementOption{yyS[yypt-0].item.(*ast.PlacementOption)} + } + case 18: + { + parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.PlacementOption), yyS[yypt-0].item.(*ast.PlacementOption)) + } + case 19: + { + parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.PlacementOption), yyS[yypt-0].item.(*ast.PlacementOption)) + } + case 20: + { + parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionPrimaryRegion, StrValue: yyS[yypt-0].ident} + } + case 21: + { + parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionRegions, StrValue: yyS[yypt-0].ident} + } + case 22: { cnt := yyS[yypt-0].item.(uint64) if cnt == 0 { @@ -11743,71 +11937,71 @@ yynewstate: } parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionFollowerCount, UintValue: cnt} } - case 15: + case 23: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionVoterCount, UintValue: yyS[yypt-0].item.(uint64)} } - case 16: + case 24: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionLearnerCount, UintValue: yyS[yypt-0].item.(uint64)} } - case 17: + case 25: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionSchedule, StrValue: yyS[yypt-0].ident} } - case 18: + case 26: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionConstraints, StrValue: yyS[yypt-0].ident} } - case 19: + case 27: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionLeaderConstraints, StrValue: yyS[yypt-0].ident} } - case 20: + case 28: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionFollowerConstraints, StrValue: yyS[yypt-0].ident} } - case 21: + case 29: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionVoterConstraints, StrValue: yyS[yypt-0].ident} } - case 22: + case 30: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionLearnerConstraints, StrValue: yyS[yypt-0].ident} } - case 23: + case 31: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionPolicy, StrValue: yyS[yypt-0].ident} } - case 24: + case 32: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionPolicy, StrValue: yyS[yypt-0].ident} } - case 25: + case 33: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionPolicy, StrValue: yyS[yypt-0].ident} } - case 26: + case 34: { parser.yyVAL.item = &ast.PlacementOption{Tp: ast.PlacementOptionPolicy, StrValue: yyS[yypt-0].ident} } - case 27: + case 35: { parser.yyVAL.item = &ast.AttributesSpec{Default: true} } - case 28: + case 36: { parser.yyVAL.item = &ast.AttributesSpec{Default: false, Attributes: yyS[yypt-0].ident} } - case 29: + case 37: { parser.yyVAL.item = &ast.StatsOptionsSpec{Default: true} } - case 30: + case 38: { parser.yyVAL.item = &ast.StatsOptionsSpec{Default: false, StatsOptions: yyS[yypt-0].ident} } - case 31: + case 39: { if yyS[yypt-0].item != nil { parser.yyVAL.item = &ast.AlterTableSpec{ @@ -11818,19 +12012,19 @@ yynewstate: parser.yyVAL.item = nil } } - case 32: + case 40: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableRemovePartitioning, } } - case 33: + case 41: { ret := yyS[yypt-0].item.(*ast.AlterTableSpec) ret.NoWriteToBinlog = yyS[yypt-1].item.(bool) parser.yyVAL.item = ret } - case 34: + case 42: { partitionMethod := ast.PartitionMethod{Expr: yyS[yypt-1].expr} startOffset := parser.yyVAL.offset @@ -11842,7 +12036,7 @@ yynewstate: Partition: &ast.PartitionOptions{PartitionMethod: partitionMethod}, } } - case 35: + case 43: { partitionMethod := ast.PartitionMethod{Expr: yyS[yypt-1].expr} startOffset := parser.yyVAL.offset @@ -11855,7 +12049,7 @@ yynewstate: Partition: &ast.PartitionOptions{PartitionMethod: partitionMethod}, } } - case 36: + case 44: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTablePartitionAttributes, @@ -11863,7 +12057,7 @@ yynewstate: AttributesSpec: yyS[yypt-0].item.(*ast.AttributesSpec), } } - case 37: + case 45: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTablePartitionOptions, @@ -11871,22 +12065,32 @@ yynewstate: Options: yyS[yypt-0].item.([]*ast.TableOption), } } - case 38: + case 46: + { + if !TTLFeatureGate { + yylex.AppendError(ErrSyntax) + return 1 + } + parser.yyVAL.item = &ast.AlterTableSpec{ + Tp: ast.AlterTableRemoveTTL, + } + } + case 47: { parser.yyVAL.item = []string{} } - case 39: + case 48: { parser.yyVAL.item = yyS[yypt-0].item } - case 40: + case 49: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableOption, Options: yyS[yypt-0].item.([]*ast.TableOption), } } - case 41: + case 50: { tiflashReplicaSpec := &ast.TiFlashReplicaSpec{ Count: yyS[yypt-1].item.(uint64), @@ -11897,7 +12101,7 @@ yynewstate: TiFlashReplica: tiflashReplicaSpec, } } - case 42: + case 51: { op := &ast.AlterTableSpec{ Tp: ast.AlterTableOption, @@ -11909,7 +12113,7 @@ yynewstate: } parser.yyVAL.item = op } - case 43: + case 52: { op := &ast.AlterTableSpec{ Tp: ast.AlterTableOption, @@ -11921,7 +12125,7 @@ yynewstate: } parser.yyVAL.item = op } - case 44: + case 53: { parser.yyVAL.item = &ast.AlterTableSpec{ IfNotExists: yyS[yypt-2].item.(bool), @@ -11930,7 +12134,7 @@ yynewstate: Position: yyS[yypt-0].item.(*ast.ColumnPosition), } } - case 45: + case 54: { tes := yyS[yypt-1].item.([]interface{}) var columnDefs []*ast.ColumnDef @@ -11950,7 +12154,7 @@ yynewstate: NewConstraints: constraints, } } - case 46: + case 55: { constraint := yyS[yypt-0].item.(*ast.Constraint) parser.yyVAL.item = &ast.AlterTableSpec{ @@ -11958,7 +12162,7 @@ yynewstate: Constraint: constraint, } } - case 47: + case 56: { var defs []*ast.PartitionDefinition if yyS[yypt-0].item != nil { @@ -11976,7 +12180,7 @@ yynewstate: PartDefinitions: defs, } } - case 48: + case 57: { noWriteToBinlog := yyS[yypt-2].item.(bool) if noWriteToBinlog { @@ -11990,7 +12194,7 @@ yynewstate: Num: getUint64FromNUM(yyS[yypt-0].item), } } - case 49: + case 58: { noWriteToBinlog := yyS[yypt-0].item.(bool) if noWriteToBinlog { @@ -12009,7 +12213,7 @@ yynewstate: Partition: &ast.PartitionOptions{PartitionMethod: partitionMethod}, } } - case 50: + case 59: { statsSpec := &ast.StatisticsSpec{ StatsName: yyS[yypt-4].ident, @@ -12022,21 +12226,21 @@ yynewstate: Statistics: statsSpec, } } - case 51: + case 60: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableAttributes, AttributesSpec: yyS[yypt-0].item.(*ast.AttributesSpec), } } - case 52: + case 61: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableStatsOptions, StatsOptionsSpec: yyS[yypt-0].item.(*ast.StatsOptionsSpec), } } - case 53: + case 62: { yylex.AppendError(yylex.Errorf("The CHECK PARTITIONING clause is parsed but not implement yet.")) parser.lastErrorAsWarn() @@ -12050,7 +12254,7 @@ yynewstate: } parser.yyVAL.item = ret } - case 54: + case 63: { noWriteToBinlog := yyS[yypt-1].item.(bool) if noWriteToBinlog { @@ -12063,7 +12267,7 @@ yynewstate: Num: getUint64FromNUM(yyS[yypt-0].item), } } - case 55: + case 64: { parser.yyVAL.item = &ast.AlterTableSpec{ IfExists: yyS[yypt-2].item.(bool), @@ -12071,11 +12275,11 @@ yynewstate: OldColumnName: yyS[yypt-1].item.(*ast.ColumnName), } } - case 56: + case 65: { parser.yyVAL.item = &ast.AlterTableSpec{Tp: ast.AlterTableDropPrimaryKey} } - case 57: + case 66: { parser.yyVAL.item = &ast.AlterTableSpec{ IfExists: yyS[yypt-1].item.(bool), @@ -12083,7 +12287,7 @@ yynewstate: PartitionNames: yyS[yypt-0].item.([]model.CIStr), } } - case 58: + case 67: { partitionMethod := ast.PartitionMethod{Expr: yyS[yypt-2].expr} startOffset := parser.yyVAL.offset @@ -12097,7 +12301,7 @@ yynewstate: Partition: &ast.PartitionOptions{PartitionMethod: partitionMethod}, } } - case 59: + case 68: { statsSpec := &ast.StatisticsSpec{ StatsName: yyS[yypt-0].ident, @@ -12108,7 +12312,7 @@ yynewstate: Statistics: statsSpec, } } - case 60: + case 69: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableExchangePartition, @@ -12117,7 +12321,7 @@ yynewstate: WithValidation: yyS[yypt-0].item.(bool), } } - case 61: + case 70: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableTruncatePartition, @@ -12129,7 +12333,7 @@ yynewstate: } parser.yyVAL.item = ret } - case 62: + case 71: { ret := &ast.AlterTableSpec{ NoWriteToBinlog: yyS[yypt-1].item.(bool), @@ -12142,7 +12346,7 @@ yynewstate: } parser.yyVAL.item = ret } - case 63: + case 72: { ret := &ast.AlterTableSpec{ NoWriteToBinlog: yyS[yypt-1].item.(bool), @@ -12155,7 +12359,7 @@ yynewstate: } parser.yyVAL.item = ret } - case 64: + case 73: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableImportPartitionTablespace, @@ -12169,7 +12373,7 @@ yynewstate: yylex.AppendError(yylex.Errorf("The IMPORT PARTITION TABLESPACE clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 65: + case 74: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableDiscardPartitionTablespace, @@ -12183,7 +12387,7 @@ yynewstate: yylex.AppendError(yylex.Errorf("The DISCARD PARTITION TABLESPACE clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 66: + case 75: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableImportTablespace, @@ -12192,7 +12396,7 @@ yynewstate: yylex.AppendError(yylex.Errorf("The IMPORT TABLESPACE clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 67: + case 76: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableDiscardTablespace, @@ -12201,7 +12405,7 @@ yynewstate: yylex.AppendError(yylex.Errorf("The DISCARD TABLESPACE clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 68: + case 77: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableRebuildPartition, @@ -12214,7 +12418,7 @@ yynewstate: } parser.yyVAL.item = ret } - case 69: + case 78: { parser.yyVAL.item = &ast.AlterTableSpec{ IfExists: yyS[yypt-1].item.(bool), @@ -12222,7 +12426,7 @@ yynewstate: Name: yyS[yypt-0].ident, } } - case 70: + case 79: { parser.yyVAL.item = &ast.AlterTableSpec{ IfExists: yyS[yypt-1].item.(bool), @@ -12230,26 +12434,26 @@ yynewstate: Name: yyS[yypt-0].ident, } } - case 71: + case 80: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableOrderByColumns, OrderByList: yyS[yypt-0].item.([]*ast.AlterOrderItem), } } - case 72: + case 81: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableDisableKeys, } } - case 73: + case 82: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableEnableKeys, } } - case 74: + case 83: { parser.yyVAL.item = &ast.AlterTableSpec{ IfExists: yyS[yypt-2].item.(bool), @@ -12258,7 +12462,7 @@ yynewstate: Position: yyS[yypt-0].item.(*ast.ColumnPosition), } } - case 75: + case 84: { parser.yyVAL.item = &ast.AlterTableSpec{ IfExists: yyS[yypt-3].item.(bool), @@ -12268,7 +12472,7 @@ yynewstate: Position: yyS[yypt-0].item.(*ast.ColumnPosition), } } - case 76: + case 85: { option := &ast.ColumnOption{Expr: yyS[yypt-0].expr} colDef := &ast.ColumnDef{ @@ -12280,7 +12484,7 @@ yynewstate: NewColumns: []*ast.ColumnDef{colDef}, } } - case 77: + case 86: { option := &ast.ColumnOption{Expr: yyS[yypt-1].expr} colDef := &ast.ColumnDef{ @@ -12292,7 +12496,7 @@ yynewstate: NewColumns: []*ast.ColumnDef{colDef}, } } - case 78: + case 87: { colDef := &ast.ColumnDef{ Name: yyS[yypt-2].item.(*ast.ColumnName), @@ -12302,7 +12506,7 @@ yynewstate: NewColumns: []*ast.ColumnDef{colDef}, } } - case 79: + case 88: { oldColName := &ast.ColumnName{Name: model.NewCIStr(yyS[yypt-2].ident)} newColName := &ast.ColumnName{Name: model.NewCIStr(yyS[yypt-0].ident)} @@ -12312,28 +12516,28 @@ yynewstate: NewColumnName: newColName, } } - case 80: + case 89: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableRenameTable, NewTable: yyS[yypt-0].item.(*ast.TableName), } } - case 81: + case 90: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableRenameTable, NewTable: yyS[yypt-0].item.(*ast.TableName), } } - case 82: + case 91: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableRenameTable, NewTable: yyS[yypt-0].item.(*ast.TableName), } } - case 83: + case 92: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableRenameIndex, @@ -12341,21 +12545,21 @@ yynewstate: ToKey: model.NewCIStr(yyS[yypt-0].ident), } } - case 84: + case 93: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableLock, LockType: yyS[yypt-0].item.(ast.LockType), } } - case 85: + case 94: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableWriteable, Writeable: yyS[yypt-0].item.(bool), } } - case 86: + case 95: { // Parse it and ignore it. Just for compatibility. parser.yyVAL.item = &ast.AlterTableSpec{ @@ -12363,28 +12567,28 @@ yynewstate: Algorithm: yyS[yypt-0].item.(ast.AlgorithmType), } } - case 87: + case 96: { // Parse it and ignore it. Just for compatibility. parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableForce, } } - case 88: + case 97: { // Parse it and ignore it. Just for compatibility. parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableWithValidation, } } - case 89: + case 98: { // Parse it and ignore it. Just for compatibility. parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableWithoutValidation, } } - case 90: + case 99: { // Parse it and ignore it. Just for compatibility. parser.yyVAL.item = &ast.AlterTableSpec{ @@ -12393,7 +12597,7 @@ yynewstate: yylex.AppendError(yylex.Errorf("The SECONDARY_LOAD clause is parsed but not implement yet.")) parser.lastErrorAsWarn() } - case 91: + case 100: { // Parse it and ignore it. Just for compatibility. parser.yyVAL.item = &ast.AlterTableSpec{ @@ -12402,7 +12606,7 @@ yynewstate: yylex.AppendError(yylex.Errorf("The SECONDARY_UNLOAD VALIDATION clause is parsed but not implement yet.")) parser.lastErrorAsWarn() } - case 92: + case 101: { c := &ast.Constraint{ Name: yyS[yypt-1].ident, @@ -12413,7 +12617,7 @@ yynewstate: Constraint: c, } } - case 93: + case 102: { // Parse it and ignore it. Just for compatibility. c := &ast.Constraint{ @@ -12424,7 +12628,7 @@ yynewstate: Constraint: c, } } - case 94: + case 103: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableIndexInvisible, @@ -12432,19 +12636,19 @@ yynewstate: Visibility: yyS[yypt-0].item.(ast.IndexVisibility), } } - case 95: + case 104: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableCache, } } - case 96: + case 105: { parser.yyVAL.item = &ast.AlterTableSpec{ Tp: ast.AlterTableNoCache, } } - case 97: + case 106: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableReorganizePartition, @@ -12452,7 +12656,7 @@ yynewstate: } parser.yyVAL.item = ret } - case 98: + case 107: { ret := &ast.AlterTableSpec{ Tp: ast.AlterTableReorganizePartition, @@ -12461,56 +12665,56 @@ yynewstate: } parser.yyVAL.item = ret } - case 99: + case 108: { parser.yyVAL.item = nil } - case 101: + case 110: { parser.yyVAL.item = true } - case 103: + case 112: { parser.yyVAL.item = true } - case 104: + case 113: { parser.yyVAL.item = false } - case 105: + case 114: { parser.yyVAL.item = model.PrimaryKeyTypeClustered } - case 106: + case 115: { parser.yyVAL.item = model.PrimaryKeyTypeNonClustered } - case 107: + case 116: { parser.yyVAL.item = ast.AlgorithmTypeDefault } - case 108: + case 117: { parser.yyVAL.item = ast.AlgorithmTypeCopy } - case 109: + case 118: { parser.yyVAL.item = ast.AlgorithmTypeInplace } - case 110: + case 119: { parser.yyVAL.item = ast.AlgorithmTypeInstant } - case 111: + case 120: { yylex.AppendError(ErrUnknownAlterAlgorithm.GenWithStackByArgs(yyS[yypt-2].ident)) return 1 } - case 112: + case 121: { parser.yyVAL.item = ast.LockTypeDefault } - case 113: + case 122: { id := strings.ToUpper(yyS[yypt-0].ident) @@ -12525,165 +12729,165 @@ yynewstate: return 1 } } - case 114: + case 123: { parser.yyVAL.item = true } - case 115: + case 124: { parser.yyVAL.item = false } - case 122: + case 131: { parser.yyVAL.item = &ast.ColumnPosition{Tp: ast.ColumnPositionNone} } - case 123: + case 132: { parser.yyVAL.item = &ast.ColumnPosition{Tp: ast.ColumnPositionFirst} } - case 124: + case 133: { parser.yyVAL.item = &ast.ColumnPosition{ Tp: ast.ColumnPositionAfter, RelativeColumn: yyS[yypt-0].item.(*ast.ColumnName), } } - case 125: + case 134: { parser.yyVAL.item = make([]*ast.AlterTableSpec, 0, 1) } - case 127: + case 136: { parser.yyVAL.item = []*ast.AlterTableSpec{yyS[yypt-0].item.(*ast.AlterTableSpec)} } - case 128: + case 137: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.AlterTableSpec), yyS[yypt-0].item.(*ast.AlterTableSpec)) } - case 129: + case 138: { parser.yyVAL.item = []model.CIStr{model.NewCIStr(yyS[yypt-0].ident)} } - case 130: + case 139: { parser.yyVAL.item = append(yyS[yypt-2].item.([]model.CIStr), model.NewCIStr(yyS[yypt-0].ident)) } - case 131: + case 140: { parser.yyVAL.item = nil } - case 132: + case 141: { parser.yyVAL.item = nil } - case 133: + case 142: { parser.yyVAL.item = yyS[yypt-0].ident } - case 135: + case 144: { parser.yyVAL.statement = &ast.RenameTableStmt{ TableToTables: yyS[yypt-0].item.([]*ast.TableToTable), } } - case 136: + case 145: { parser.yyVAL.item = []*ast.TableToTable{yyS[yypt-0].item.(*ast.TableToTable)} } - case 137: + case 146: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.TableToTable), yyS[yypt-0].item.(*ast.TableToTable)) } - case 138: + case 147: { parser.yyVAL.item = &ast.TableToTable{ OldTable: yyS[yypt-2].item.(*ast.TableName), NewTable: yyS[yypt-0].item.(*ast.TableName), } } - case 139: + case 148: { parser.yyVAL.statement = &ast.RenameUserStmt{ UserToUsers: yyS[yypt-0].item.([]*ast.UserToUser), } } - case 140: + case 149: { parser.yyVAL.item = []*ast.UserToUser{yyS[yypt-0].item.(*ast.UserToUser)} } - case 141: + case 150: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.UserToUser), yyS[yypt-0].item.(*ast.UserToUser)) } - case 142: + case 151: { parser.yyVAL.item = &ast.UserToUser{ OldUser: yyS[yypt-2].item.(*auth.UserIdentity), NewUser: yyS[yypt-0].item.(*auth.UserIdentity), } } - case 143: + case 152: { parser.yyVAL.statement = &ast.RecoverTableStmt{ JobID: yyS[yypt-0].item.(int64), } } - case 144: + case 153: { parser.yyVAL.statement = &ast.RecoverTableStmt{ Table: yyS[yypt-0].item.(*ast.TableName), } } - case 145: + case 154: { parser.yyVAL.statement = &ast.RecoverTableStmt{ Table: yyS[yypt-1].item.(*ast.TableName), JobNum: yyS[yypt-0].item.(int64), } } - case 146: + case 155: { parser.yyVAL.statement = &ast.FlashBackToTimestampStmt{ FlashbackTS: ast.NewValueExpr(yyS[yypt-0].ident, "", ""), } } - case 147: + case 156: { parser.yyVAL.statement = &ast.FlashBackToTimestampStmt{ Tables: yyS[yypt-2].item.([]*ast.TableName), FlashbackTS: ast.NewValueExpr(yyS[yypt-0].ident, "", ""), } } - case 148: + case 157: { parser.yyVAL.statement = &ast.FlashBackToTimestampStmt{ DBName: model.NewCIStr(yyS[yypt-2].ident), FlashbackTS: ast.NewValueExpr(yyS[yypt-0].ident, "", ""), } } - case 149: + case 158: { parser.yyVAL.statement = &ast.FlashBackTableStmt{ Table: yyS[yypt-1].item.(*ast.TableName), NewName: yyS[yypt-0].ident, } } - case 150: + case 159: { parser.yyVAL.ident = "" } - case 151: + case 160: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 152: + case 161: { parser.yyVAL.statement = &ast.FlashBackDatabaseStmt{ DBName: model.NewCIStr(yyS[yypt-1].ident), NewName: yyS[yypt-0].ident, } } - case 153: + case 162: { parser.yyVAL.statement = &ast.SplitRegionStmt{ SplitSyntaxOpt: yyS[yypt-4].item.(*ast.SplitSyntaxOption), @@ -12692,7 +12896,7 @@ yynewstate: SplitOpt: yyS[yypt-0].item.(*ast.SplitOption), } } - case 154: + case 163: { parser.yyVAL.statement = &ast.SplitRegionStmt{ SplitSyntaxOpt: yyS[yypt-6].item.(*ast.SplitSyntaxOption), @@ -12702,7 +12906,7 @@ yynewstate: SplitOpt: yyS[yypt-0].item.(*ast.SplitOption), } } - case 155: + case 164: { parser.yyVAL.item = &ast.SplitOption{ Lower: yyS[yypt-4].item.([]ast.ExprNode), @@ -12710,52 +12914,52 @@ yynewstate: Num: yyS[yypt-0].item.(int64), } } - case 156: + case 165: { parser.yyVAL.item = &ast.SplitOption{ ValueLists: yyS[yypt-0].item.([][]ast.ExprNode), } } - case 157: + case 166: { parser.yyVAL.item = &ast.SplitSyntaxOption{} } - case 158: + case 167: { parser.yyVAL.item = &ast.SplitSyntaxOption{ HasRegionFor: true, } } - case 159: + case 168: { parser.yyVAL.item = &ast.SplitSyntaxOption{ HasPartition: true, } } - case 160: + case 169: { parser.yyVAL.item = &ast.SplitSyntaxOption{ HasRegionFor: true, HasPartition: true, } } - case 161: + case 170: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{TableNames: yyS[yypt-2].item.([]*ast.TableName), ColumnChoice: yyS[yypt-1].item.(model.ColumnChoice), AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt)} } - case 162: + case 171: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{TableNames: []*ast.TableName{yyS[yypt-3].item.(*ast.TableName)}, IndexNames: yyS[yypt-1].item.([]model.CIStr), IndexFlag: true, AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt)} } - case 163: + case 172: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{TableNames: []*ast.TableName{yyS[yypt-3].item.(*ast.TableName)}, IndexNames: yyS[yypt-1].item.([]model.CIStr), IndexFlag: true, Incremental: true, AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt)} } - case 164: + case 173: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{TableNames: []*ast.TableName{yyS[yypt-4].item.(*ast.TableName)}, PartitionNames: yyS[yypt-2].item.([]model.CIStr), ColumnChoice: yyS[yypt-1].item.(model.ColumnChoice), AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt)} } - case 165: + case 174: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{ TableNames: []*ast.TableName{yyS[yypt-5].item.(*ast.TableName)}, @@ -12765,7 +12969,7 @@ yynewstate: AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt), } } - case 166: + case 175: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{ TableNames: []*ast.TableName{yyS[yypt-5].item.(*ast.TableName)}, @@ -12776,7 +12980,7 @@ yynewstate: AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt), } } - case 167: + case 176: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{ TableNames: []*ast.TableName{yyS[yypt-5].item.(*ast.TableName)}, @@ -12785,7 +12989,7 @@ yynewstate: HistogramOperation: ast.HistogramOperationUpdate, } } - case 168: + case 177: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{ TableNames: []*ast.TableName{yyS[yypt-4].item.(*ast.TableName)}, @@ -12793,7 +12997,7 @@ yynewstate: HistogramOperation: ast.HistogramOperationDrop, } } - case 169: + case 178: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{ TableNames: []*ast.TableName{yyS[yypt-3].item.(*ast.TableName)}, @@ -12801,7 +13005,7 @@ yynewstate: ColumnChoice: model.ColumnList, AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt)} } - case 170: + case 179: { parser.yyVAL.statement = &ast.AnalyzeTableStmt{ TableNames: []*ast.TableName{yyS[yypt-5].item.(*ast.TableName)}, @@ -12810,134 +13014,134 @@ yynewstate: ColumnChoice: model.ColumnList, AnalyzeOpts: yyS[yypt-0].item.([]ast.AnalyzeOpt)} } - case 171: + case 180: { parser.yyVAL.item = model.DefaultChoice } - case 172: + case 181: { parser.yyVAL.item = model.AllColumns } - case 173: + case 182: { parser.yyVAL.item = model.PredicateColumns } - case 174: + case 183: { parser.yyVAL.item = []ast.AnalyzeOpt{} } - case 175: + case 184: { parser.yyVAL.item = yyS[yypt-0].item.([]ast.AnalyzeOpt) } - case 176: + case 185: { parser.yyVAL.item = []ast.AnalyzeOpt{yyS[yypt-0].item.(ast.AnalyzeOpt)} } - case 177: + case 186: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.AnalyzeOpt), yyS[yypt-0].item.(ast.AnalyzeOpt)) } - case 178: + case 187: { parser.yyVAL.item = ast.AnalyzeOpt{Type: ast.AnalyzeOptNumBuckets, Value: ast.NewValueExpr(yyS[yypt-1].item, "", "")} } - case 179: + case 188: { parser.yyVAL.item = ast.AnalyzeOpt{Type: ast.AnalyzeOptNumTopN, Value: ast.NewValueExpr(yyS[yypt-1].item, "", "")} } - case 180: + case 189: { parser.yyVAL.item = ast.AnalyzeOpt{Type: ast.AnalyzeOptCMSketchDepth, Value: ast.NewValueExpr(yyS[yypt-2].item, "", "")} } - case 181: + case 190: { parser.yyVAL.item = ast.AnalyzeOpt{Type: ast.AnalyzeOptCMSketchWidth, Value: ast.NewValueExpr(yyS[yypt-2].item, "", "")} } - case 182: + case 191: { parser.yyVAL.item = ast.AnalyzeOpt{Type: ast.AnalyzeOptNumSamples, Value: ast.NewValueExpr(yyS[yypt-1].item, "", "")} } - case 183: + case 192: { parser.yyVAL.item = ast.AnalyzeOpt{Type: ast.AnalyzeOptSampleRate, Value: ast.NewValueExpr(yyS[yypt-1].item, "", "")} } - case 184: + case 193: { parser.yyVAL.item = &ast.Assignment{Column: yyS[yypt-2].item.(*ast.ColumnName), Expr: yyS[yypt-0].expr} } - case 185: + case 194: { parser.yyVAL.item = []*ast.Assignment{yyS[yypt-0].item.(*ast.Assignment)} } - case 186: + case 195: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.Assignment), yyS[yypt-0].item.(*ast.Assignment)) } - case 187: + case 196: { parser.yyVAL.item = []*ast.Assignment{} } - case 189: + case 198: { parser.yyVAL.statement = &ast.BeginStmt{} } - case 190: + case 199: { parser.yyVAL.statement = &ast.BeginStmt{ Mode: ast.Pessimistic, } } - case 191: + case 200: { parser.yyVAL.statement = &ast.BeginStmt{ Mode: ast.Optimistic, } } - case 192: + case 201: { parser.yyVAL.statement = &ast.BeginStmt{} } - case 193: + case 202: { parser.yyVAL.statement = &ast.BeginStmt{} } - case 194: + case 203: { parser.yyVAL.statement = &ast.BeginStmt{} } - case 195: + case 204: { parser.yyVAL.statement = &ast.BeginStmt{ CausalConsistencyOnly: true, } } - case 196: + case 205: { parser.yyVAL.statement = &ast.BeginStmt{ ReadOnly: true, } } - case 197: + case 206: { parser.yyVAL.statement = &ast.BeginStmt{ ReadOnly: true, AsOf: yyS[yypt-0].item.(*ast.AsOfClause), } } - case 198: + case 207: { parser.yyVAL.statement = &ast.BinlogStmt{Str: yyS[yypt-0].ident} } - case 199: + case 208: { parser.yyVAL.item = []*ast.ColumnDef{yyS[yypt-0].item.(*ast.ColumnDef)} } - case 200: + case 209: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.ColumnDef), yyS[yypt-0].item.(*ast.ColumnDef)) } - case 201: + case 210: { colDef := &ast.ColumnDef{Name: yyS[yypt-2].item.(*ast.ColumnName), Tp: yyS[yypt-1].item.(*types.FieldType), Options: yyS[yypt-0].item.([]*ast.ColumnOption)} if !colDef.Validate() { @@ -12946,7 +13150,7 @@ yynewstate: } parser.yyVAL.item = colDef } - case 202: + case 211: { // TODO: check flen 0 tp := types.NewFieldType(mysql.TypeLonglong) @@ -12960,103 +13164,103 @@ yynewstate: } parser.yyVAL.item = colDef } - case 203: + case 212: { parser.yyVAL.item = &ast.ColumnName{Name: model.NewCIStr(yyS[yypt-0].ident)} } - case 204: + case 213: { parser.yyVAL.item = &ast.ColumnName{Table: model.NewCIStr(yyS[yypt-2].ident), Name: model.NewCIStr(yyS[yypt-0].ident)} } - case 205: + case 214: { parser.yyVAL.item = &ast.ColumnName{Schema: model.NewCIStr(yyS[yypt-4].ident), Table: model.NewCIStr(yyS[yypt-2].ident), Name: model.NewCIStr(yyS[yypt-0].ident)} } - case 206: + case 215: { parser.yyVAL.item = []*ast.ColumnName{yyS[yypt-0].item.(*ast.ColumnName)} } - case 207: + case 216: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.ColumnName), yyS[yypt-0].item.(*ast.ColumnName)) } - case 208: + case 217: { parser.yyVAL.item = []*ast.ColumnName{} } - case 210: + case 219: { parser.yyVAL.item = []model.CIStr{} } - case 211: + case 220: { parser.yyVAL.item = yyS[yypt-1].item } - case 212: + case 221: { parser.yyVAL.item = []model.CIStr{model.NewCIStr(yyS[yypt-0].ident)} } - case 213: + case 222: { parser.yyVAL.item = append(yyS[yypt-2].item.([]model.CIStr), model.NewCIStr(yyS[yypt-0].ident)) } - case 214: + case 223: { parser.yyVAL.item = []*ast.ColumnNameOrUserVar{} } - case 216: + case 225: { parser.yyVAL.item = []*ast.ColumnNameOrUserVar{yyS[yypt-0].item.(*ast.ColumnNameOrUserVar)} } - case 217: + case 226: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.ColumnNameOrUserVar), yyS[yypt-0].item.(*ast.ColumnNameOrUserVar)) } - case 218: + case 227: { parser.yyVAL.item = &ast.ColumnNameOrUserVar{ColumnName: yyS[yypt-0].item.(*ast.ColumnName)} } - case 219: + case 228: { parser.yyVAL.item = &ast.ColumnNameOrUserVar{UserVar: yyS[yypt-0].expr.(*ast.VariableExpr)} } - case 220: + case 229: { parser.yyVAL.item = []*ast.ColumnNameOrUserVar{} } - case 221: + case 230: { parser.yyVAL.item = yyS[yypt-1].item.([]*ast.ColumnNameOrUserVar) } - case 222: + case 231: { parser.yyVAL.statement = &ast.CommitStmt{} } - case 223: + case 232: { parser.yyVAL.statement = &ast.CommitStmt{CompletionType: yyS[yypt-0].item.(ast.CompletionType)} } - case 227: + case 236: { parser.yyVAL.ident = "NOT" } - case 228: + case 237: { parser.yyVAL.item = true } - case 229: + case 238: { parser.yyVAL.item = false } - case 230: + case 239: { parser.yyVAL.item = true } - case 232: + case 241: { parser.yyVAL.item = 0 } - case 233: + case 242: { if yyS[yypt-0].item.(bool) { parser.yyVAL.item = 1 @@ -13064,57 +13268,57 @@ yynewstate: parser.yyVAL.item = 2 } } - case 234: + case 243: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionNotNull} } - case 235: + case 244: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionNull} } - case 236: + case 245: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionAutoIncrement} } - case 237: + case 246: { // KEY is normally a synonym for INDEX. The key attribute PRIMARY KEY // can also be specified as just KEY when given in a column definition. // See http://dev.mysql.com/doc/refman/5.7/en/create-table.html parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionPrimaryKey} } - case 238: + case 247: { // KEY is normally a synonym for INDEX. The key attribute PRIMARY KEY // can also be specified as just KEY when given in a column definition. // See http://dev.mysql.com/doc/refman/5.7/en/create-table.html parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionPrimaryKey, PrimaryKeyTp: yyS[yypt-0].item.(model.PrimaryKeyType)} } - case 239: + case 248: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionUniqKey} } - case 240: + case 249: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionUniqKey} } - case 241: + case 250: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionDefaultValue, Expr: yyS[yypt-0].expr} } - case 242: + case 251: { parser.yyVAL.item = []*ast.ColumnOption{{Tp: ast.ColumnOptionNotNull}, {Tp: ast.ColumnOptionAutoIncrement}, {Tp: ast.ColumnOptionUniqKey}} } - case 243: + case 252: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionOnUpdate, Expr: yyS[yypt-0].expr} } - case 244: + case 253: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionComment, Expr: ast.NewValueExpr(yyS[yypt-0].ident, "", "")} } - case 245: + case 254: { // See https://dev.mysql.com/doc/refman/5.7/en/create-table.html // The CHECK clause is parsed but ignored by all storage engines. @@ -13141,7 +13345,7 @@ yynewstate: default: } } - case 246: + case 255: { startOffset := parser.startOffset(&yyS[yypt-2]) endOffset := parser.endOffset(&yyS[yypt-1]) @@ -13154,68 +13358,68 @@ yynewstate: Stored: yyS[yypt-0].item.(bool), } } - case 247: + case 256: { parser.yyVAL.item = &ast.ColumnOption{ Tp: ast.ColumnOptionReference, Refer: yyS[yypt-0].item.(*ast.ReferenceDef), } } - case 248: + case 257: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionCollate, StrValue: yyS[yypt-0].ident} } - case 249: + case 258: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionColumnFormat, StrValue: yyS[yypt-0].ident} } - case 250: + case 259: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionStorage, StrValue: yyS[yypt-0].ident} yylex.AppendError(yylex.Errorf("The STORAGE clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 251: + case 260: { parser.yyVAL.item = &ast.ColumnOption{Tp: ast.ColumnOptionAutoRandom, AutoRandOpt: yyS[yypt-0].item.(ast.AutoRandomOption)} } - case 252: + case 261: { parser.yyVAL.item = ast.AutoRandomOption{ShardBits: types.UnspecifiedLength, RangeBits: types.UnspecifiedLength} } - case 253: + case 262: { parser.yyVAL.item = ast.AutoRandomOption{ShardBits: int(yyS[yypt-1].item.(uint64)), RangeBits: types.UnspecifiedLength} } - case 254: + case 263: { parser.yyVAL.item = ast.AutoRandomOption{ShardBits: int(yyS[yypt-3].item.(uint64)), RangeBits: int(yyS[yypt-1].item.(uint64))} } - case 258: + case 267: { parser.yyVAL.ident = "DEFAULT" } - case 259: + case 268: { parser.yyVAL.ident = "FIXED" } - case 260: + case 269: { parser.yyVAL.ident = "DYNAMIC" } - case 263: + case 272: { parser.yyVAL.item = false } - case 264: + case 273: { parser.yyVAL.item = false } - case 265: + case 274: { parser.yyVAL.item = true } - case 266: + case 275: { if columnOption, ok := yyS[yypt-0].item.(*ast.ColumnOption); ok { parser.yyVAL.item = []*ast.ColumnOption{columnOption} @@ -13223,7 +13427,7 @@ yynewstate: parser.yyVAL.item = yyS[yypt-0].item } } - case 267: + case 276: { if columnOption, ok := yyS[yypt-0].item.(*ast.ColumnOption); ok { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.ColumnOption), columnOption) @@ -13231,11 +13435,11 @@ yynewstate: parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.ColumnOption), yyS[yypt-0].item.([]*ast.ColumnOption)...) } } - case 268: + case 277: { parser.yyVAL.item = []*ast.ColumnOption{} } - case 270: + case 279: { c := &ast.Constraint{ Tp: ast.ConstraintPrimaryKey, @@ -13254,7 +13458,7 @@ yynewstate: } parser.yyVAL.item = c } - case 271: + case 280: { c := &ast.Constraint{ Tp: ast.ConstraintFulltext, @@ -13267,7 +13471,7 @@ yynewstate: } parser.yyVAL.item = c } - case 272: + case 281: { c := &ast.Constraint{ IfNotExists: yyS[yypt-5].item.(bool), @@ -13287,7 +13491,7 @@ yynewstate: } parser.yyVAL.item = c } - case 273: + case 282: { c := &ast.Constraint{ Tp: ast.ConstraintUniq, @@ -13307,7 +13511,7 @@ yynewstate: } parser.yyVAL.item = c } - case 274: + case 283: { parser.yyVAL.item = &ast.Constraint{ IfNotExists: yyS[yypt-5].item.(bool), @@ -13318,7 +13522,7 @@ yynewstate: IsEmptyIndex: yyS[yypt-4].item.(*ast.NullString).Empty, } } - case 275: + case 284: { parser.yyVAL.item = &ast.Constraint{ Tp: ast.ConstraintCheck, @@ -13326,29 +13530,29 @@ yynewstate: Enforced: yyS[yypt-0].item.(bool), } } - case 276: + case 285: { parser.yyVAL.item = ast.MatchFull } - case 277: + case 286: { parser.yyVAL.item = ast.MatchPartial } - case 278: + case 287: { parser.yyVAL.item = ast.MatchSimple } - case 279: + case 288: { parser.yyVAL.item = ast.MatchNone } - case 280: + case 289: { parser.yyVAL.item = yyS[yypt-0].item yylex.AppendError(yylex.Errorf("The MATCH clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 281: + case 290: { onDeleteUpdate := yyS[yypt-0].item.([2]interface{}) parser.yyVAL.item = &ast.ReferenceDef{ @@ -13359,90 +13563,90 @@ yynewstate: Match: yyS[yypt-1].item.(ast.MatchType), } } - case 282: + case 291: { parser.yyVAL.item = &ast.OnDeleteOpt{ReferOpt: yyS[yypt-0].item.(model.ReferOptionType)} } - case 283: + case 292: { parser.yyVAL.item = &ast.OnUpdateOpt{ReferOpt: yyS[yypt-0].item.(model.ReferOptionType)} } - case 284: + case 293: { parser.yyVAL.item = [2]interface{}{&ast.OnDeleteOpt{}, &ast.OnUpdateOpt{}} } - case 285: + case 294: { parser.yyVAL.item = [2]interface{}{yyS[yypt-0].item, &ast.OnUpdateOpt{}} } - case 286: + case 295: { parser.yyVAL.item = [2]interface{}{&ast.OnDeleteOpt{}, yyS[yypt-0].item} } - case 287: + case 296: { parser.yyVAL.item = [2]interface{}{yyS[yypt-1].item, yyS[yypt-0].item} } - case 288: + case 297: { parser.yyVAL.item = [2]interface{}{yyS[yypt-0].item, yyS[yypt-1].item} } - case 289: + case 298: { parser.yyVAL.item = model.ReferOptionRestrict } - case 290: + case 299: { parser.yyVAL.item = model.ReferOptionCascade } - case 291: + case 300: { parser.yyVAL.item = model.ReferOptionSetNull } - case 292: + case 301: { parser.yyVAL.item = model.ReferOptionNoAction } - case 293: + case 302: { parser.yyVAL.item = model.ReferOptionSetDefault yylex.AppendError(yylex.Errorf("The SET DEFAULT clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 298: + case 307: { parser.yyVAL.expr = yyS[yypt-1].expr.(*ast.FuncCallExpr) } - case 299: + case 308: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-2].ident), } } - case 300: + case 309: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-3].ident), Args: yyS[yypt-1].item.([]ast.ExprNode), } } - case 301: + case 310: { parser.yyVAL.expr = yyS[yypt-1].expr.(*ast.FuncCallExpr) } - case 303: + case 312: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr("CURRENT_TIMESTAMP")} } - case 304: + case 313: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr("CURRENT_TIMESTAMP")} } - case 305: + case 314: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr("CURRENT_TIMESTAMP"), Args: []ast.ExprNode{ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation)}} } - case 306: + case 315: { objNameExpr := &ast.TableNameExpr{ Name: yyS[yypt-0].item.(*ast.TableName), @@ -13452,7 +13656,7 @@ yynewstate: Args: []ast.ExprNode{objNameExpr}, } } - case 307: + case 316: { objNameExpr := &ast.TableNameExpr{ Name: yyS[yypt-1].item.(*ast.TableName), @@ -13462,39 +13666,39 @@ yynewstate: Args: []ast.ExprNode{objNameExpr}, } } - case 315: + case 324: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].expr, parser.charset, parser.collation) } - case 316: + case 325: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Plus, V: ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation)} } - case 317: + case 326: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Minus, V: ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation)} } - case 321: + case 330: { parser.yyVAL.item = ast.StatsTypeCardinality } - case 322: + case 331: { parser.yyVAL.item = ast.StatsTypeDependency } - case 323: + case 332: { parser.yyVAL.item = ast.StatsTypeCorrelation } - case 324: + case 333: { parser.yyVAL.item = ast.BindingStatusTypeEnabled } - case 325: + case 334: { parser.yyVAL.item = ast.BindingStatusTypeDisabled } - case 326: + case 335: { parser.yyVAL.statement = &ast.CreateStatisticsStmt{ IfNotExists: yyS[yypt-9].item.(bool), @@ -13504,11 +13708,11 @@ yynewstate: Columns: yyS[yypt-1].item.([]*ast.ColumnName), } } - case 327: + case 336: { parser.yyVAL.statement = &ast.DropStatisticsStmt{StatsName: yyS[yypt-0].ident} } - case 328: + case 337: { var indexOption *ast.IndexOption if yyS[yypt-1].item != nil { @@ -13541,79 +13745,79 @@ yynewstate: LockAlg: indexLockAndAlgorithm, } } - case 329: + case 338: { parser.yyVAL.item = ([]*ast.IndexPartSpecification)(nil) } - case 330: + case 339: { parser.yyVAL.item = yyS[yypt-1].item } - case 331: + case 340: { parser.yyVAL.item = []*ast.IndexPartSpecification{yyS[yypt-0].item.(*ast.IndexPartSpecification)} } - case 332: + case 341: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.IndexPartSpecification), yyS[yypt-0].item.(*ast.IndexPartSpecification)) } - case 333: + case 342: { parser.yyVAL.item = &ast.IndexPartSpecification{Column: yyS[yypt-2].item.(*ast.ColumnName), Length: yyS[yypt-1].item.(int), Desc: yyS[yypt-0].item.(bool)} } - case 334: + case 343: { parser.yyVAL.item = &ast.IndexPartSpecification{Expr: yyS[yypt-2].expr, Desc: yyS[yypt-0].item.(bool)} } - case 335: + case 344: { parser.yyVAL.item = nil } - case 336: + case 345: { parser.yyVAL.item = &ast.IndexLockAndAlgorithm{ LockTp: yyS[yypt-0].item.(ast.LockType), AlgorithmTp: ast.AlgorithmTypeDefault, } } - case 337: + case 346: { parser.yyVAL.item = &ast.IndexLockAndAlgorithm{ LockTp: ast.LockTypeDefault, AlgorithmTp: yyS[yypt-0].item.(ast.AlgorithmType), } } - case 338: + case 347: { parser.yyVAL.item = &ast.IndexLockAndAlgorithm{ LockTp: yyS[yypt-1].item.(ast.LockType), AlgorithmTp: yyS[yypt-0].item.(ast.AlgorithmType), } } - case 339: + case 348: { parser.yyVAL.item = &ast.IndexLockAndAlgorithm{ LockTp: yyS[yypt-0].item.(ast.LockType), AlgorithmTp: yyS[yypt-1].item.(ast.AlgorithmType), } } - case 340: + case 349: { parser.yyVAL.item = ast.IndexKeyTypeNone } - case 341: + case 350: { parser.yyVAL.item = ast.IndexKeyTypeUnique } - case 342: + case 351: { parser.yyVAL.item = ast.IndexKeyTypeSpatial } - case 343: + case 352: { parser.yyVAL.item = ast.IndexKeyTypeFullText } - case 344: + case 353: { parser.yyVAL.statement = &ast.AlterDatabaseStmt{ Name: model.NewCIStr(yyS[yypt-1].ident), @@ -13621,7 +13825,7 @@ yynewstate: Options: yyS[yypt-0].item.([]*ast.DatabaseOption), } } - case 345: + case 354: { parser.yyVAL.statement = &ast.AlterDatabaseStmt{ Name: model.NewCIStr(""), @@ -13629,7 +13833,7 @@ yynewstate: Options: yyS[yypt-0].item.([]*ast.DatabaseOption), } } - case 346: + case 355: { parser.yyVAL.statement = &ast.CreateDatabaseStmt{ IfNotExists: yyS[yypt-2].item.(bool), @@ -13637,19 +13841,19 @@ yynewstate: Options: yyS[yypt-0].item.([]*ast.DatabaseOption), } } - case 349: + case 359: { parser.yyVAL.item = &ast.DatabaseOption{Tp: ast.DatabaseOptionCharset, Value: yyS[yypt-0].ident} } - case 350: + case 360: { parser.yyVAL.item = &ast.DatabaseOption{Tp: ast.DatabaseOptionCollate, Value: yyS[yypt-0].ident} } - case 351: + case 361: { parser.yyVAL.item = &ast.DatabaseOption{Tp: ast.DatabaseOptionEncryption, Value: yyS[yypt-0].ident} } - case 352: + case 362: { placementOptions := yyS[yypt-0].item.(*ast.PlacementOption) parser.yyVAL.item = &ast.DatabaseOption{ @@ -13659,7 +13863,7 @@ yynewstate: UintValue: placementOptions.UintValue, } } - case 353: + case 363: { placementOptions := yyS[yypt-0].item.(*ast.PlacementOption) parser.yyVAL.item = &ast.DatabaseOption{ @@ -13669,7 +13873,7 @@ yynewstate: UintValue: placementOptions.UintValue, } } - case 354: + case 364: { tiflashReplicaSpec := &ast.TiFlashReplicaSpec{ Count: yyS[yypt-1].item.(uint64), @@ -13680,19 +13884,19 @@ yynewstate: TiFlashReplica: tiflashReplicaSpec, } } - case 355: + case 365: { parser.yyVAL.item = []*ast.DatabaseOption{} } - case 357: + case 367: { parser.yyVAL.item = []*ast.DatabaseOption{yyS[yypt-0].item.(*ast.DatabaseOption)} } - case 358: + case 368: { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.DatabaseOption), yyS[yypt-0].item.(*ast.DatabaseOption)) } - case 359: + case 369: { stmt := yyS[yypt-6].item.(*ast.CreateTableStmt) stmt.Table = yyS[yypt-7].item.(*ast.TableName) @@ -13713,7 +13917,7 @@ yynewstate: } parser.yyVAL.statement = stmt } - case 360: + case 370: { tmp := &ast.CreateTableStmt{ Table: yyS[yypt-2].item.(*ast.TableName), @@ -13730,23 +13934,23 @@ yynewstate: } parser.yyVAL.statement = tmp } - case 361: + case 371: { parser.yyVAL.item = nil } - case 362: + case 372: { parser.yyVAL.item = true } - case 363: + case 373: { parser.yyVAL.item = false } - case 366: + case 376: { parser.yyVAL.item = nil } - case 367: + case 377: { method := yyS[yypt-3].item.(*ast.PartitionMethod) method.Num = yyS[yypt-2].item.(uint64) @@ -13763,7 +13967,7 @@ yynewstate: } parser.yyVAL.item = opt } - case 368: + case 378: { keyAlgorithm, _ := yyS[yypt-3].item.(*ast.PartitionKeyAlgorithm) parser.yyVAL.item = &ast.PartitionMethod{ @@ -13773,7 +13977,7 @@ yynewstate: KeyAlgorithm: keyAlgorithm, } } - case 369: + case 379: { parser.yyVAL.item = &ast.PartitionMethod{ Tp: model.PartitionTypeHash, @@ -13781,11 +13985,11 @@ yynewstate: Expr: yyS[yypt-1].expr.(ast.ExprNode), } } - case 370: + case 380: { parser.yyVAL.item = nil } - case 371: + case 381: { tp := getUint64FromNUM(yyS[yypt-0].item) if tp != 1 && tp != 2 { @@ -13796,7 +14000,7 @@ yynewstate: Type: tp, } } - case 373: + case 383: { partitionInterval, _ := yyS[yypt-0].item.(*ast.PartitionInterval) parser.yyVAL.item = &ast.PartitionMethod{ @@ -13805,7 +14009,7 @@ yynewstate: Interval: partitionInterval, } } - case 374: + case 384: { partitionInterval, _ := yyS[yypt-0].item.(*ast.PartitionInterval) parser.yyVAL.item = &ast.PartitionMethod{ @@ -13814,21 +14018,21 @@ yynewstate: Interval: partitionInterval, } } - case 375: + case 385: { parser.yyVAL.item = &ast.PartitionMethod{ Tp: model.PartitionTypeList, Expr: yyS[yypt-1].expr.(ast.ExprNode), } } - case 376: + case 386: { parser.yyVAL.item = &ast.PartitionMethod{ Tp: model.PartitionTypeList, ColumnNames: yyS[yypt-1].item.([]*ast.ColumnName), } } - case 377: + case 387: { parser.yyVAL.item = &ast.PartitionMethod{ Tp: model.PartitionTypeSystemTime, @@ -13836,24 +14040,24 @@ yynewstate: Unit: yyS[yypt-0].item.(ast.TimeUnitType), } } - case 378: + case 388: { parser.yyVAL.item = &ast.PartitionMethod{ Tp: model.PartitionTypeSystemTime, Limit: yyS[yypt-0].item.(uint64), } } - case 379: + case 389: { parser.yyVAL.item = &ast.PartitionMethod{ Tp: model.PartitionTypeSystemTime, } } - case 380: + case 390: { parser.yyVAL.item = nil } - case 381: + case 391: { partitionInterval := &ast.PartitionInterval{ IntervalExpr: yyS[yypt-4].item.(ast.PartitionIntervalExpr), @@ -13869,35 +14073,35 @@ yynewstate: partitionInterval.SetOriginTextPosition(startOffset) parser.yyVAL.item = partitionInterval } - case 382: + case 392: { parser.yyVAL.item = ast.PartitionIntervalExpr{Expr: yyS[yypt-0].expr, TimeUnit: ast.TimeUnitInvalid} } - case 383: + case 393: { parser.yyVAL.item = ast.PartitionIntervalExpr{Expr: yyS[yypt-1].expr, TimeUnit: yyS[yypt-0].item.(ast.TimeUnitType)} } - case 384: + case 394: { parser.yyVAL.item = false } - case 385: + case 395: { parser.yyVAL.item = true } - case 386: + case 396: { parser.yyVAL.item = false } - case 387: + case 397: { parser.yyVAL.item = true } - case 388: + case 398: { parser.yyVAL.item = ast.PartitionInterval{} // First/LastRangeEnd defaults to nil } - case 389: + case 399: { first := yyS[yypt-8].expr.(ast.ExprNode) last := yyS[yypt-1].expr.(ast.ExprNode) @@ -13906,25 +14110,25 @@ yynewstate: LastRangeEnd: &last, } } - case 390: + case 400: { parser.yyVAL.ident = "" } - case 392: + case 402: { parser.yyVAL.item = nil } - case 393: + case 403: { method := yyS[yypt-1].item.(*ast.PartitionMethod) method.Num = yyS[yypt-0].item.(uint64) parser.yyVAL.item = method } - case 394: + case 404: { parser.yyVAL.item = uint64(0) } - case 395: + case 405: { res := yyS[yypt-0].item.(uint64) if res == 0 { @@ -13933,11 +14137,11 @@ yynewstate: } parser.yyVAL.item = res } - case 396: + case 406: { parser.yyVAL.item = uint64(0) } - case 397: + case 407: { res := yyS[yypt-0].item.(uint64) if res == 0 { @@ -13946,23 +14150,23 @@ yynewstate: } parser.yyVAL.item = res } - case 398: + case 408: { parser.yyVAL.item = nil } - case 399: + case 409: { parser.yyVAL.item = yyS[yypt-1].item.([]*ast.PartitionDefinition) } - case 400: + case 410: { parser.yyVAL.item = []*ast.PartitionDefinition{yyS[yypt-0].item.(*ast.PartitionDefinition)} } - case 401: + case 411: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.PartitionDefinition), yyS[yypt-0].item.(*ast.PartitionDefinition)) } - case 402: + case 412: { parser.yyVAL.item = &ast.PartitionDefinition{ Name: model.NewCIStr(yyS[yypt-3].ident), @@ -13971,80 +14175,80 @@ yynewstate: Sub: yyS[yypt-0].item.([]*ast.SubPartitionDefinition), } } - case 403: + case 413: { parser.yyVAL.item = make([]*ast.SubPartitionDefinition, 0) } - case 404: + case 414: { parser.yyVAL.item = yyS[yypt-1].item } - case 405: + case 415: { parser.yyVAL.item = []*ast.SubPartitionDefinition{yyS[yypt-0].item.(*ast.SubPartitionDefinition)} } - case 406: + case 416: { list := yyS[yypt-2].item.([]*ast.SubPartitionDefinition) parser.yyVAL.item = append(list, yyS[yypt-0].item.(*ast.SubPartitionDefinition)) } - case 407: + case 417: { parser.yyVAL.item = &ast.SubPartitionDefinition{ Name: model.NewCIStr(yyS[yypt-1].ident), Options: yyS[yypt-0].item.([]*ast.TableOption), } } - case 408: + case 418: { parser.yyVAL.item = make([]*ast.TableOption, 0) } - case 409: + case 419: { list := yyS[yypt-1].item.([]*ast.TableOption) parser.yyVAL.item = append(list, yyS[yypt-0].item.(*ast.TableOption)) } - case 410: + case 420: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionComment, StrValue: yyS[yypt-0].ident} } - case 411: + case 421: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionEngine, StrValue: yyS[yypt-0].ident} } - case 412: + case 422: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionEngine, StrValue: yyS[yypt-0].ident} } - case 413: + case 423: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionInsertMethod, StrValue: yyS[yypt-0].ident} } - case 414: + case 424: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionDataDirectory, StrValue: yyS[yypt-0].ident} } - case 415: + case 425: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionIndexDirectory, StrValue: yyS[yypt-0].ident} } - case 416: + case 426: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionMaxRows, UintValue: yyS[yypt-0].item.(uint64)} } - case 417: + case 427: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionMinRows, UintValue: yyS[yypt-0].item.(uint64)} } - case 418: + case 428: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionTablespace, StrValue: yyS[yypt-0].ident} } - case 419: + case 429: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionNodegroup, UintValue: yyS[yypt-0].item.(uint64)} } - case 420: + case 430: { placementOptions := yyS[yypt-0].item.(*ast.PlacementOption) parser.yyVAL.item = &ast.TableOption{ @@ -14054,27 +14258,27 @@ yynewstate: UintValue: placementOptions.UintValue, } } - case 421: + case 431: { parser.yyVAL.item = &ast.PartitionDefinitionClauseNone{} } - case 422: + case 432: { parser.yyVAL.item = &ast.PartitionDefinitionClauseLessThan{ Exprs: []ast.ExprNode{&ast.MaxValueExpr{}}, } } - case 423: + case 433: { parser.yyVAL.item = &ast.PartitionDefinitionClauseLessThan{ Exprs: yyS[yypt-1].item.([]ast.ExprNode), } } - case 424: + case 434: { parser.yyVAL.item = &ast.PartitionDefinitionClauseIn{} } - case 425: + case 435: { exprs := yyS[yypt-1].item.([]ast.ExprNode) values := make([][]ast.ExprNode, 0, len(exprs)) @@ -14087,43 +14291,43 @@ yynewstate: } parser.yyVAL.item = &ast.PartitionDefinitionClauseIn{Values: values} } - case 426: + case 436: { parser.yyVAL.item = &ast.PartitionDefinitionClauseHistory{Current: false} } - case 427: + case 437: { parser.yyVAL.item = &ast.PartitionDefinitionClauseHistory{Current: true} } - case 428: + case 438: { parser.yyVAL.item = ast.OnDuplicateKeyHandlingError } - case 429: + case 439: { parser.yyVAL.item = ast.OnDuplicateKeyHandlingIgnore } - case 430: + case 440: { parser.yyVAL.item = ast.OnDuplicateKeyHandlingReplace } - case 433: + case 443: { parser.yyVAL.item = &ast.CreateTableStmt{} } - case 434: + case 444: { parser.yyVAL.item = &ast.CreateTableStmt{Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 435: + case 445: { parser.yyVAL.item = &ast.CreateTableStmt{Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 436: + case 446: { parser.yyVAL.item = &ast.CreateTableStmt{Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 437: + case 447: { var sel ast.ResultSetNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -14136,7 +14340,7 @@ yynewstate: } parser.yyVAL.item = &ast.CreateTableStmt{Select: sel} } - case 441: + case 451: { var sel ast.StmtNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -14149,15 +14353,15 @@ yynewstate: } parser.yyVAL.statement = sel } - case 442: + case 452: { parser.yyVAL.item = yyS[yypt-0].item } - case 443: + case 453: { parser.yyVAL.item = yyS[yypt-1].item } - case 444: + case 454: { startOffset := parser.startOffset(&yyS[yypt-1]) selStmt := yyS[yypt-1].statement.(ast.StmtNode) @@ -14182,85 +14386,85 @@ yynewstate: } parser.yyVAL.statement = x } - case 445: + case 455: { parser.yyVAL.item = false } - case 446: + case 456: { parser.yyVAL.item = true } - case 447: + case 457: { parser.yyVAL.item = model.AlgorithmUndefined } - case 448: + case 458: { parser.yyVAL.item = model.AlgorithmUndefined } - case 449: + case 459: { parser.yyVAL.item = model.AlgorithmMerge } - case 450: + case 460: { parser.yyVAL.item = model.AlgorithmTemptable } - case 451: + case 461: { parser.yyVAL.item = &auth.UserIdentity{CurrentUser: true} } - case 452: + case 462: { parser.yyVAL.item = yyS[yypt-0].item } - case 453: + case 463: { parser.yyVAL.item = model.SecurityDefiner } - case 454: + case 464: { parser.yyVAL.item = model.SecurityDefiner } - case 455: + case 465: { parser.yyVAL.item = model.SecurityInvoker } - case 457: + case 467: { parser.yyVAL.item = nil } - case 458: + case 468: { parser.yyVAL.item = yyS[yypt-1].item.([]model.CIStr) } - case 459: + case 469: { parser.yyVAL.item = []model.CIStr{model.NewCIStr(yyS[yypt-0].ident)} } - case 460: + case 470: { parser.yyVAL.item = append(yyS[yypt-2].item.([]model.CIStr), model.NewCIStr(yyS[yypt-0].ident)) } - case 461: + case 471: { parser.yyVAL.item = nil } - case 462: + case 472: { parser.yyVAL.item = model.CheckOptionCascaded } - case 463: + case 473: { parser.yyVAL.item = model.CheckOptionLocal } - case 464: + case 474: { parser.yyVAL.statement = &ast.DoStmt{ Exprs: yyS[yypt-0].item.([]ast.ExprNode), } } - case 465: + case 475: { // Single Table tn := yyS[yypt-6].item.(*ast.TableName) @@ -14288,7 +14492,7 @@ yynewstate: parser.yyVAL.statement = x } - case 466: + case 476: { // Multiple Table x := &ast.DeleteStmt{ @@ -14308,7 +14512,7 @@ yynewstate: } parser.yyVAL.statement = x } - case 467: + case 477: { // Multiple Table x := &ast.DeleteStmt{ @@ -14327,23 +14531,23 @@ yynewstate: } parser.yyVAL.statement = x } - case 470: + case 480: { d := yyS[yypt-0].statement.(*ast.DeleteStmt) d.With = yyS[yypt-1].item.(*ast.WithClause) parser.yyVAL.statement = d } - case 471: + case 481: { d := yyS[yypt-0].statement.(*ast.DeleteStmt) d.With = yyS[yypt-1].item.(*ast.WithClause) parser.yyVAL.statement = d } - case 473: + case 483: { parser.yyVAL.statement = &ast.DropDatabaseStmt{IfExists: yyS[yypt-1].item.(bool), Name: model.NewCIStr(yyS[yypt-0].ident)} } - case 474: + case 484: { var indexLockAndAlgorithm *ast.IndexLockAndAlgorithm if yyS[yypt-0].item != nil { @@ -14354,39 +14558,39 @@ yynewstate: } parser.yyVAL.statement = &ast.DropIndexStmt{IfExists: yyS[yypt-4].item.(bool), IndexName: yyS[yypt-3].ident, Table: yyS[yypt-1].item.(*ast.TableName), LockAlg: indexLockAndAlgorithm} } - case 475: + case 485: { parser.yyVAL.statement = &ast.DropTableStmt{IfExists: yyS[yypt-2].item.(bool), Tables: yyS[yypt-1].item.([]*ast.TableName), IsView: false, TemporaryKeyword: yyS[yypt-4].item.(ast.TemporaryKeyword)} } - case 476: + case 486: { parser.yyVAL.item = ast.TemporaryNone } - case 477: + case 487: { parser.yyVAL.item = ast.TemporaryLocal } - case 478: + case 488: { parser.yyVAL.item = ast.TemporaryGlobal } - case 479: + case 489: { parser.yyVAL.statement = &ast.DropTableStmt{Tables: yyS[yypt-1].item.([]*ast.TableName), IsView: true} } - case 480: + case 490: { parser.yyVAL.statement = &ast.DropTableStmt{IfExists: true, Tables: yyS[yypt-1].item.([]*ast.TableName), IsView: true} } - case 481: + case 491: { parser.yyVAL.statement = &ast.DropUserStmt{IsDropRole: false, IfExists: false, UserList: yyS[yypt-0].item.([]*auth.UserIdentity)} } - case 482: + case 492: { parser.yyVAL.statement = &ast.DropUserStmt{IsDropRole: false, IfExists: true, UserList: yyS[yypt-0].item.([]*auth.UserIdentity)} } - case 483: + case 493: { tmp := make([]*auth.UserIdentity, 0, 10) roleList := yyS[yypt-0].item.([]*auth.RoleIdentity) @@ -14395,7 +14599,7 @@ yynewstate: } parser.yyVAL.statement = &ast.DropUserStmt{IsDropRole: true, IfExists: false, UserList: tmp} } - case 484: + case 494: { tmp := make([]*auth.UserIdentity, 0, 10) roleList := yyS[yypt-0].item.([]*auth.RoleIdentity) @@ -14404,11 +14608,11 @@ yynewstate: } parser.yyVAL.statement = &ast.DropUserStmt{IsDropRole: true, IfExists: true, UserList: tmp} } - case 485: + case 495: { parser.yyVAL.statement = &ast.DropStatsStmt{Tables: yyS[yypt-0].item.([]*ast.TableName)} } - case 486: + case 496: { yylex.AppendError(ErrWarnDeprecatedSyntaxNoReplacement.FastGenByArgs("DROP STATS ... PARTITION ...")) parser.lastErrorAsWarn() @@ -14417,7 +14621,7 @@ yynewstate: PartitionNames: yyS[yypt-0].item.([]model.CIStr), } } - case 487: + case 497: { yylex.AppendError(ErrWarnDeprecatedSyntax.FastGenByArgs("DROP STATS ... GLOBAL", "DROP STATS ...")) parser.lastErrorAsWarn() @@ -14426,11 +14630,11 @@ yynewstate: IsGlobalStats: true, } } - case 495: + case 505: { parser.yyVAL.statement = nil } - case 496: + case 506: { parser.yyVAL.statement = &ast.TraceStmt{ Stmt: yyS[yypt-0].statement, @@ -14440,7 +14644,7 @@ yynewstate: startOffset := parser.startOffset(&yyS[yypt]) yyS[yypt-0].statement.SetText(parser.lexer.client, string(parser.src[startOffset:])) } - case 497: + case 507: { parser.yyVAL.statement = &ast.TraceStmt{ Stmt: yyS[yypt-0].statement, @@ -14450,7 +14654,7 @@ yynewstate: startOffset := parser.startOffset(&yyS[yypt]) yyS[yypt-0].statement.SetText(parser.lexer.client, string(parser.src[startOffset:])) } - case 498: + case 508: { parser.yyVAL.statement = &ast.TraceStmt{ Stmt: yyS[yypt-0].statement, @@ -14459,7 +14663,7 @@ yynewstate: startOffset := parser.startOffset(&yyS[yypt]) yyS[yypt-0].statement.SetText(parser.lexer.client, string(parser.src[startOffset:])) } - case 499: + case 509: { parser.yyVAL.statement = &ast.TraceStmt{ Stmt: yyS[yypt-0].statement, @@ -14469,7 +14673,7 @@ yynewstate: startOffset := parser.startOffset(&yyS[yypt]) yyS[yypt-0].statement.SetText(parser.lexer.client, string(parser.src[startOffset:])) } - case 503: + case 513: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: &ast.ShowStmt{ @@ -14478,7 +14682,7 @@ yynewstate: }, } } - case 504: + case 514: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: &ast.ShowStmt{ @@ -14488,49 +14692,49 @@ yynewstate: }, } } - case 505: + case 515: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: yyS[yypt-0].statement, Format: "row", } } - case 506: + case 516: { parser.yyVAL.statement = &ast.ExplainForStmt{ Format: "row", ConnectionID: getUint64FromNUM(yyS[yypt-0].item), } } - case 507: + case 517: { parser.yyVAL.statement = &ast.ExplainForStmt{ Format: yyS[yypt-3].ident, ConnectionID: getUint64FromNUM(yyS[yypt-0].item), } } - case 508: + case 518: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: yyS[yypt-0].statement, Format: yyS[yypt-1].ident, } } - case 509: + case 519: { parser.yyVAL.statement = &ast.ExplainForStmt{ Format: yyS[yypt-3].ident, ConnectionID: getUint64FromNUM(yyS[yypt-0].item), } } - case 510: + case 520: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: yyS[yypt-0].statement, Format: yyS[yypt-1].ident, } } - case 511: + case 521: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: yyS[yypt-0].statement, @@ -14538,7 +14742,7 @@ yynewstate: Analyze: true, } } - case 512: + case 522: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: yyS[yypt-0].statement, @@ -14546,7 +14750,7 @@ yynewstate: Analyze: true, } } - case 513: + case 523: { parser.yyVAL.statement = &ast.ExplainStmt{ Stmt: yyS[yypt-0].statement, @@ -14554,15 +14758,15 @@ yynewstate: Analyze: true, } } - case 521: + case 532: { parser.yyVAL.statement = &ast.SavepointStmt{Name: yyS[yypt-0].ident} } - case 522: + case 533: { parser.yyVAL.statement = &ast.ReleaseSavepointStmt{Name: yyS[yypt-0].ident} } - case 523: + case 534: { stmt := yyS[yypt-3].item.(*ast.BRIEStmt) stmt.Kind = ast.BRIEKindBackup @@ -14570,7 +14774,7 @@ yynewstate: stmt.Options = yyS[yypt-0].item.([]*ast.BRIEOption) parser.yyVAL.statement = stmt } - case 524: + case 535: { stmt := yyS[yypt-3].item.(*ast.BRIEStmt) stmt.Kind = ast.BRIEKindRestore @@ -14578,110 +14782,110 @@ yynewstate: stmt.Options = yyS[yypt-0].item.([]*ast.BRIEOption) parser.yyVAL.statement = stmt } - case 525: + case 536: { parser.yyVAL.item = &ast.BRIEStmt{} } - case 526: + case 537: { parser.yyVAL.item = &ast.BRIEStmt{Schemas: yyS[yypt-0].item.([]string)} } - case 527: + case 538: { parser.yyVAL.item = &ast.BRIEStmt{Tables: yyS[yypt-0].item.([]*ast.TableName)} } - case 528: + case 539: { parser.yyVAL.item = []string{yyS[yypt-0].ident} } - case 529: + case 540: { parser.yyVAL.item = append(yyS[yypt-2].item.([]string), yyS[yypt-0].ident) } - case 530: + case 541: { parser.yyVAL.item = []*ast.BRIEOption{} } - case 531: + case 542: { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.BRIEOption), yyS[yypt-0].item.(*ast.BRIEOption)) } - case 532: + case 543: { parser.yyVAL.item = ast.BRIEOptionConcurrency } - case 533: + case 544: { parser.yyVAL.item = ast.BRIEOptionResume } - case 534: + case 545: { parser.yyVAL.item = ast.BRIEOptionSendCreds } - case 535: + case 546: { parser.yyVAL.item = ast.BRIEOptionOnline } - case 536: + case 547: { parser.yyVAL.item = ast.BRIEOptionCheckpoint } - case 537: + case 548: { parser.yyVAL.item = ast.BRIEOptionSkipSchemaFiles } - case 538: + case 549: { parser.yyVAL.item = ast.BRIEOptionStrictFormat } - case 539: + case 550: { parser.yyVAL.item = ast.BRIEOptionCSVNotNull } - case 540: + case 551: { parser.yyVAL.item = ast.BRIEOptionCSVBackslashEscape } - case 541: + case 552: { parser.yyVAL.item = ast.BRIEOptionCSVTrimLastSeparators } - case 542: + case 553: { parser.yyVAL.item = ast.BRIEOptionTiKVImporter } - case 543: + case 554: { parser.yyVAL.item = ast.BRIEOptionCSVSeparator } - case 544: + case 555: { parser.yyVAL.item = ast.BRIEOptionCSVDelimiter } - case 545: + case 556: { parser.yyVAL.item = ast.BRIEOptionCSVNull } - case 546: + case 557: { parser.yyVAL.item = ast.BRIEOptionBackend } - case 547: + case 558: { parser.yyVAL.item = ast.BRIEOptionOnDuplicate } - case 548: + case 559: { parser.yyVAL.item = ast.BRIEOptionOnDuplicate } - case 549: + case 560: { parser.yyVAL.item = &ast.BRIEOption{ Tp: yyS[yypt-2].item.(ast.BRIEOptionType), UintValue: yyS[yypt-0].item.(uint64), } } - case 550: + case 561: { value := uint64(0) if yyS[yypt-0].item.(bool) { @@ -14692,21 +14896,21 @@ yynewstate: UintValue: value, } } - case 551: + case 562: { parser.yyVAL.item = &ast.BRIEOption{ Tp: yyS[yypt-2].item.(ast.BRIEOptionType), StrValue: yyS[yypt-0].ident, } } - case 552: + case 563: { parser.yyVAL.item = &ast.BRIEOption{ Tp: yyS[yypt-2].item.(ast.BRIEOptionType), StrValue: strings.ToLower(yyS[yypt-0].ident), } } - case 553: + case 564: { unit, err := yyS[yypt-1].item.(ast.TimeUnitType).Duration() if err != nil { @@ -14719,35 +14923,35 @@ yynewstate: UintValue: yyS[yypt-2].item.(uint64) * uint64(unit), } } - case 554: + case 565: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionBackupTS, StrValue: yyS[yypt-0].ident, } } - case 555: + case 566: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionBackupTSO, UintValue: yyS[yypt-0].item.(uint64), } } - case 556: + case 567: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionLastBackupTS, StrValue: yyS[yypt-0].ident, } } - case 557: + case 568: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionLastBackupTSO, UintValue: yyS[yypt-0].item.(uint64), } } - case 558: + case 569: { // TODO: check overflow? parser.yyVAL.item = &ast.BRIEOption{ @@ -14755,21 +14959,21 @@ yynewstate: UintValue: yyS[yypt-3].item.(uint64) * 1048576, } } - case 559: + case 570: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionCSVHeader, UintValue: ast.BRIECSVHeaderIsColumns, } } - case 560: + case 571: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionCSVHeader, UintValue: yyS[yypt-0].item.(uint64), } } - case 561: + case 572: { value := uint64(0) if yyS[yypt-0].item.(bool) { @@ -14780,14 +14984,14 @@ yynewstate: UintValue: value, } } - case 562: + case 573: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionChecksum, UintValue: uint64(yyS[yypt-0].item.(ast.BRIEOptionLevel)), } } - case 563: + case 574: { value := uint64(0) if yyS[yypt-0].item.(bool) { @@ -14798,18 +15002,18 @@ yynewstate: UintValue: value, } } - case 564: + case 575: { parser.yyVAL.item = &ast.BRIEOption{ Tp: ast.BRIEOptionAnalyze, UintValue: uint64(yyS[yypt-0].item.(ast.BRIEOptionLevel)), } } - case 565: + case 576: { parser.yyVAL.item = getUint64FromNUM(yyS[yypt-0].item) } - case 566: + case 577: { v, rangeErrMsg := getInt64FromNUM(yyS[yypt-0].item) if len(rangeErrMsg) != 0 { @@ -14818,35 +15022,35 @@ yynewstate: } parser.yyVAL.item = v } - case 568: + case 579: { parser.yyVAL.item = yyS[yypt-0].item.(int64) != 0 } - case 569: + case 580: { parser.yyVAL.item = false } - case 570: + case 581: { parser.yyVAL.item = true } - case 571: + case 582: { parser.yyVAL.item = ast.BRIEOptionLevelOff } - case 572: + case 583: { parser.yyVAL.item = ast.BRIEOptionLevelOptional } - case 573: + case 584: { parser.yyVAL.item = ast.BRIEOptionLevelRequired } - case 574: + case 585: { parser.yyVAL.statement = &ast.PurgeImportStmt{TaskID: getUint64FromNUM(yyS[yypt-0].item)} } - case 575: + case 586: { parser.yyVAL.statement = &ast.CreateImportStmt{ IfNotExists: yyS[yypt-5].item.(bool), @@ -14856,21 +15060,21 @@ yynewstate: Options: yyS[yypt-0].item.([]*ast.BRIEOption), } } - case 576: + case 587: { parser.yyVAL.statement = &ast.StopImportStmt{ IfRunning: yyS[yypt-1].item.(bool), Name: yyS[yypt-0].ident, } } - case 577: + case 588: { parser.yyVAL.statement = &ast.ResumeImportStmt{ IfNotRunning: yyS[yypt-1].item.(bool), Name: yyS[yypt-0].ident, } } - case 578: + case 589: { s := &ast.AlterImportStmt{ Name: yyS[yypt-3].ident, @@ -14882,14 +15086,14 @@ yynewstate: } parser.yyVAL.statement = s } - case 579: + case 590: { parser.yyVAL.statement = &ast.DropImportStmt{ IfExists: yyS[yypt-1].item.(bool), Name: yyS[yypt-0].ident, } } - case 580: + case 591: { parser.yyVAL.statement = &ast.ShowImportStmt{ Name: yyS[yypt-2].ident, @@ -14897,73 +15101,73 @@ yynewstate: TableNames: yyS[yypt-0].item.([]*ast.TableName), } } - case 581: + case 592: { parser.yyVAL.item = false } - case 582: + case 593: { parser.yyVAL.item = true } - case 583: + case 594: { parser.yyVAL.item = false } - case 584: + case 595: { parser.yyVAL.item = true } - case 585: + case 596: { parser.yyVAL.item = false } - case 586: + case 597: { parser.yyVAL.item = true } - case 587: + case 598: { parser.yyVAL.item = ast.ErrorHandleError } - case 588: + case 599: { parser.yyVAL.item = ast.ErrorHandleReplace } - case 589: + case 600: { parser.yyVAL.item = ast.ErrorHandleSkipAll } - case 590: + case 601: { parser.yyVAL.item = ast.ErrorHandleSkipConstraint } - case 591: + case 602: { parser.yyVAL.item = ast.ErrorHandleSkipDuplicate } - case 592: + case 603: { parser.yyVAL.item = ast.ErrorHandleSkipStrict } - case 593: + case 604: { parser.yyVAL.item = nil } - case 594: + case 605: { parser.yyVAL.item = &ast.ImportTruncate{ IsErrorsOnly: false, TableNames: yyS[yypt-0].item.([]*ast.TableName), } } - case 595: + case 606: { parser.yyVAL.item = &ast.ImportTruncate{ IsErrorsOnly: true, TableNames: yyS[yypt-0].item.([]*ast.TableName), } } - case 596: + case 607: { v := yyS[yypt-2].ident v = strings.TrimPrefix(v, "@") @@ -14974,19 +15178,19 @@ yynewstate: Value: yyS[yypt-0].expr, } } - case 597: + case 608: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.LogicOr, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 598: + case 609: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.LogicXor, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 599: + case 610: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.LogicAnd, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 600: + case 611: { expr, ok := yyS[yypt-0].expr.(*ast.ExistsSubqueryExpr) if ok { @@ -14996,7 +15200,7 @@ yynewstate: parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Not, V: yyS[yypt-0].expr} } } - case 601: + case 612: { parser.yyVAL.expr = &ast.MatchAgainst{ ColumnNames: yyS[yypt-6].item.([]*ast.ColumnName), @@ -15004,87 +15208,87 @@ yynewstate: Modifier: ast.FulltextSearchModifier(yyS[yypt-1].item.(int)), } } - case 602: + case 613: { parser.yyVAL.expr = &ast.IsTruthExpr{Expr: yyS[yypt-2].expr, Not: !yyS[yypt-1].item.(bool), True: int64(1)} } - case 603: + case 614: { parser.yyVAL.expr = &ast.IsTruthExpr{Expr: yyS[yypt-2].expr, Not: !yyS[yypt-1].item.(bool), True: int64(0)} } - case 604: + case 615: { /* https://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html#operator_is */ parser.yyVAL.expr = &ast.IsNullExpr{Expr: yyS[yypt-2].expr, Not: !yyS[yypt-1].item.(bool)} } - case 606: + case 617: { parser.yyVAL.expr = &ast.MaxValueExpr{} } - case 608: + case 619: { parser.yyVAL.item = ast.FulltextSearchModifierNaturalLanguageMode } - case 609: + case 620: { parser.yyVAL.item = ast.FulltextSearchModifierNaturalLanguageMode } - case 610: + case 621: { parser.yyVAL.item = ast.FulltextSearchModifierNaturalLanguageMode | ast.FulltextSearchModifierWithQueryExpansion } - case 611: + case 622: { parser.yyVAL.item = ast.FulltextSearchModifierBooleanMode } - case 612: + case 623: { parser.yyVAL.item = ast.FulltextSearchModifierWithQueryExpansion } - case 617: + case 628: { parser.yyVAL.item = []ast.ExprNode{yyS[yypt-0].expr} } - case 618: + case 629: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.ExprNode), yyS[yypt-0].expr) } - case 619: + case 630: { parser.yyVAL.item = []ast.ExprNode{yyS[yypt-0].expr} } - case 620: + case 631: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.ExprNode), yyS[yypt-0].expr) } - case 621: + case 632: { parser.yyVAL.item = []ast.ExprNode{} } - case 623: + case 634: { parser.yyVAL.item = []ast.ExprNode{} } - case 625: + case 636: { expr := ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) parser.yyVAL.item = []ast.ExprNode{expr} } - case 626: + case 637: { parser.yyVAL.expr = &ast.IsNullExpr{Expr: yyS[yypt-2].expr, Not: !yyS[yypt-1].item.(bool)} } - case 627: + case 638: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: yyS[yypt-1].item.(opcode.Op), L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 628: + case 639: { sq := yyS[yypt-0].expr.(*ast.SubqueryExpr) sq.MultiRows = true parser.yyVAL.expr = &ast.CompareSubqueryExpr{Op: yyS[yypt-2].item.(opcode.Op), L: yyS[yypt-3].expr, R: sq, All: yyS[yypt-1].item.(bool)} } - case 629: + case 640: { v := yyS[yypt-2].ident v = strings.TrimPrefix(v, "@") @@ -15096,101 +15300,101 @@ yynewstate: } parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: yyS[yypt-3].item.(opcode.Op), L: yyS[yypt-4].expr, R: variable} } - case 631: + case 642: { parser.yyVAL.item = opcode.GE } - case 632: + case 643: { parser.yyVAL.item = opcode.GT } - case 633: + case 644: { parser.yyVAL.item = opcode.LE } - case 634: + case 645: { parser.yyVAL.item = opcode.LT } - case 635: + case 646: { parser.yyVAL.item = opcode.NE } - case 636: + case 647: { parser.yyVAL.item = opcode.NE } - case 637: + case 648: { parser.yyVAL.item = opcode.EQ } - case 638: + case 649: { parser.yyVAL.item = opcode.NullEQ } - case 639: + case 650: { parser.yyVAL.item = true } - case 640: + case 651: { parser.yyVAL.item = false } - case 641: + case 652: { parser.yyVAL.item = true } - case 642: + case 653: { parser.yyVAL.item = false } - case 643: + case 654: { parser.yyVAL.item = true } - case 644: + case 655: { parser.yyVAL.item = false } - case 645: + case 656: { parser.yyVAL.item = true } - case 646: + case 657: { parser.yyVAL.item = false } - case 647: + case 658: { parser.yyVAL.item = true } - case 648: + case 659: { parser.yyVAL.item = false } - case 649: + case 660: { parser.yyVAL.item = false } - case 650: + case 661: { parser.yyVAL.item = false } - case 651: + case 662: { parser.yyVAL.item = true } - case 652: + case 663: { parser.yyVAL.expr = &ast.PatternInExpr{Expr: yyS[yypt-4].expr, Not: !yyS[yypt-3].item.(bool), List: yyS[yypt-1].item.([]ast.ExprNode)} } - case 653: + case 664: { sq := yyS[yypt-0].expr.(*ast.SubqueryExpr) sq.MultiRows = true parser.yyVAL.expr = &ast.PatternInExpr{Expr: yyS[yypt-2].expr, Not: !yyS[yypt-1].item.(bool), Sel: sq} } - case 654: + case 665: { parser.yyVAL.expr = &ast.BetweenExpr{ Expr: yyS[yypt-4].expr, @@ -15199,7 +15403,7 @@ yynewstate: Not: !yyS[yypt-3].item.(bool), } } - case 655: + case 666: { escape := yyS[yypt-0].ident if len(escape) > 1 { @@ -15215,57 +15419,57 @@ yynewstate: Escape: escape[0], } } - case 656: + case 667: { parser.yyVAL.expr = &ast.PatternRegexpExpr{Expr: yyS[yypt-2].expr, Pattern: yyS[yypt-0].expr, Not: !yyS[yypt-1].item.(bool)} } - case 660: + case 671: { parser.yyVAL.ident = "\\" } - case 661: + case 672: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 662: + case 673: { parser.yyVAL.item = &ast.SelectField{WildCard: &ast.WildCardField{}} } - case 663: + case 674: { wildCard := &ast.WildCardField{Table: model.NewCIStr(yyS[yypt-2].ident)} parser.yyVAL.item = &ast.SelectField{WildCard: wildCard} } - case 664: + case 675: { wildCard := &ast.WildCardField{Schema: model.NewCIStr(yyS[yypt-4].ident), Table: model.NewCIStr(yyS[yypt-2].ident)} parser.yyVAL.item = &ast.SelectField{WildCard: wildCard} } - case 665: + case 676: { expr := yyS[yypt-1].expr asName := yyS[yypt-0].ident parser.yyVAL.item = &ast.SelectField{Expr: expr, AsName: model.NewCIStr(asName)} } - case 666: + case 677: { parser.yyVAL.ident = "" } - case 669: + case 680: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 671: + case 682: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 672: + case 683: { field := yyS[yypt-0].item.(*ast.SelectField) field.Offset = parser.startOffset(&yyS[yypt]) parser.yyVAL.item = []*ast.SelectField{field} } - case 673: + case 684: { fl := yyS[yypt-2].item.([]*ast.SelectField) last := fl[len(fl)-1] @@ -15277,71 +15481,71 @@ yynewstate: newField.Offset = parser.startOffset(&yyS[yypt]) parser.yyVAL.item = append(fl, newField) } - case 674: + case 685: { parser.yyVAL.item = &ast.GroupByClause{Items: yyS[yypt-0].item.([]*ast.ByItem)} } - case 675: + case 686: { parser.yyVAL.item = nil } - case 676: + case 687: { parser.yyVAL.item = &ast.HavingClause{Expr: yyS[yypt-0].expr} } - case 677: + case 688: { parser.yyVAL.item = nil } - case 679: + case 690: { parser.yyVAL.item = &ast.AsOfClause{ TsExpr: yyS[yypt-0].expr.(ast.ExprNode), } } - case 680: + case 691: { parser.yyVAL.item = false } - case 681: + case 692: { parser.yyVAL.item = true } - case 682: + case 693: { parser.yyVAL.item = false } - case 683: + case 694: { parser.yyVAL.item = true } - case 684: + case 695: { parser.yyVAL.item = false } - case 685: + case 696: { parser.yyVAL.item = true } - case 686: + case 697: { parser.yyVAL.item = &ast.NullString{ String: "", Empty: false, } } - case 687: + case 698: { parser.yyVAL.item = &ast.NullString{ String: yyS[yypt-0].ident, Empty: len(yyS[yypt-0].ident) == 0, } } - case 688: + case 699: { parser.yyVAL.item = nil } - case 689: + case 700: { // Merge the options if yyS[yypt-1].item == nil { @@ -15365,19 +15569,19 @@ yynewstate: parser.yyVAL.item = opt1 } } - case 690: + case 701: { parser.yyVAL.item = &ast.IndexOption{ KeyBlockSize: yyS[yypt-0].item.(uint64), } } - case 691: + case 702: { parser.yyVAL.item = &ast.IndexOption{ Tp: yyS[yypt-0].item.(model.IndexType), } } - case 692: + case 703: { parser.yyVAL.item = &ast.IndexOption{ ParserName: model.NewCIStr(yyS[yypt-0].ident), @@ -15385,75 +15589,75 @@ yynewstate: yylex.AppendError(yylex.Errorf("The WITH PARASER clause is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 693: + case 704: { parser.yyVAL.item = &ast.IndexOption{ Comment: yyS[yypt-0].ident, } } - case 694: + case 705: { parser.yyVAL.item = &ast.IndexOption{ Visibility: yyS[yypt-0].item.(ast.IndexVisibility), } } - case 695: + case 706: { parser.yyVAL.item = &ast.IndexOption{ PrimaryKeyTp: yyS[yypt-0].item.(model.PrimaryKeyType), } } - case 696: + case 707: { parser.yyVAL.item = []interface{}{yyS[yypt-0].item, nil} } - case 697: + case 708: { parser.yyVAL.item = []interface{}{yyS[yypt-2].item, yyS[yypt-0].item} } - case 698: + case 709: { parser.yyVAL.item = []interface{}{&ast.NullString{String: yyS[yypt-2].ident, Empty: len(yyS[yypt-2].ident) == 0}, yyS[yypt-0].item} } - case 699: + case 710: { parser.yyVAL.item = nil } - case 701: + case 712: { parser.yyVAL.item = yyS[yypt-0].item } - case 702: + case 713: { parser.yyVAL.item = yyS[yypt-0].item } - case 703: + case 714: { parser.yyVAL.item = model.IndexTypeBtree } - case 704: + case 715: { parser.yyVAL.item = model.IndexTypeHash } - case 705: + case 716: { parser.yyVAL.item = model.IndexTypeRtree } - case 706: + case 717: { parser.yyVAL.item = ast.IndexVisibilityVisible } - case 707: + case 718: { parser.yyVAL.item = ast.IndexVisibilityInvisible } - case 1182: + case 1203: { parser.yyVAL.statement = &ast.CallStmt{ Procedure: yyS[yypt-0].expr.(*ast.FuncCallExpr), } } - case 1183: + case 1204: { parser.yyVAL.expr = &ast.FuncCallExpr{ Tp: ast.FuncCallExprTypeGeneric, @@ -15461,7 +15665,7 @@ yynewstate: Args: []ast.ExprNode{}, } } - case 1184: + case 1205: { parser.yyVAL.expr = &ast.FuncCallExpr{ Tp: ast.FuncCallExprTypeGeneric, @@ -15470,7 +15674,7 @@ yynewstate: Args: []ast.ExprNode{}, } } - case 1185: + case 1206: { parser.yyVAL.expr = &ast.FuncCallExpr{ Tp: ast.FuncCallExprTypeGeneric, @@ -15478,7 +15682,7 @@ yynewstate: Args: yyS[yypt-1].item.([]ast.ExprNode), } } - case 1186: + case 1207: { parser.yyVAL.expr = &ast.FuncCallExpr{ Tp: ast.FuncCallExprTypeGeneric, @@ -15487,7 +15691,7 @@ yynewstate: Args: yyS[yypt-1].item.([]ast.ExprNode), } } - case 1187: + case 1208: { x := yyS[yypt-1].item.(*ast.InsertStmt) x.Priority = yyS[yypt-6].item.(mysql.PriorityEnum) @@ -15504,26 +15708,26 @@ yynewstate: x.PartitionNames = yyS[yypt-2].item.([]model.CIStr) parser.yyVAL.statement = x } - case 1190: + case 1211: { parser.yyVAL.item = &ast.InsertStmt{ Columns: yyS[yypt-3].item.([]*ast.ColumnName), Lists: yyS[yypt-0].item.([][]ast.ExprNode), } } - case 1191: + case 1212: { parser.yyVAL.item = &ast.InsertStmt{Columns: yyS[yypt-2].item.([]*ast.ColumnName), Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 1192: + case 1213: { parser.yyVAL.item = &ast.InsertStmt{Columns: yyS[yypt-2].item.([]*ast.ColumnName), Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 1193: + case 1214: { parser.yyVAL.item = &ast.InsertStmt{Columns: yyS[yypt-2].item.([]*ast.ColumnName), Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 1194: + case 1215: { var sel ast.ResultSetNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -15536,23 +15740,23 @@ yynewstate: } parser.yyVAL.item = &ast.InsertStmt{Columns: yyS[yypt-2].item.([]*ast.ColumnName), Select: sel} } - case 1195: + case 1216: { parser.yyVAL.item = &ast.InsertStmt{Lists: yyS[yypt-0].item.([][]ast.ExprNode)} } - case 1196: + case 1217: { parser.yyVAL.item = &ast.InsertStmt{Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 1197: + case 1218: { parser.yyVAL.item = &ast.InsertStmt{Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 1198: + case 1219: { parser.yyVAL.item = &ast.InsertStmt{Select: yyS[yypt-0].statement.(ast.ResultSetNode)} } - case 1199: + case 1220: { var sel ast.ResultSetNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -15565,66 +15769,66 @@ yynewstate: } parser.yyVAL.item = &ast.InsertStmt{Select: sel} } - case 1200: + case 1221: { parser.yyVAL.item = &ast.InsertStmt{Setlist: yyS[yypt-0].item.([]*ast.Assignment)} } - case 1203: + case 1224: { parser.yyVAL.item = [][]ast.ExprNode{yyS[yypt-0].item.([]ast.ExprNode)} } - case 1204: + case 1225: { parser.yyVAL.item = append(yyS[yypt-2].item.([][]ast.ExprNode), yyS[yypt-0].item.([]ast.ExprNode)) } - case 1205: + case 1226: { parser.yyVAL.item = yyS[yypt-1].item } - case 1206: + case 1227: { parser.yyVAL.item = []ast.ExprNode{} } - case 1208: + case 1229: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.ExprNode), yyS[yypt-0].expr) } - case 1209: + case 1230: { parser.yyVAL.item = []ast.ExprNode{yyS[yypt-0].expr} } - case 1211: + case 1232: { parser.yyVAL.expr = &ast.DefaultExpr{} } - case 1212: + case 1233: { parser.yyVAL.item = &ast.Assignment{ Column: yyS[yypt-2].item.(*ast.ColumnName), Expr: yyS[yypt-0].expr, } } - case 1213: + case 1234: { parser.yyVAL.item = []*ast.Assignment{} } - case 1214: + case 1235: { parser.yyVAL.item = []*ast.Assignment{yyS[yypt-0].item.(*ast.Assignment)} } - case 1215: + case 1236: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.Assignment), yyS[yypt-0].item.(*ast.Assignment)) } - case 1216: + case 1237: { parser.yyVAL.item = nil } - case 1217: + case 1238: { parser.yyVAL.item = yyS[yypt-0].item } - case 1218: + case 1239: { x := yyS[yypt-0].item.(*ast.InsertStmt) x.IsReplace = true @@ -15634,31 +15838,31 @@ yynewstate: x.PartitionNames = yyS[yypt-1].item.([]model.CIStr) parser.yyVAL.statement = x } - case 1219: + case 1240: { parser.yyVAL.expr = ast.NewValueExpr(false, parser.charset, parser.collation) } - case 1220: + case 1241: { parser.yyVAL.expr = ast.NewValueExpr(nil, parser.charset, parser.collation) } - case 1221: + case 1242: { parser.yyVAL.expr = ast.NewValueExpr(true, parser.charset, parser.collation) } - case 1222: + case 1243: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) } - case 1223: + case 1244: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) } - case 1224: + case 1245: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) } - case 1226: + case 1247: { // See https://dev.mysql.com/doc/refman/5.7/en/charset-literal.html co, err := charset.GetDefaultCollationLegacy(yyS[yypt-1].ident) @@ -15675,15 +15879,15 @@ yynewstate: } parser.yyVAL.expr = expr } - case 1227: + case 1248: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) } - case 1228: + case 1249: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) } - case 1229: + case 1250: { co, err := charset.GetDefaultCollationLegacy(yyS[yypt-1].ident) if err != nil { @@ -15699,7 +15903,7 @@ yynewstate: } parser.yyVAL.expr = expr } - case 1230: + case 1251: { co, err := charset.GetDefaultCollationLegacy(yyS[yypt-1].ident) if err != nil { @@ -15715,12 +15919,12 @@ yynewstate: } parser.yyVAL.expr = expr } - case 1231: + case 1252: { expr := ast.NewValueExpr(yyS[yypt-0].ident, parser.charset, parser.collation) parser.yyVAL.expr = expr } - case 1232: + case 1253: { valExpr := yyS[yypt-1].expr.(ast.ValueExpr) strLit := valExpr.GetString() @@ -15733,31 +15937,31 @@ yynewstate: } parser.yyVAL.expr = expr } - case 1233: + case 1254: { parser.yyVAL.item = []*ast.AlterOrderItem{yyS[yypt-0].item.(*ast.AlterOrderItem)} } - case 1234: + case 1255: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.AlterOrderItem), yyS[yypt-0].item.(*ast.AlterOrderItem)) } - case 1235: + case 1256: { parser.yyVAL.item = &ast.AlterOrderItem{Column: yyS[yypt-1].item.(*ast.ColumnName), Desc: yyS[yypt-0].item.(bool)} } - case 1236: + case 1257: { parser.yyVAL.item = &ast.OrderByClause{Items: yyS[yypt-0].item.([]*ast.ByItem)} } - case 1237: + case 1258: { parser.yyVAL.item = []*ast.ByItem{yyS[yypt-0].item.(*ast.ByItem)} } - case 1238: + case 1259: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.ByItem), yyS[yypt-0].item.(*ast.ByItem)) } - case 1239: + case 1260: { expr := yyS[yypt-0].expr valueExpr, ok := expr.(ast.ValueExpr) @@ -15769,7 +15973,7 @@ yynewstate: } parser.yyVAL.item = &ast.ByItem{Expr: expr, NullOrder: true} } - case 1240: + case 1261: { expr := yyS[yypt-1].expr valueExpr, ok := expr.(ast.ValueExpr) @@ -15781,55 +15985,55 @@ yynewstate: } parser.yyVAL.item = &ast.ByItem{Expr: expr, Desc: yyS[yypt-0].item.(bool)} } - case 1241: + case 1262: { parser.yyVAL.item = false } - case 1242: + case 1263: { parser.yyVAL.item = true } - case 1243: + case 1264: { parser.yyVAL.item = false // ASC by default } - case 1244: + case 1265: { parser.yyVAL.item = false } - case 1245: + case 1266: { parser.yyVAL.item = true } - case 1246: + case 1267: { parser.yyVAL.item = nil } - case 1248: + case 1269: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Or, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1249: + case 1270: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.And, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1250: + case 1271: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.LeftShift, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1251: + case 1272: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.RightShift, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1252: + case 1273: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Plus, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1253: + case 1274: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Minus, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1254: + case 1275: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr("DATE_ADD"), @@ -15840,7 +16044,7 @@ yynewstate: }, } } - case 1255: + case 1276: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr("DATE_SUB"), @@ -15851,7 +16055,7 @@ yynewstate: }, } } - case 1256: + case 1277: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr("DATE_ADD"), @@ -15862,44 +16066,44 @@ yynewstate: }, } } - case 1257: + case 1278: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Mul, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1258: + case 1279: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Div, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1259: + case 1280: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Mod, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1260: + case 1281: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.IntDiv, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1261: + case 1282: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Mod, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1262: + case 1283: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Xor, L: yyS[yypt-2].expr, R: yyS[yypt-0].expr} } - case 1264: + case 1285: { parser.yyVAL.expr = &ast.ColumnNameExpr{Name: &ast.ColumnName{ Name: model.NewCIStr(yyS[yypt-0].ident), }} } - case 1265: + case 1286: { parser.yyVAL.expr = &ast.ColumnNameExpr{Name: &ast.ColumnName{ Table: model.NewCIStr(yyS[yypt-2].ident), Name: model.NewCIStr(yyS[yypt-0].ident), }} } - case 1266: + case 1287: { parser.yyVAL.expr = &ast.ColumnNameExpr{Name: &ast.ColumnName{ Schema: model.NewCIStr(yyS[yypt-4].ident), @@ -15907,39 +16111,39 @@ yynewstate: Name: model.NewCIStr(yyS[yypt-0].ident), }} } - case 1271: + case 1292: { parser.yyVAL.expr = &ast.SetCollationExpr{Expr: yyS[yypt-2].expr, Collate: yyS[yypt-0].ident} } - case 1274: + case 1295: { parser.yyVAL.expr = ast.NewParamMarkerExpr(yyS[yypt].offset) } - case 1277: + case 1298: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Not2, V: yyS[yypt-0].expr} } - case 1278: + case 1299: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.BitNeg, V: yyS[yypt-0].expr} } - case 1279: + case 1300: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Minus, V: yyS[yypt-0].expr} } - case 1280: + case 1301: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Plus, V: yyS[yypt-0].expr} } - case 1281: + case 1302: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.Concat), Args: []ast.ExprNode{yyS[yypt-2].expr, yyS[yypt-0].expr}} } - case 1282: + case 1303: { parser.yyVAL.expr = &ast.UnaryOperationExpr{Op: opcode.Not2, V: yyS[yypt-0].expr} } - case 1284: + case 1305: { startOffset := parser.startOffset(&yyS[yypt-1]) endOffset := parser.endOffset(&yyS[yypt]) @@ -15947,23 +16151,23 @@ yynewstate: expr.SetText(parser.lexer.client, parser.src[startOffset:endOffset]) parser.yyVAL.expr = &ast.ParenthesesExpr{Expr: expr} } - case 1285: + case 1306: { values := append(yyS[yypt-3].item.([]ast.ExprNode), yyS[yypt-1].expr) parser.yyVAL.expr = &ast.RowExpr{Values: values} } - case 1286: + case 1307: { values := append(yyS[yypt-3].item.([]ast.ExprNode), yyS[yypt-1].expr) parser.yyVAL.expr = &ast.RowExpr{Values: values} } - case 1287: + case 1308: { sq := yyS[yypt-0].expr.(*ast.SubqueryExpr) sq.Exists = true parser.yyVAL.expr = &ast.ExistsSubqueryExpr{Sel: sq} } - case 1288: + case 1309: { /* * ODBC escape syntax. @@ -15987,7 +16191,7 @@ yynewstate: parser.yyVAL.expr = yyS[yypt-1].expr } } - case 1289: + case 1310: { // See https://dev.mysql.com/doc/refman/5.7/en/cast-functions.html#operator_binary tp := types.NewFieldType(mysql.TypeString) @@ -16000,7 +16204,7 @@ yynewstate: FunctionType: ast.CastBinaryOperator, } } - case 1290: + case 1311: { /* See https://dev.mysql.com/doc/refman/5.7/en/cast-functions.html#function_cast */ tp := yyS[yypt-1].item.(*types.FieldType) @@ -16020,7 +16224,7 @@ yynewstate: ExplicitCharSet: explicitCharset, } } - case 1291: + case 1312: { x := &ast.CaseExpr{WhenClauses: yyS[yypt-2].item.([]*ast.WhenClause)} if yyS[yypt-3].expr != nil { @@ -16031,7 +16235,7 @@ yynewstate: } parser.yyVAL.expr = x } - case 1292: + case 1313: { // See https://dev.mysql.com/doc/refman/5.7/en/cast-functions.html#function_convert tp := yyS[yypt-1].item.(*types.FieldType) @@ -16051,7 +16255,7 @@ yynewstate: ExplicitCharSet: explicitCharset, } } - case 1293: + case 1314: { // See https://dev.mysql.com/doc/refman/5.7/en/cast-functions.html#function_convert charset1 := ast.NewValueExpr(yyS[yypt-1].ident, "", "") @@ -16060,62 +16264,62 @@ yynewstate: Args: []ast.ExprNode{yyS[yypt-3].expr, charset1}, } } - case 1294: + case 1315: { parser.yyVAL.expr = &ast.DefaultExpr{Name: yyS[yypt-1].expr.(*ast.ColumnNameExpr).Name} } - case 1295: + case 1316: { parser.yyVAL.expr = &ast.ValuesExpr{Column: yyS[yypt-1].expr.(*ast.ColumnNameExpr)} } - case 1296: + case 1317: { expr := ast.NewValueExpr(yyS[yypt-0].ident, parser.charset, parser.collation) parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.JSONExtract), Args: []ast.ExprNode{yyS[yypt-2].expr, expr}} } - case 1297: + case 1318: { expr := ast.NewValueExpr(yyS[yypt-0].ident, parser.charset, parser.collation) extract := &ast.FuncCallExpr{FnName: model.NewCIStr(ast.JSONExtract), Args: []ast.ExprNode{yyS[yypt-2].expr, expr}} parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.JSONUnquote), Args: []ast.ExprNode{extract}} } - case 1300: + case 1321: { parser.yyVAL.item = false } - case 1301: + case 1322: { parser.yyVAL.item = true } - case 1302: + case 1323: { parser.yyVAL.item = false } - case 1304: + case 1325: { parser.yyVAL.item = true } - case 1307: + case 1328: { parser.yyVAL.item = true } - case 1350: + case 1371: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-3].ident), Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1351: + case 1372: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-3].ident), Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1352: + case 1373: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-1].ident)} } - case 1353: + case 1374: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-2].ident)} } - case 1354: + case 1375: { args := []ast.ExprNode{} if yyS[yypt-0].item != nil { @@ -16123,7 +16327,7 @@ yynewstate: } parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-1].ident), Args: args} } - case 1355: + case 1376: { nilVal := ast.NewValueExpr(nil, parser.charset, parser.collation) args := yyS[yypt-1].item.([]ast.ExprNode) @@ -16132,7 +16336,7 @@ yynewstate: Args: append(args, nilVal), } } - case 1356: + case 1377: { charset1 := ast.NewValueExpr(yyS[yypt-1].ident, "", "") args := yyS[yypt-3].item.([]ast.ExprNode) @@ -16141,42 +16345,42 @@ yynewstate: Args: append(args, charset1), } } - case 1357: + case 1378: { expr := ast.NewValueExpr(yyS[yypt-0].ident, "", "") parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.DateLiteral), Args: []ast.ExprNode{expr}} } - case 1358: + case 1379: { expr := ast.NewValueExpr(yyS[yypt-0].ident, "", "") parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.TimeLiteral), Args: []ast.ExprNode{expr}} } - case 1359: + case 1380: { expr := ast.NewValueExpr(yyS[yypt-0].ident, "", "") parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.TimestampLiteral), Args: []ast.ExprNode{expr}} } - case 1360: + case 1381: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.InsertFunc), Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1361: + case 1382: { parser.yyVAL.expr = &ast.BinaryOperationExpr{Op: opcode.Mod, L: yyS[yypt-3].expr, R: yyS[yypt-1].expr} } - case 1362: + case 1383: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(ast.PasswordFunc), Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1363: + case 1384: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-3].ident), Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1364: + case 1385: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-3].ident), Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1365: + case 1386: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-5].ident), @@ -16187,7 +16391,7 @@ yynewstate: }, } } - case 1366: + case 1387: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), @@ -16198,7 +16402,7 @@ yynewstate: }, } } - case 1367: + case 1388: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), @@ -16209,7 +16413,7 @@ yynewstate: }, } } - case 1368: + case 1389: { timeUnit := &ast.TimeUnitExpr{Unit: yyS[yypt-3].item.(ast.TimeUnitType)} parser.yyVAL.expr = &ast.FuncCallExpr{ @@ -16217,7 +16421,7 @@ yynewstate: Args: []ast.ExprNode{timeUnit, yyS[yypt-1].expr}, } } - case 1369: + case 1390: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-5].ident), @@ -16227,67 +16431,67 @@ yynewstate: }, } } - case 1370: + case 1391: { parser.yyVAL.expr = &ast.FuncCallExpr{FnName: model.NewCIStr(yyS[yypt-5].ident), Args: []ast.ExprNode{yyS[yypt-3].expr, yyS[yypt-1].expr}} } - case 1371: + case 1392: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-5].ident), Args: []ast.ExprNode{yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1372: + case 1393: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-5].ident), Args: []ast.ExprNode{yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1373: + case 1394: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1374: + case 1395: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1375: + case 1396: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), Args: []ast.ExprNode{&ast.TimeUnitExpr{Unit: yyS[yypt-5].item.(ast.TimeUnitType)}, yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1376: + case 1397: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), Args: []ast.ExprNode{&ast.TimeUnitExpr{Unit: yyS[yypt-5].item.(ast.TimeUnitType)}, yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1377: + case 1398: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-3].ident), Args: []ast.ExprNode{yyS[yypt-1].expr}, } } - case 1378: + case 1399: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-5].ident), Args: []ast.ExprNode{yyS[yypt-1].expr, yyS[yypt-3].expr}, } } - case 1379: + case 1400: { spaceVal := ast.NewValueExpr(" ", parser.charset, parser.collation) direction := &ast.TrimDirectionExpr{Direction: yyS[yypt-3].item.(ast.TrimDirectionType)} @@ -16296,7 +16500,7 @@ yynewstate: Args: []ast.ExprNode{yyS[yypt-1].expr, spaceVal, direction}, } } - case 1380: + case 1401: { direction := &ast.TrimDirectionExpr{Direction: yyS[yypt-4].item.(ast.TrimDirectionType)} parser.yyVAL.expr = &ast.FuncCallExpr{ @@ -16304,63 +16508,63 @@ yynewstate: Args: []ast.ExprNode{yyS[yypt-1].expr, yyS[yypt-3].expr, direction}, } } - case 1381: + case 1402: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-3].ident), Args: []ast.ExprNode{yyS[yypt-1].expr}, } } - case 1382: + case 1403: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-6].ident), Args: []ast.ExprNode{yyS[yypt-4].expr, ast.NewValueExpr("CHAR", parser.charset, parser.collation), ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation)}, } } - case 1383: + case 1404: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-6].ident), Args: []ast.ExprNode{yyS[yypt-4].expr, ast.NewValueExpr("BINARY", parser.charset, parser.collation), ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation)}, } } - case 1385: + case 1406: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-7].ident), Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-3].expr, yyS[yypt-1].expr}, } } - case 1386: + case 1407: { parser.yyVAL.item = ast.GetFormatSelectorDate } - case 1387: + case 1408: { parser.yyVAL.item = ast.GetFormatSelectorDatetime } - case 1388: + case 1409: { parser.yyVAL.item = ast.GetFormatSelectorTime } - case 1389: + case 1410: { parser.yyVAL.item = ast.GetFormatSelectorDatetime } - case 1394: + case 1415: { parser.yyVAL.item = ast.TrimBoth } - case 1395: + case 1416: { parser.yyVAL.item = ast.TrimLeading } - case 1396: + case 1417: { parser.yyVAL.item = ast.TrimTrailing } - case 1397: + case 1418: { objNameExpr := &ast.TableNameExpr{ Name: yyS[yypt-1].item.(*ast.TableName), @@ -16370,7 +16574,7 @@ yynewstate: Args: []ast.ExprNode{objNameExpr}, } } - case 1398: + case 1419: { objNameExpr := &ast.TableNameExpr{ Name: yyS[yypt-3].item.(*ast.TableName), @@ -16381,7 +16585,7 @@ yynewstate: Args: []ast.ExprNode{objNameExpr, valueExpr}, } } - case 1400: + case 1421: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16389,15 +16593,15 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1401: + case 1422: { parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-3].ident, Args: yyS[yypt-1].item.([]ast.ExprNode), Distinct: false} } - case 1402: + case 1423: { parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-3].ident, Args: yyS[yypt-1].item.([]ast.ExprNode)} } - case 1403: + case 1424: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16405,7 +16609,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1404: + case 1425: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16413,7 +16617,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1405: + case 1426: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16421,7 +16625,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1406: + case 1427: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16429,7 +16633,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1407: + case 1428: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16437,7 +16641,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1408: + case 1429: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16445,11 +16649,11 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1409: + case 1430: { parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: yyS[yypt-1].item.([]ast.ExprNode), Distinct: true} } - case 1410: + case 1431: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16457,7 +16661,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1411: + case 1432: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16465,7 +16669,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1412: + case 1433: { args := []ast.ExprNode{ast.NewValueExpr(1, parser.charset, parser.collation)} if yyS[yypt-0].item != nil { @@ -16474,7 +16678,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: args} } } - case 1413: + case 1434: { args := yyS[yypt-4].item.([]ast.ExprNode) args = append(args, yyS[yypt-2].item.(ast.ExprNode)) @@ -16488,7 +16692,7 @@ yynewstate: parser.yyVAL.expr = agg } } - case 1414: + case 1435: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16496,7 +16700,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1415: + case 1436: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16504,7 +16708,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1416: + case 1437: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16512,7 +16716,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1417: + case 1438: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: ast.AggFuncStddevPop, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16520,7 +16724,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: ast.AggFuncStddevPop, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1418: + case 1439: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16528,7 +16732,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1419: + case 1440: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: ast.AggFuncVarPop, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool), Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16536,11 +16740,11 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: ast.AggFuncVarPop, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } } - case 1420: + case 1441: { parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Distinct: yyS[yypt-3].item.(bool)} } - case 1421: + case 1442: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16548,7 +16752,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1422: + case 1443: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16556,7 +16760,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}} } } - case 1423: + case 1444: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-6].ident, Args: []ast.ExprNode{yyS[yypt-4].expr, yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16564,7 +16768,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-6].ident, Args: []ast.ExprNode{yyS[yypt-4].expr, yyS[yypt-2].expr}} } } - case 1424: + case 1445: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-7].ident, Args: []ast.ExprNode{yyS[yypt-4].expr, yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16572,7 +16776,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-7].ident, Args: []ast.ExprNode{yyS[yypt-4].expr, yyS[yypt-2].expr}} } } - case 1425: + case 1446: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-7].ident, Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16580,7 +16784,7 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-7].ident, Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-2].expr}} } } - case 1426: + case 1447: { if yyS[yypt-0].item != nil { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-8].ident, Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-2].expr}, Spec: *(yyS[yypt-0].item.(*ast.WindowSpec))} @@ -16588,22 +16792,22 @@ yynewstate: parser.yyVAL.expr = &ast.AggregateFuncExpr{F: yyS[yypt-8].ident, Args: []ast.ExprNode{yyS[yypt-5].expr, yyS[yypt-2].expr}} } } - case 1427: + case 1448: { parser.yyVAL.item = ast.NewValueExpr(",", "", "") } - case 1428: + case 1449: { parser.yyVAL.item = ast.NewValueExpr(yyS[yypt-0].ident, "", "") } - case 1429: + case 1450: { parser.yyVAL.expr = &ast.FuncCallExpr{ FnName: model.NewCIStr(yyS[yypt-3].ident), Args: yyS[yypt-1].item.([]ast.ExprNode), } } - case 1430: + case 1451: { var tp ast.FuncCallExprType if isInTokenMap(yyS[yypt-3].ident) { @@ -16618,159 +16822,159 @@ yynewstate: Args: yyS[yypt-1].item.([]ast.ExprNode), } } - case 1431: + case 1452: { parser.yyVAL.item = nil } - case 1432: + case 1453: { parser.yyVAL.item = nil } - case 1433: + case 1454: { expr := ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation) parser.yyVAL.item = expr } - case 1435: + case 1456: { parser.yyVAL.item = ast.TimeUnitSecondMicrosecond } - case 1436: + case 1457: { parser.yyVAL.item = ast.TimeUnitMinuteMicrosecond } - case 1437: + case 1458: { parser.yyVAL.item = ast.TimeUnitMinuteSecond } - case 1438: + case 1459: { parser.yyVAL.item = ast.TimeUnitHourMicrosecond } - case 1439: + case 1460: { parser.yyVAL.item = ast.TimeUnitHourSecond } - case 1440: + case 1461: { parser.yyVAL.item = ast.TimeUnitHourMinute } - case 1441: + case 1462: { parser.yyVAL.item = ast.TimeUnitDayMicrosecond } - case 1442: + case 1463: { parser.yyVAL.item = ast.TimeUnitDaySecond } - case 1443: + case 1464: { parser.yyVAL.item = ast.TimeUnitDayMinute } - case 1444: + case 1465: { parser.yyVAL.item = ast.TimeUnitDayHour } - case 1445: + case 1466: { parser.yyVAL.item = ast.TimeUnitYearMonth } - case 1446: + case 1467: { parser.yyVAL.item = ast.TimeUnitMicrosecond } - case 1447: + case 1468: { parser.yyVAL.item = ast.TimeUnitSecond } - case 1448: + case 1469: { parser.yyVAL.item = ast.TimeUnitMinute } - case 1449: + case 1470: { parser.yyVAL.item = ast.TimeUnitHour } - case 1450: + case 1471: { parser.yyVAL.item = ast.TimeUnitDay } - case 1451: + case 1472: { parser.yyVAL.item = ast.TimeUnitWeek } - case 1452: + case 1473: { parser.yyVAL.item = ast.TimeUnitMonth } - case 1453: + case 1474: { parser.yyVAL.item = ast.TimeUnitQuarter } - case 1454: + case 1475: { parser.yyVAL.item = ast.TimeUnitYear } - case 1455: + case 1476: { parser.yyVAL.item = ast.TimeUnitSecond } - case 1456: + case 1477: { parser.yyVAL.item = ast.TimeUnitMinute } - case 1457: + case 1478: { parser.yyVAL.item = ast.TimeUnitHour } - case 1458: + case 1479: { parser.yyVAL.item = ast.TimeUnitDay } - case 1459: + case 1480: { parser.yyVAL.item = ast.TimeUnitWeek } - case 1460: + case 1481: { parser.yyVAL.item = ast.TimeUnitMonth } - case 1461: + case 1482: { parser.yyVAL.item = ast.TimeUnitQuarter } - case 1462: + case 1483: { parser.yyVAL.item = ast.TimeUnitYear } - case 1463: + case 1484: { parser.yyVAL.expr = nil } - case 1465: + case 1486: { parser.yyVAL.item = []*ast.WhenClause{yyS[yypt-0].item.(*ast.WhenClause)} } - case 1466: + case 1487: { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.WhenClause), yyS[yypt-0].item.(*ast.WhenClause)) } - case 1467: + case 1488: { parser.yyVAL.item = &ast.WhenClause{ Expr: yyS[yypt-2].expr, Result: yyS[yypt-0].expr, } } - case 1468: + case 1489: { parser.yyVAL.item = nil } - case 1469: + case 1490: { parser.yyVAL.item = yyS[yypt-0].expr } - case 1470: + case 1491: { tp := types.NewFieldType(mysql.TypeVarString) tp.SetFlen(yyS[yypt-0].item.(int)) // TODO: Flen should be the flen of expression @@ -16782,7 +16986,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1471: + case 1492: { tp := types.NewFieldType(mysql.TypeVarString) tp.SetFlen(yyS[yypt-1].item.(int)) // TODO: Flen should be the flen of expression @@ -16805,7 +17009,7 @@ yynewstate: } parser.yyVAL.item = tp } - case 1472: + case 1493: { tp := types.NewFieldType(mysql.TypeDate) tp.SetCharset(charset.CharsetBin) @@ -16813,7 +17017,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1473: + case 1494: { tp := types.NewFieldType(mysql.TypeYear) tp.SetCharset(charset.CharsetBin) @@ -16821,7 +17025,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1474: + case 1495: { tp := types.NewFieldType(mysql.TypeDatetime) flen, _ := mysql.GetDefaultFieldLengthAndDecimalForCast(mysql.TypeDatetime) @@ -16835,7 +17039,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1475: + case 1496: { fopt := yyS[yypt-0].item.(*ast.FloatOpt) tp := types.NewFieldType(mysql.TypeNewDecimal) @@ -16846,7 +17050,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1476: + case 1497: { tp := types.NewFieldType(mysql.TypeDuration) flen, _ := mysql.GetDefaultFieldLengthAndDecimalForCast(mysql.TypeDuration) @@ -16860,7 +17064,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1477: + case 1498: { tp := types.NewFieldType(mysql.TypeLonglong) tp.SetCharset(charset.CharsetBin) @@ -16868,7 +17072,7 @@ yynewstate: tp.AddFlag(mysql.BinaryFlag) parser.yyVAL.item = tp } - case 1478: + case 1499: { tp := types.NewFieldType(mysql.TypeLonglong) tp.AddFlag(mysql.UnsignedFlag | mysql.BinaryFlag) @@ -16876,7 +17080,7 @@ yynewstate: tp.SetCollate(charset.CollationBin) parser.yyVAL.item = tp } - case 1479: + case 1500: { tp := types.NewFieldType(mysql.TypeJSON) tp.AddFlag(mysql.BinaryFlag | mysql.ParseToJSONFlag) @@ -16884,7 +17088,7 @@ yynewstate: tp.SetCollate(mysql.DefaultCollationName) parser.yyVAL.item = tp } - case 1480: + case 1501: { tp := types.NewFieldType(mysql.TypeDouble) flen, decimal := mysql.GetDefaultFieldLengthAndDecimalForCast(mysql.TypeDouble) @@ -16895,7 +17099,7 @@ yynewstate: tp.SetCollate(charset.CollationBin) parser.yyVAL.item = tp } - case 1481: + case 1502: { tp := types.NewFieldType(mysql.TypeFloat) fopt := yyS[yypt-0].item.(*ast.FloatOpt) @@ -16912,7 +17116,7 @@ yynewstate: tp.SetCollate(charset.CollationBin) parser.yyVAL.item = tp } - case 1482: + case 1503: { var tp *types.FieldType if parser.lexer.GetSQLMode().HasRealAsFloatMode() { @@ -16928,65 +17132,65 @@ yynewstate: tp.SetCollate(charset.CollationBin) parser.yyVAL.item = tp } - case 1483: + case 1504: { parser.yyVAL.item = mysql.LowPriority } - case 1484: + case 1505: { parser.yyVAL.item = mysql.HighPriority } - case 1485: + case 1506: { parser.yyVAL.item = mysql.DelayedPriority } - case 1486: + case 1507: { parser.yyVAL.item = mysql.NoPriority } - case 1488: + case 1509: { parser.yyVAL.item = &ast.TableName{Name: model.NewCIStr(yyS[yypt-0].ident)} } - case 1489: + case 1510: { parser.yyVAL.item = &ast.TableName{Schema: model.NewCIStr(yyS[yypt-2].ident), Name: model.NewCIStr(yyS[yypt-0].ident)} } - case 1490: + case 1511: { tbl := []*ast.TableName{yyS[yypt-0].item.(*ast.TableName)} parser.yyVAL.item = tbl } - case 1491: + case 1512: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.TableName), yyS[yypt-0].item.(*ast.TableName)) } - case 1492: + case 1513: { parser.yyVAL.item = &ast.TableName{Name: model.NewCIStr(yyS[yypt-1].ident)} } - case 1493: + case 1514: { parser.yyVAL.item = &ast.TableName{Schema: model.NewCIStr(yyS[yypt-3].ident), Name: model.NewCIStr(yyS[yypt-1].ident)} } - case 1494: + case 1515: { tbl := []*ast.TableName{yyS[yypt-0].item.(*ast.TableName)} parser.yyVAL.item = tbl } - case 1495: + case 1516: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.TableName), yyS[yypt-0].item.(*ast.TableName)) } - case 1498: + case 1519: { parser.yyVAL.item = false } - case 1499: + case 1520: { parser.yyVAL.item = true } - case 1500: + case 1521: { var sqlText string var sqlVar *ast.VariableExpr @@ -17002,94 +17206,94 @@ yynewstate: SQLVar: sqlVar, } } - case 1501: + case 1522: { parser.yyVAL.item = yyS[yypt-0].ident } - case 1502: + case 1523: { parser.yyVAL.item = yyS[yypt-0].expr } - case 1503: + case 1524: { parser.yyVAL.statement = &ast.ExecuteStmt{Name: yyS[yypt-0].ident} } - case 1504: + case 1525: { parser.yyVAL.statement = &ast.ExecuteStmt{ Name: yyS[yypt-2].ident, UsingVars: yyS[yypt-0].item.([]ast.ExprNode), } } - case 1505: + case 1526: { parser.yyVAL.item = []ast.ExprNode{yyS[yypt-0].expr} } - case 1506: + case 1527: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.ExprNode), yyS[yypt-0].expr) } - case 1507: + case 1528: { parser.yyVAL.statement = &ast.DeallocateStmt{Name: yyS[yypt-0].ident} } - case 1510: + case 1531: { parser.yyVAL.statement = &ast.RollbackStmt{} } - case 1511: + case 1532: { parser.yyVAL.statement = &ast.RollbackStmt{CompletionType: yyS[yypt-0].item.(ast.CompletionType)} } - case 1512: + case 1533: { parser.yyVAL.statement = &ast.RollbackStmt{SavepointName: yyS[yypt-0].ident} } - case 1513: + case 1534: { parser.yyVAL.statement = &ast.RollbackStmt{SavepointName: yyS[yypt-0].ident} } - case 1514: + case 1535: { parser.yyVAL.item = ast.CompletionTypeChain } - case 1515: + case 1536: { parser.yyVAL.item = ast.CompletionTypeRelease } - case 1516: + case 1537: { parser.yyVAL.item = ast.CompletionTypeDefault } - case 1517: + case 1538: { parser.yyVAL.item = ast.CompletionTypeChain } - case 1518: + case 1539: { parser.yyVAL.item = ast.CompletionTypeDefault } - case 1519: + case 1540: { parser.yyVAL.item = ast.CompletionTypeRelease } - case 1520: + case 1541: { parser.yyVAL.item = ast.CompletionTypeDefault } - case 1521: + case 1542: { parser.yyVAL.statement = &ast.ShutdownStmt{} } - case 1522: + case 1543: { parser.yyVAL.statement = &ast.RestartStmt{} } - case 1523: + case 1544: { parser.yyVAL.statement = &ast.HelpStmt{Topic: yyS[yypt-0].ident} } - case 1524: + case 1545: { st := &ast.SelectStmt{ SelectStmtOpts: yyS[yypt-2].item.(*ast.SelectStmtOpts), @@ -17105,7 +17309,7 @@ yynewstate: } parser.yyVAL.item = st } - case 1525: + case 1546: { st := yyS[yypt-2].item.(*ast.SelectStmt) lastField := st.Fields.Fields[len(st.Fields.Fields)-1] @@ -17117,7 +17321,7 @@ yynewstate: st.Where = yyS[yypt-0].item.(ast.ExprNode) } } - case 1526: + case 1547: { st := yyS[yypt-6].item.(*ast.SelectStmt) st.From = yyS[yypt-4].item.(*ast.TableRefsClause) @@ -17140,11 +17344,11 @@ yynewstate: } parser.yyVAL.item = st } - case 1527: + case 1548: { parser.yyVAL.item = nil } - case 1528: + case 1549: { var repSeed ast.ExprNode if yyS[yypt-0].expr != nil { @@ -17157,7 +17361,7 @@ yynewstate: RepeatableSeed: repSeed, } } - case 1529: + case 1550: { var repSeed ast.ExprNode if yyS[yypt-0].expr != nil { @@ -17168,43 +17372,43 @@ yynewstate: RepeatableSeed: repSeed, } } - case 1530: + case 1551: { parser.yyVAL.item = ast.SampleMethodTypeNone } - case 1531: + case 1552: { parser.yyVAL.item = ast.SampleMethodTypeSystem } - case 1532: + case 1553: { parser.yyVAL.item = ast.SampleMethodTypeBernoulli } - case 1533: + case 1554: { parser.yyVAL.item = ast.SampleMethodTypeTiDBRegion } - case 1534: + case 1555: { parser.yyVAL.item = ast.SampleClauseUnitTypeDefault } - case 1535: + case 1556: { parser.yyVAL.item = ast.SampleClauseUnitTypeRow } - case 1536: + case 1557: { parser.yyVAL.item = ast.SampleClauseUnitTypePercent } - case 1537: + case 1558: { parser.yyVAL.expr = nil } - case 1538: + case 1559: { parser.yyVAL.expr = yyS[yypt-1].expr } - case 1539: + case 1560: { st := yyS[yypt-6].item.(*ast.SelectStmt) if yyS[yypt-1].item != nil { @@ -17251,7 +17455,7 @@ yynewstate: } parser.yyVAL.statement = st } - case 1540: + case 1561: { st := yyS[yypt-5].item.(*ast.SelectStmt) if yyS[yypt-4].item != nil { @@ -17271,7 +17475,7 @@ yynewstate: } parser.yyVAL.statement = st } - case 1541: + case 1562: { st := yyS[yypt-4].item.(*ast.SelectStmt) if yyS[yypt-1].item != nil { @@ -17288,7 +17492,7 @@ yynewstate: } parser.yyVAL.statement = st } - case 1542: + case 1563: { st := &ast.SelectStmt{ Kind: ast.SelectStmtKindTable, @@ -17310,7 +17514,7 @@ yynewstate: } parser.yyVAL.statement = st } - case 1543: + case 1564: { st := &ast.SelectStmt{ Kind: ast.SelectStmtKindValues, @@ -17331,13 +17535,13 @@ yynewstate: } parser.yyVAL.statement = st } - case 1544: + case 1565: { sel := yyS[yypt-0].statement.(*ast.SelectStmt) sel.With = yyS[yypt-1].item.(*ast.WithClause) parser.yyVAL.statement = sel } - case 1545: + case 1566: { var sel ast.StmtNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -17353,11 +17557,11 @@ yynewstate: } parser.yyVAL.statement = sel } - case 1546: + case 1567: { parser.yyVAL.item = yyS[yypt-0].item } - case 1547: + case 1568: { ws := yyS[yypt-0].item.(*ast.WithClause) ws.IsRecursive = true @@ -17366,20 +17570,20 @@ yynewstate: } parser.yyVAL.item = ws } - case 1548: + case 1569: { ws := yyS[yypt-2].item.(*ast.WithClause) ws.CTEs = append(ws.CTEs, yyS[yypt-0].item.(*ast.CommonTableExpression)) parser.yyVAL.item = ws } - case 1549: + case 1570: { ws := &ast.WithClause{} ws.CTEs = make([]*ast.CommonTableExpression, 0, 4) ws.CTEs = append(ws.CTEs, yyS[yypt-0].item.(*ast.CommonTableExpression)) parser.yyVAL.item = ws } - case 1550: + case 1571: { cte := &ast.CommonTableExpression{} cte.Name = model.NewCIStr(yyS[yypt-3].ident) @@ -17387,37 +17591,37 @@ yynewstate: cte.Query = yyS[yypt-0].expr.(*ast.SubqueryExpr) parser.yyVAL.item = cte } - case 1552: + case 1573: { parser.yyVAL.item = nil } - case 1553: + case 1574: { parser.yyVAL.item = yyS[yypt-0].item.([]ast.WindowSpec) } - case 1554: + case 1575: { parser.yyVAL.item = []ast.WindowSpec{yyS[yypt-0].item.(ast.WindowSpec)} } - case 1555: + case 1576: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.WindowSpec), yyS[yypt-0].item.(ast.WindowSpec)) } - case 1556: + case 1577: { var spec = yyS[yypt-0].item.(ast.WindowSpec) spec.Name = yyS[yypt-2].item.(model.CIStr) parser.yyVAL.item = spec } - case 1557: + case 1578: { parser.yyVAL.item = model.NewCIStr(yyS[yypt-0].ident) } - case 1558: + case 1579: { parser.yyVAL.item = yyS[yypt-1].item.(ast.WindowSpec) } - case 1559: + case 1580: { spec := ast.WindowSpec{Ref: yyS[yypt-3].item.(model.CIStr)} if yyS[yypt-2].item != nil { @@ -17431,138 +17635,138 @@ yynewstate: } parser.yyVAL.item = spec } - case 1560: + case 1581: { parser.yyVAL.item = model.CIStr{} } - case 1562: + case 1583: { parser.yyVAL.item = nil } - case 1563: + case 1584: { parser.yyVAL.item = &ast.PartitionByClause{Items: yyS[yypt-0].item.([]*ast.ByItem)} } - case 1564: + case 1585: { parser.yyVAL.item = nil } - case 1565: + case 1586: { parser.yyVAL.item = &ast.OrderByClause{Items: yyS[yypt-0].item.([]*ast.ByItem)} } - case 1566: + case 1587: { parser.yyVAL.item = nil } - case 1567: + case 1588: { parser.yyVAL.item = &ast.FrameClause{ Type: yyS[yypt-1].item.(ast.FrameType), Extent: yyS[yypt-0].item.(ast.FrameExtent), } } - case 1568: + case 1589: { parser.yyVAL.item = ast.FrameType(ast.Rows) } - case 1569: + case 1590: { parser.yyVAL.item = ast.FrameType(ast.Ranges) } - case 1570: + case 1591: { parser.yyVAL.item = ast.FrameType(ast.Groups) } - case 1571: + case 1592: { parser.yyVAL.item = ast.FrameExtent{ Start: yyS[yypt-0].item.(ast.FrameBound), End: ast.FrameBound{Type: ast.CurrentRow}, } } - case 1573: + case 1594: { parser.yyVAL.item = ast.FrameBound{Type: ast.Preceding, UnBounded: true} } - case 1574: + case 1595: { parser.yyVAL.item = ast.FrameBound{Type: ast.Preceding, Expr: ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation)} } - case 1575: + case 1596: { parser.yyVAL.item = ast.FrameBound{Type: ast.Preceding, Expr: ast.NewParamMarkerExpr(yyS[yypt].offset)} } - case 1576: + case 1597: { parser.yyVAL.item = ast.FrameBound{Type: ast.Preceding, Expr: yyS[yypt-2].expr, Unit: yyS[yypt-1].item.(ast.TimeUnitType)} } - case 1577: + case 1598: { parser.yyVAL.item = ast.FrameBound{Type: ast.CurrentRow} } - case 1578: + case 1599: { parser.yyVAL.item = ast.FrameExtent{Start: yyS[yypt-2].item.(ast.FrameBound), End: yyS[yypt-0].item.(ast.FrameBound)} } - case 1580: + case 1601: { parser.yyVAL.item = ast.FrameBound{Type: ast.Following, UnBounded: true} } - case 1581: + case 1602: { parser.yyVAL.item = ast.FrameBound{Type: ast.Following, Expr: ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation)} } - case 1582: + case 1603: { parser.yyVAL.item = ast.FrameBound{Type: ast.Following, Expr: ast.NewParamMarkerExpr(yyS[yypt].offset)} } - case 1583: + case 1604: { parser.yyVAL.item = ast.FrameBound{Type: ast.Following, Expr: yyS[yypt-2].expr, Unit: yyS[yypt-1].item.(ast.TimeUnitType)} } - case 1584: + case 1605: { parser.yyVAL.item = nil } - case 1585: + case 1606: { spec := yyS[yypt-0].item.(ast.WindowSpec) parser.yyVAL.item = &spec } - case 1586: + case 1607: { parser.yyVAL.item = yyS[yypt-0].item.(ast.WindowSpec) } - case 1587: + case 1608: { parser.yyVAL.item = ast.WindowSpec{Name: yyS[yypt-0].item.(model.CIStr), OnlyAlias: true} } - case 1589: + case 1610: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-3].ident, Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1590: + case 1611: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-3].ident, Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1591: + case 1612: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-3].ident, Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1592: + case 1613: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-3].ident, Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1593: + case 1614: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-3].ident, Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1594: + case 1615: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-4].ident, Args: []ast.ExprNode{yyS[yypt-2].expr}, Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1595: + case 1616: { args := []ast.ExprNode{yyS[yypt-4].expr} if yyS[yypt-3].item != nil { @@ -17570,7 +17774,7 @@ yynewstate: } parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-6].ident, Args: args, IgnoreNull: yyS[yypt-1].item.(bool), Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1596: + case 1617: { args := []ast.ExprNode{yyS[yypt-4].expr} if yyS[yypt-3].item != nil { @@ -17578,23 +17782,23 @@ yynewstate: } parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-6].ident, Args: args, IgnoreNull: yyS[yypt-1].item.(bool), Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1597: + case 1618: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-3].expr}, IgnoreNull: yyS[yypt-1].item.(bool), Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1598: + case 1619: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-5].ident, Args: []ast.ExprNode{yyS[yypt-3].expr}, IgnoreNull: yyS[yypt-1].item.(bool), Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1599: + case 1620: { parser.yyVAL.expr = &ast.WindowFuncExpr{F: yyS[yypt-8].ident, Args: []ast.ExprNode{yyS[yypt-6].expr, yyS[yypt-4].expr}, FromLast: yyS[yypt-2].item.(bool), IgnoreNull: yyS[yypt-1].item.(bool), Spec: yyS[yypt-0].item.(ast.WindowSpec)} } - case 1600: + case 1621: { parser.yyVAL.item = nil } - case 1601: + case 1622: { args := []ast.ExprNode{ast.NewValueExpr(yyS[yypt-1].item, parser.charset, parser.collation)} if yyS[yypt-0].item != nil { @@ -17602,7 +17806,7 @@ yynewstate: } parser.yyVAL.item = args } - case 1602: + case 1623: { args := []ast.ExprNode{ast.NewParamMarkerExpr(yyS[yypt-1].offset)} if yyS[yypt-0].item != nil { @@ -17610,43 +17814,43 @@ yynewstate: } parser.yyVAL.item = args } - case 1603: + case 1624: { parser.yyVAL.item = nil } - case 1604: + case 1625: { parser.yyVAL.item = yyS[yypt-0].expr } - case 1605: + case 1626: { parser.yyVAL.item = false } - case 1606: + case 1627: { parser.yyVAL.item = false } - case 1607: + case 1628: { parser.yyVAL.item = true } - case 1608: + case 1629: { parser.yyVAL.item = false } - case 1609: + case 1630: { parser.yyVAL.item = false } - case 1610: + case 1631: { parser.yyVAL.item = true } - case 1611: + case 1632: { parser.yyVAL.item = &ast.TableRefsClause{TableRefs: yyS[yypt-0].item.(*ast.Join)} } - case 1612: + case 1633: { if j, ok := yyS[yypt-0].item.(*ast.Join); ok { // if $1 is Join, use it directly @@ -17655,12 +17859,12 @@ yynewstate: parser.yyVAL.item = &ast.Join{Left: yyS[yypt-0].item.(ast.ResultSetNode), Right: nil} } } - case 1613: + case 1634: { /* from a, b is default cross join */ parser.yyVAL.item = &ast.Join{Left: yyS[yypt-2].item.(ast.ResultSetNode), Right: yyS[yypt-0].item.(ast.ResultSetNode), Tp: ast.CrossJoin} } - case 1615: + case 1636: { /* * ODBC escape syntax for outer join is { OJ join_table } @@ -17668,7 +17872,7 @@ yynewstate: */ parser.yyVAL.item = yyS[yypt-1].item } - case 1618: + case 1639: { tn := yyS[yypt-5].item.(*ast.TableName) tn.PartitionNames = yyS[yypt-4].item.([]model.CIStr) @@ -17681,66 +17885,66 @@ yynewstate: } parser.yyVAL.item = &ast.TableSource{Source: tn, AsName: yyS[yypt-3].item.(model.CIStr)} } - case 1619: + case 1640: { resultNode := yyS[yypt-1].expr.(*ast.SubqueryExpr).Query parser.yyVAL.item = &ast.TableSource{Source: resultNode, AsName: yyS[yypt-0].item.(model.CIStr)} } - case 1620: + case 1641: { j := yyS[yypt-1].item.(*ast.Join) j.ExplicitParens = true parser.yyVAL.item = yyS[yypt-1].item } - case 1621: + case 1642: { parser.yyVAL.item = []model.CIStr{} } - case 1622: + case 1643: { parser.yyVAL.item = yyS[yypt-1].item } - case 1623: + case 1644: { parser.yyVAL.item = model.CIStr{} } - case 1625: + case 1646: { parser.yyVAL.item = model.NewCIStr(yyS[yypt-0].ident) } - case 1626: + case 1647: { parser.yyVAL.item = model.NewCIStr(yyS[yypt-0].ident) } - case 1627: + case 1648: { parser.yyVAL.item = ast.HintUse } - case 1628: + case 1649: { parser.yyVAL.item = ast.HintIgnore } - case 1629: + case 1650: { parser.yyVAL.item = ast.HintForce } - case 1630: + case 1651: { parser.yyVAL.item = ast.HintForScan } - case 1631: + case 1652: { parser.yyVAL.item = ast.HintForJoin } - case 1632: + case 1653: { parser.yyVAL.item = ast.HintForOrderBy } - case 1633: + case 1654: { parser.yyVAL.item = ast.HintForGroupBy } - case 1634: + case 1655: { parser.yyVAL.item = &ast.IndexHint{ IndexNames: yyS[yypt-1].item.([]model.CIStr), @@ -17748,134 +17952,134 @@ yynewstate: HintScope: yyS[yypt-3].item.(ast.IndexHintScope), } } - case 1635: + case 1656: { var nameList []model.CIStr parser.yyVAL.item = nameList } - case 1636: + case 1657: { parser.yyVAL.item = []model.CIStr{model.NewCIStr(yyS[yypt-0].ident)} } - case 1637: + case 1658: { parser.yyVAL.item = append(yyS[yypt-2].item.([]model.CIStr), model.NewCIStr(yyS[yypt-0].ident)) } - case 1638: + case 1659: { parser.yyVAL.item = []model.CIStr{model.NewCIStr(yyS[yypt-0].ident)} } - case 1639: + case 1660: { parser.yyVAL.item = append(yyS[yypt-2].item.([]model.CIStr), model.NewCIStr(yyS[yypt-0].ident)) } - case 1640: + case 1661: { parser.yyVAL.item = []*ast.IndexHint{yyS[yypt-0].item.(*ast.IndexHint)} } - case 1641: + case 1662: { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.IndexHint), yyS[yypt-0].item.(*ast.IndexHint)) } - case 1642: + case 1663: { parser.yyVAL.item = []*ast.IndexHint{} } - case 1644: + case 1665: { parser.yyVAL.item = ast.NewCrossJoin(yyS[yypt-2].item.(ast.ResultSetNode), yyS[yypt-0].item.(ast.ResultSetNode)) } - case 1645: + case 1666: { on := &ast.OnCondition{Expr: yyS[yypt-0].expr} parser.yyVAL.item = &ast.Join{Left: yyS[yypt-4].item.(ast.ResultSetNode), Right: yyS[yypt-2].item.(ast.ResultSetNode), Tp: ast.CrossJoin, On: on} } - case 1646: + case 1667: { parser.yyVAL.item = &ast.Join{Left: yyS[yypt-6].item.(ast.ResultSetNode), Right: yyS[yypt-4].item.(ast.ResultSetNode), Tp: ast.CrossJoin, Using: yyS[yypt-1].item.([]*ast.ColumnName)} } - case 1647: + case 1668: { on := &ast.OnCondition{Expr: yyS[yypt-0].expr} parser.yyVAL.item = &ast.Join{Left: yyS[yypt-6].item.(ast.ResultSetNode), Right: yyS[yypt-2].item.(ast.ResultSetNode), Tp: yyS[yypt-5].item.(ast.JoinType), On: on} } - case 1648: + case 1669: { parser.yyVAL.item = &ast.Join{Left: yyS[yypt-8].item.(ast.ResultSetNode), Right: yyS[yypt-4].item.(ast.ResultSetNode), Tp: yyS[yypt-7].item.(ast.JoinType), Using: yyS[yypt-1].item.([]*ast.ColumnName)} } - case 1649: + case 1670: { parser.yyVAL.item = &ast.Join{Left: yyS[yypt-3].item.(ast.ResultSetNode), Right: yyS[yypt-0].item.(ast.ResultSetNode), NaturalJoin: true} } - case 1650: + case 1671: { parser.yyVAL.item = &ast.Join{Left: yyS[yypt-5].item.(ast.ResultSetNode), Right: yyS[yypt-0].item.(ast.ResultSetNode), Tp: yyS[yypt-3].item.(ast.JoinType), NaturalJoin: true} } - case 1651: + case 1672: { parser.yyVAL.item = &ast.Join{Left: yyS[yypt-2].item.(ast.ResultSetNode), Right: yyS[yypt-0].item.(ast.ResultSetNode), StraightJoin: true} } - case 1652: + case 1673: { on := &ast.OnCondition{Expr: yyS[yypt-0].expr} parser.yyVAL.item = &ast.Join{Left: yyS[yypt-4].item.(ast.ResultSetNode), Right: yyS[yypt-2].item.(ast.ResultSetNode), StraightJoin: true, On: on} } - case 1653: + case 1674: { parser.yyVAL.item = ast.LeftJoin } - case 1654: + case 1675: { parser.yyVAL.item = ast.RightJoin } - case 1660: + case 1681: { parser.yyVAL.item = nil } - case 1661: + case 1682: { parser.yyVAL.item = &ast.Limit{Count: yyS[yypt-0].item.(ast.ValueExpr)} } - case 1662: + case 1683: { parser.yyVAL.item = ast.NewValueExpr(yyS[yypt-0].item, parser.charset, parser.collation) } - case 1663: + case 1684: { parser.yyVAL.item = ast.NewParamMarkerExpr(yyS[yypt].offset) } - case 1668: + case 1689: { parser.yyVAL.item = ast.NewValueExpr(uint64(1), parser.charset, parser.collation) } - case 1670: + case 1691: { parser.yyVAL.item = &ast.Limit{Count: yyS[yypt-0].item.(ast.ExprNode)} } - case 1671: + case 1692: { parser.yyVAL.item = &ast.Limit{Offset: yyS[yypt-2].item.(ast.ExprNode), Count: yyS[yypt-0].item.(ast.ExprNode)} } - case 1672: + case 1693: { parser.yyVAL.item = &ast.Limit{Offset: yyS[yypt-0].item.(ast.ExprNode), Count: yyS[yypt-2].item.(ast.ExprNode)} } - case 1673: + case 1694: { parser.yyVAL.item = &ast.Limit{Count: yyS[yypt-2].item.(ast.ExprNode)} } - case 1674: + case 1695: { parser.yyVAL.item = nil } - case 1676: + case 1697: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.TableHints = yyS[yypt-0].item.([]*ast.TableOptimizerHint) parser.yyVAL.item = opt } - case 1677: + case 1698: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true @@ -17887,61 +18091,61 @@ yynewstate: } parser.yyVAL.item = opt } - case 1678: + case 1699: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.Priority = yyS[yypt-0].item.(mysql.PriorityEnum) parser.yyVAL.item = opt } - case 1679: + case 1700: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.SQLSmallResult = true parser.yyVAL.item = opt } - case 1680: + case 1701: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.SQLBigResult = true parser.yyVAL.item = opt } - case 1681: + case 1702: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.SQLBufferResult = true parser.yyVAL.item = opt } - case 1682: + case 1703: { opt := &ast.SelectStmtOpts{} opt.SQLCache = yyS[yypt-0].item.(bool) parser.yyVAL.item = opt } - case 1683: + case 1704: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.CalcFoundRows = true parser.yyVAL.item = opt } - case 1684: + case 1705: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true opt.StraightJoin = true parser.yyVAL.item = opt } - case 1685: + case 1706: { opt := &ast.SelectStmtOpts{} opt.SQLCache = true parser.yyVAL.item = opt } - case 1687: + case 1708: { opts := yyS[yypt-1].item.(*ast.SelectStmtOpts) opt := yyS[yypt-0].item.(*ast.SelectStmtOpts) @@ -17986,7 +18190,7 @@ yynewstate: parser.yyVAL.item = opts } - case 1689: + case 1710: { hints, warns := parser.parseHint(yyS[yypt-0].ident) for _, w := range warns { @@ -17995,31 +18199,31 @@ yynewstate: } parser.yyVAL.item = hints } - case 1690: + case 1711: { parser.yyVAL.item = nil } - case 1692: + case 1713: { parser.yyVAL.item = true } - case 1693: + case 1714: { parser.yyVAL.item = false } - case 1694: + case 1715: { parser.yyVAL.item = &ast.FieldList{Fields: yyS[yypt-0].item.([]*ast.SelectField)} } - case 1695: + case 1716: { parser.yyVAL.item = nil } - case 1697: + case 1718: { parser.yyVAL.item = nil } - case 1698: + case 1719: { x := &ast.SelectIntoOption{ Tp: ast.SelectIntoOutfile, @@ -18034,7 +18238,7 @@ yynewstate: parser.yyVAL.item = x } - case 1699: + case 1720: { rs := yyS[yypt-1].statement.(*ast.SelectStmt) endOffset := parser.endOffset(&yyS[yypt]) @@ -18044,14 +18248,14 @@ yynewstate: rs.SetText(parser.lexer.client, src[yyS[yypt-1].offset:yyS[yypt].offset]) parser.yyVAL.expr = &ast.SubqueryExpr{Query: rs} } - case 1700: + case 1721: { rs := yyS[yypt-1].statement.(*ast.SetOprStmt) src := parser.src rs.SetText(parser.lexer.client, src[yyS[yypt-1].offset:yyS[yypt].offset]) parser.yyVAL.expr = &ast.SubqueryExpr{Query: rs} } - case 1701: + case 1722: { rs := yyS[yypt-1].statement.(*ast.SelectStmt) endOffset := parser.endOffset(&yyS[yypt]) @@ -18061,7 +18265,7 @@ yynewstate: rs.SetText(parser.lexer.client, src[yyS[yypt-1].offset:yyS[yypt].offset]) parser.yyVAL.expr = &ast.SubqueryExpr{Query: rs} } - case 1702: + case 1723: { subQuery := yyS[yypt-1].expr.(*ast.SubqueryExpr).Query isRecursive := true @@ -18084,32 +18288,32 @@ yynewstate: parser.yyVAL.expr = &ast.SubqueryExpr{Query: rs} } } - case 1703: + case 1724: { parser.yyVAL.item = nil } - case 1704: + case 1725: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForUpdate, Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 1705: + case 1726: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForShare, Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 1706: + case 1727: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForUpdateNoWait, Tables: yyS[yypt-1].item.([]*ast.TableName), } } - case 1707: + case 1728: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForUpdateWaitN, @@ -18117,55 +18321,55 @@ yynewstate: Tables: yyS[yypt-2].item.([]*ast.TableName), } } - case 1708: + case 1729: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForShareNoWait, Tables: yyS[yypt-1].item.([]*ast.TableName), } } - case 1709: + case 1730: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForUpdateSkipLocked, Tables: yyS[yypt-2].item.([]*ast.TableName), } } - case 1710: + case 1731: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForShareSkipLocked, Tables: yyS[yypt-2].item.([]*ast.TableName), } } - case 1711: + case 1732: { parser.yyVAL.item = &ast.SelectLockInfo{ LockType: ast.SelectLockForShare, Tables: []*ast.TableName{}, } } - case 1712: + case 1733: { parser.yyVAL.item = []*ast.TableName{} } - case 1713: + case 1734: { parser.yyVAL.item = yyS[yypt-0].item.([]*ast.TableName) } - case 1716: + case 1737: { setOpr := yyS[yypt-0].statement.(*ast.SetOprStmt) setOpr.With = yyS[yypt-1].item.(*ast.WithClause) parser.yyVAL.statement = setOpr } - case 1717: + case 1738: { setOpr := yyS[yypt-0].statement.(*ast.SetOprStmt) setOpr.With = yyS[yypt-1].item.(*ast.WithClause) parser.yyVAL.statement = setOpr } - case 1718: + case 1739: { setOprList1 := yyS[yypt-2].item.([]ast.Node) if sel, isSelect := setOprList1[len(setOprList1)-1].(*ast.SelectStmt); isSelect && !sel.IsInBraces { @@ -18182,7 +18386,7 @@ yynewstate: setOpr.SelectList.Selects = append(setOpr.SelectList.Selects, st) parser.yyVAL.statement = setOpr } - case 1719: + case 1740: { setOprList1 := yyS[yypt-2].item.([]ast.Node) if sel, isSelect := setOprList1[len(setOprList1)-1].(*ast.SelectStmt); isSelect && !sel.IsInBraces { @@ -18205,7 +18409,7 @@ yynewstate: setOpr := &ast.SetOprStmt{SelectList: &ast.SetOprSelectList{Selects: setOprList}} parser.yyVAL.statement = setOpr } - case 1720: + case 1741: { setOprList1 := yyS[yypt-3].item.([]ast.Node) if sel, isSelect := setOprList1[len(setOprList1)-1].(*ast.SelectStmt); isSelect && !sel.IsInBraces { @@ -18229,7 +18433,7 @@ yynewstate: setOpr.OrderBy = yyS[yypt-0].item.(*ast.OrderByClause) parser.yyVAL.statement = setOpr } - case 1721: + case 1742: { setOprList1 := yyS[yypt-3].item.([]ast.Node) if sel, isSelect := setOprList1[len(setOprList1)-1].(*ast.SelectStmt); isSelect && !sel.IsInBraces { @@ -18253,7 +18457,7 @@ yynewstate: setOpr.Limit = yyS[yypt-0].item.(*ast.Limit) parser.yyVAL.statement = setOpr } - case 1722: + case 1743: { setOprList1 := yyS[yypt-4].item.([]ast.Node) if sel, isSelect := setOprList1[len(setOprList1)-1].(*ast.SelectStmt); isSelect && !sel.IsInBraces { @@ -18278,7 +18482,7 @@ yynewstate: setOpr.Limit = yyS[yypt-0].item.(*ast.Limit) parser.yyVAL.statement = setOpr } - case 1723: + case 1744: { var setOprList []ast.Node var with *ast.WithClause @@ -18294,7 +18498,7 @@ yynewstate: setOpr.OrderBy = yyS[yypt-0].item.(*ast.OrderByClause) parser.yyVAL.statement = setOpr } - case 1724: + case 1745: { var setOprList []ast.Node var with *ast.WithClause @@ -18310,7 +18514,7 @@ yynewstate: setOpr.Limit = yyS[yypt-0].item.(*ast.Limit) parser.yyVAL.statement = setOpr } - case 1725: + case 1746: { var setOprList []ast.Node var with *ast.WithClause @@ -18327,7 +18531,7 @@ yynewstate: setOpr.Limit = yyS[yypt-0].item.(*ast.Limit) parser.yyVAL.statement = setOpr } - case 1727: + case 1748: { setOprList1 := yyS[yypt-2].item.([]ast.Node) setOprList2 := yyS[yypt-0].item.([]ast.Node) @@ -18343,11 +18547,11 @@ yynewstate: } parser.yyVAL.item = append(setOprList1, setOprList2...) } - case 1728: + case 1749: { parser.yyVAL.item = []ast.Node{yyS[yypt-0].statement.(*ast.SelectStmt)} } - case 1729: + case 1750: { var setOprList []ast.Node switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -18358,7 +18562,7 @@ yynewstate: } parser.yyVAL.item = setOprList } - case 1730: + case 1751: { var tp ast.SetOprType tp = ast.Union @@ -18367,7 +18571,7 @@ yynewstate: } parser.yyVAL.item = &tp } - case 1731: + case 1752: { var tp ast.SetOprType tp = ast.Except @@ -18376,7 +18580,7 @@ yynewstate: } parser.yyVAL.item = &tp } - case 1732: + case 1753: { var tp ast.SetOprType tp = ast.Intersect @@ -18385,7 +18589,7 @@ yynewstate: } parser.yyVAL.item = &tp } - case 1734: + case 1755: { parser.yyVAL.statement = &ast.ChangeStmt{ NodeType: ast.PumpType, @@ -18393,7 +18597,7 @@ yynewstate: NodeID: yyS[yypt-0].ident, } } - case 1735: + case 1756: { parser.yyVAL.statement = &ast.ChangeStmt{ NodeType: ast.DrainerType, @@ -18401,19 +18605,19 @@ yynewstate: NodeID: yyS[yypt-0].ident, } } - case 1736: + case 1757: { parser.yyVAL.statement = &ast.SetStmt{Variables: yyS[yypt-0].item.([]*ast.VariableAssignment)} } - case 1737: + case 1758: { parser.yyVAL.statement = &ast.SetPwdStmt{Password: yyS[yypt-0].ident} } - case 1738: + case 1759: { parser.yyVAL.statement = &ast.SetPwdStmt{User: yyS[yypt-2].item.(*auth.UserIdentity), Password: yyS[yypt-0].ident} } - case 1739: + case 1760: { vars := yyS[yypt-0].item.([]*ast.VariableAssignment) for _, v := range vars { @@ -18421,11 +18625,11 @@ yynewstate: } parser.yyVAL.statement = &ast.SetStmt{Variables: vars} } - case 1740: + case 1761: { parser.yyVAL.statement = &ast.SetStmt{Variables: yyS[yypt-0].item.([]*ast.VariableAssignment)} } - case 1741: + case 1762: { assigns := yyS[yypt-0].item.([]*ast.VariableAssignment) for i := 0; i < len(assigns); i++ { @@ -18436,23 +18640,23 @@ yynewstate: } parser.yyVAL.statement = &ast.SetStmt{Variables: assigns} } - case 1742: + case 1763: { parser.yyVAL.statement = &ast.SetConfigStmt{Type: strings.ToLower(yyS[yypt-3].ident), Name: yyS[yypt-2].ident, Value: yyS[yypt-0].expr} } - case 1743: + case 1764: { parser.yyVAL.statement = &ast.SetConfigStmt{Instance: yyS[yypt-3].ident, Name: yyS[yypt-2].ident, Value: yyS[yypt-0].expr} } - case 1744: + case 1765: { parser.yyVAL.statement = &ast.SetSessionStatesStmt{SessionStates: yyS[yypt-0].ident} } - case 1745: + case 1766: { parser.yyVAL.statement = yyS[yypt-0].item.(*ast.SetRoleStmt) } - case 1746: + case 1767: { tmp := yyS[yypt-2].item.(*ast.SetRoleStmt) parser.yyVAL.statement = &ast.SetDefaultRoleStmt{ @@ -18461,27 +18665,27 @@ yynewstate: UserList: yyS[yypt-0].item.([]*auth.UserIdentity), } } - case 1747: + case 1768: { parser.yyVAL.item = &ast.SetRoleStmt{SetRoleOpt: ast.SetRoleNone, RoleList: nil} } - case 1748: + case 1769: { parser.yyVAL.item = &ast.SetRoleStmt{SetRoleOpt: ast.SetRoleAll, RoleList: nil} } - case 1749: + case 1770: { parser.yyVAL.item = &ast.SetRoleStmt{SetRoleOpt: ast.SetRoleRegular, RoleList: yyS[yypt-0].item.([]*auth.RoleIdentity)} } - case 1750: + case 1771: { parser.yyVAL.item = &ast.SetRoleStmt{SetRoleOpt: ast.SetRoleAllExcept, RoleList: yyS[yypt-0].item.([]*auth.RoleIdentity)} } - case 1752: + case 1773: { parser.yyVAL.item = &ast.SetRoleStmt{SetRoleOpt: ast.SetRoleDefault, RoleList: nil} } - case 1753: + case 1774: { if yyS[yypt-0].item != nil { parser.yyVAL.item = yyS[yypt-0].item @@ -18489,7 +18693,7 @@ yynewstate: parser.yyVAL.item = []*ast.VariableAssignment{} } } - case 1754: + case 1775: { if yyS[yypt-0].item != nil { varAssigns := yyS[yypt-0].item.([]*ast.VariableAssignment) @@ -18498,28 +18702,28 @@ yynewstate: parser.yyVAL.item = yyS[yypt-2].item } } - case 1755: + case 1776: { varAssigns := []*ast.VariableAssignment{} expr := ast.NewValueExpr(yyS[yypt-0].ident, parser.charset, parser.collation) varAssigns = append(varAssigns, &ast.VariableAssignment{Name: "tx_isolation", Value: expr, IsSystem: true}) parser.yyVAL.item = varAssigns } - case 1756: + case 1777: { varAssigns := []*ast.VariableAssignment{} expr := ast.NewValueExpr("0", parser.charset, parser.collation) varAssigns = append(varAssigns, &ast.VariableAssignment{Name: "tx_read_only", Value: expr, IsSystem: true}) parser.yyVAL.item = varAssigns } - case 1757: + case 1778: { varAssigns := []*ast.VariableAssignment{} expr := ast.NewValueExpr("1", parser.charset, parser.collation) varAssigns = append(varAssigns, &ast.VariableAssignment{Name: "tx_read_only", Value: expr, IsSystem: true}) parser.yyVAL.item = varAssigns } - case 1758: + case 1779: { varAssigns := []*ast.VariableAssignment{} asof := yyS[yypt-0].item.(*ast.AsOfClause) @@ -18528,59 +18732,59 @@ yynewstate: } parser.yyVAL.item = varAssigns } - case 1759: + case 1780: { parser.yyVAL.ident = ast.RepeatableRead } - case 1760: + case 1781: { parser.yyVAL.ident = ast.ReadCommitted } - case 1761: + case 1782: { parser.yyVAL.ident = ast.ReadUncommitted } - case 1762: + case 1783: { parser.yyVAL.ident = ast.Serializable } - case 1763: + case 1784: { parser.yyVAL.expr = ast.NewValueExpr("ON", parser.charset, parser.collation) } - case 1764: + case 1785: { parser.yyVAL.expr = ast.NewValueExpr("BINARY", parser.charset, parser.collation) } - case 1769: + case 1790: { parser.yyVAL.ident = yyS[yypt-2].ident + "." + yyS[yypt-0].ident } - case 1771: + case 1792: { parser.yyVAL.ident = yyS[yypt-2].ident + "." + yyS[yypt-0].ident } - case 1772: + case 1793: { parser.yyVAL.ident = yyS[yypt-2].ident + "-" + yyS[yypt-0].ident } - case 1773: + case 1794: { parser.yyVAL.item = &ast.VariableAssignment{Name: yyS[yypt-2].ident, Value: yyS[yypt-0].expr, IsSystem: true} } - case 1774: + case 1795: { parser.yyVAL.item = &ast.VariableAssignment{Name: yyS[yypt-2].ident, Value: yyS[yypt-0].expr, IsGlobal: true, IsSystem: true} } - case 1775: + case 1796: { parser.yyVAL.item = &ast.VariableAssignment{Name: yyS[yypt-2].ident, Value: yyS[yypt-0].expr, IsSystem: true} } - case 1776: + case 1797: { parser.yyVAL.item = &ast.VariableAssignment{Name: yyS[yypt-2].ident, Value: yyS[yypt-0].expr, IsSystem: true} } - case 1777: + case 1798: { v := strings.ToLower(yyS[yypt-2].ident) var isGlobal bool @@ -18596,27 +18800,27 @@ yynewstate: } parser.yyVAL.item = &ast.VariableAssignment{Name: v, Value: yyS[yypt-0].expr, IsGlobal: isGlobal, IsSystem: true} } - case 1778: + case 1799: { v := yyS[yypt-2].ident v = strings.TrimPrefix(v, "@") parser.yyVAL.item = &ast.VariableAssignment{Name: v, Value: yyS[yypt-0].expr} } - case 1779: + case 1800: { parser.yyVAL.item = &ast.VariableAssignment{ Name: ast.SetNames, Value: ast.NewValueExpr(yyS[yypt-0].ident, "", ""), } } - case 1780: + case 1801: { parser.yyVAL.item = &ast.VariableAssignment{ Name: ast.SetNames, Value: ast.NewValueExpr(yyS[yypt-2].ident, "", ""), } } - case 1781: + case 1802: { parser.yyVAL.item = &ast.VariableAssignment{ Name: ast.SetNames, @@ -18624,24 +18828,24 @@ yynewstate: ExtendValue: ast.NewValueExpr(yyS[yypt-0].ident, "", ""), } } - case 1782: + case 1803: { v := &ast.DefaultExpr{} parser.yyVAL.item = &ast.VariableAssignment{Name: ast.SetNames, Value: v} } - case 1783: + case 1804: { parser.yyVAL.item = &ast.VariableAssignment{Name: ast.SetCharset, Value: yyS[yypt-0].expr} } - case 1784: + case 1805: { parser.yyVAL.expr = ast.NewValueExpr(yyS[yypt-0].ident, "", "") } - case 1785: + case 1806: { parser.yyVAL.expr = &ast.DefaultExpr{} } - case 1786: + case 1807: { // Validate input charset name to keep the same behavior as parser of MySQL. cs, err := charset.GetCharsetInfo(yyS[yypt-0].ident) @@ -18653,11 +18857,11 @@ yynewstate: // to keep lower case of input for generated column restore. parser.yyVAL.ident = cs.Name } - case 1787: + case 1808: { parser.yyVAL.ident = charset.CharsetBin } - case 1788: + case 1809: { info, err := charset.GetCollationByName(yyS[yypt-0].ident) if err != nil { @@ -18666,19 +18870,19 @@ yynewstate: } parser.yyVAL.ident = info.Name } - case 1789: + case 1810: { parser.yyVAL.ident = charset.CollationBin } - case 1790: + case 1811: { parser.yyVAL.item = []*ast.VariableAssignment{yyS[yypt-0].item.(*ast.VariableAssignment)} } - case 1791: + case 1812: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.VariableAssignment), yyS[yypt-0].item.(*ast.VariableAssignment)) } - case 1794: + case 1815: { v := strings.ToLower(yyS[yypt-0].ident) var isGlobal bool @@ -18695,89 +18899,89 @@ yynewstate: } parser.yyVAL.expr = &ast.VariableExpr{Name: v, IsGlobal: isGlobal, IsSystem: true, ExplicitScope: explicitScope} } - case 1795: + case 1816: { v := yyS[yypt-0].ident v = strings.TrimPrefix(v, "@") parser.yyVAL.expr = &ast.VariableExpr{Name: v, IsGlobal: false, IsSystem: false} } - case 1796: + case 1817: { parser.yyVAL.item = &auth.UserIdentity{Username: yyS[yypt-0].ident, Hostname: "%"} } - case 1797: + case 1818: { parser.yyVAL.item = &auth.UserIdentity{Username: yyS[yypt-2].ident, Hostname: strings.ToLower(yyS[yypt-0].ident)} } - case 1798: + case 1819: { parser.yyVAL.item = &auth.UserIdentity{Username: yyS[yypt-1].ident, Hostname: strings.ToLower(strings.TrimPrefix(yyS[yypt-0].ident, "@"))} } - case 1799: + case 1820: { parser.yyVAL.item = &auth.UserIdentity{CurrentUser: true} } - case 1800: + case 1821: { parser.yyVAL.item = []*auth.UserIdentity{yyS[yypt-0].item.(*auth.UserIdentity)} } - case 1801: + case 1822: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*auth.UserIdentity), yyS[yypt-0].item.(*auth.UserIdentity)) } - case 1803: + case 1824: { parser.yyVAL.ident = yyS[yypt-1].ident } - case 1807: + case 1828: { parser.yyVAL.item = &auth.RoleIdentity{Username: yyS[yypt-2].ident, Hostname: strings.ToLower(yyS[yypt-0].ident)} } - case 1808: + case 1829: { parser.yyVAL.item = &auth.RoleIdentity{Username: yyS[yypt-1].ident, Hostname: strings.ToLower(strings.TrimPrefix(yyS[yypt-0].ident, "@"))} } - case 1809: + case 1830: { parser.yyVAL.item = &auth.RoleIdentity{Username: yyS[yypt-0].ident, Hostname: "%"} } - case 1810: + case 1831: { parser.yyVAL.item = yyS[yypt-0].item } - case 1811: + case 1832: { parser.yyVAL.item = &auth.RoleIdentity{Username: yyS[yypt-0].ident, Hostname: "%"} } - case 1812: + case 1833: { parser.yyVAL.item = yyS[yypt-0].item } - case 1813: + case 1834: { parser.yyVAL.item = []*auth.RoleIdentity{yyS[yypt-0].item.(*auth.RoleIdentity)} } - case 1814: + case 1835: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*auth.RoleIdentity), yyS[yypt-0].item.(*auth.RoleIdentity)) } - case 1815: + case 1836: { parser.yyVAL.item = &ast.LimitSimple{Offset: 0, Count: yyS[yypt-0].item.(uint64)} } - case 1816: + case 1837: { parser.yyVAL.item = &ast.LimitSimple{Offset: yyS[yypt-2].item.(uint64), Count: yyS[yypt-0].item.(uint64)} } - case 1817: + case 1838: { parser.yyVAL.item = &ast.LimitSimple{Offset: yyS[yypt-0].item.(uint64), Count: yyS[yypt-2].item.(uint64)} } - case 1818: + case 1839: { parser.yyVAL.statement = &ast.AdminStmt{Tp: ast.AdminShowDDL} } - case 1819: + case 1840: { stmt := &ast.AdminStmt{Tp: ast.AdminShowDDLJobs} if yyS[yypt-0].item != nil { @@ -18785,7 +18989,7 @@ yynewstate: } parser.yyVAL.statement = stmt } - case 1820: + case 1841: { stmt := &ast.AdminStmt{ Tp: ast.AdminShowDDLJobs, @@ -18796,21 +19000,21 @@ yynewstate: } parser.yyVAL.statement = stmt } - case 1821: + case 1842: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminShowNextRowID, Tables: []*ast.TableName{yyS[yypt-1].item.(*ast.TableName)}, } } - case 1822: + case 1843: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminCheckTable, Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 1823: + case 1844: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminCheckIndex, @@ -18818,7 +19022,7 @@ yynewstate: Index: string(yyS[yypt-0].ident), } } - case 1824: + case 1845: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminRecoverIndex, @@ -18826,7 +19030,7 @@ yynewstate: Index: string(yyS[yypt-0].ident), } } - case 1825: + case 1846: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminCleanupIndex, @@ -18834,7 +19038,7 @@ yynewstate: Index: string(yyS[yypt-0].ident), } } - case 1826: + case 1847: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminCheckIndexRange, @@ -18843,28 +19047,28 @@ yynewstate: HandleRanges: yyS[yypt-0].item.([]ast.HandleRange), } } - case 1827: + case 1848: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminChecksumTable, Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 1828: + case 1849: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminCancelDDLJobs, JobIDs: yyS[yypt-0].item.([]int64), } } - case 1829: + case 1850: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminShowDDLJobQueries, JobIDs: yyS[yypt-0].item.([]int64), } } - case 1830: + case 1851: { ret := &ast.AdminStmt{ Tp: ast.AdminShowDDLJobQueriesWithRange, @@ -18873,115 +19077,115 @@ yynewstate: ret.LimitSimple.Offset = yyS[yypt-0].item.(*ast.LimitSimple).Offset parser.yyVAL.statement = ret } - case 1831: + case 1852: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminShowSlow, ShowSlow: yyS[yypt-0].item.(*ast.ShowSlow), } } - case 1832: + case 1853: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminReloadExprPushdownBlacklist, } } - case 1833: + case 1854: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminReloadOptRuleBlacklist, } } - case 1834: + case 1855: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminPluginEnable, Plugins: yyS[yypt-0].item.([]string), } } - case 1835: + case 1856: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminPluginDisable, Plugins: yyS[yypt-0].item.([]string), } } - case 1836: + case 1857: { parser.yyVAL.statement = &ast.CleanupTableLockStmt{ Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 1837: + case 1858: { parser.yyVAL.statement = &ast.RepairTableStmt{ Table: yyS[yypt-1].item.(*ast.TableName), CreateStmt: yyS[yypt-0].statement.(*ast.CreateTableStmt), } } - case 1838: + case 1859: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminFlushBindings, } } - case 1839: + case 1860: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminCaptureBindings, } } - case 1840: + case 1861: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminEvolveBindings, } } - case 1841: + case 1862: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminReloadBindings, } } - case 1842: + case 1863: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminReloadStatistics, } } - case 1843: + case 1864: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminReloadStatistics, } } - case 1844: + case 1865: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminShowTelemetry, } } - case 1845: + case 1866: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminResetTelemetryID, } } - case 1846: + case 1867: { parser.yyVAL.statement = &ast.AdminStmt{ Tp: ast.AdminFlushPlanCache, StatementScope: yyS[yypt-1].item.(ast.StatementScope), } } - case 1847: + case 1868: { parser.yyVAL.item = &ast.ShowSlow{ Tp: ast.ShowSlowRecent, Count: getUint64FromNUM(yyS[yypt-0].item), } } - case 1848: + case 1869: { parser.yyVAL.item = &ast.ShowSlow{ Tp: ast.ShowSlowTop, @@ -18989,7 +19193,7 @@ yynewstate: Count: getUint64FromNUM(yyS[yypt-0].item), } } - case 1849: + case 1870: { parser.yyVAL.item = &ast.ShowSlow{ Tp: ast.ShowSlowTop, @@ -18997,7 +19201,7 @@ yynewstate: Count: getUint64FromNUM(yyS[yypt-0].item), } } - case 1850: + case 1871: { parser.yyVAL.item = &ast.ShowSlow{ Tp: ast.ShowSlowTop, @@ -19005,27 +19209,27 @@ yynewstate: Count: getUint64FromNUM(yyS[yypt-0].item), } } - case 1851: + case 1872: { parser.yyVAL.item = []ast.HandleRange{yyS[yypt-0].item.(ast.HandleRange)} } - case 1852: + case 1873: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.HandleRange), yyS[yypt-0].item.(ast.HandleRange)) } - case 1853: + case 1874: { parser.yyVAL.item = ast.HandleRange{Begin: yyS[yypt-3].item.(int64), End: yyS[yypt-1].item.(int64)} } - case 1854: + case 1875: { parser.yyVAL.item = []int64{yyS[yypt-0].item.(int64)} } - case 1855: + case 1876: { parser.yyVAL.item = append(yyS[yypt-2].item.([]int64), yyS[yypt-0].item.(int64)) } - case 1856: + case 1877: { stmt := yyS[yypt-1].item.(*ast.ShowStmt) if yyS[yypt-0].item != nil { @@ -19037,21 +19241,21 @@ yynewstate: } parser.yyVAL.statement = stmt } - case 1857: + case 1878: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowCreateTable, Table: yyS[yypt-0].item.(*ast.TableName), } } - case 1858: + case 1879: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowCreateView, Table: yyS[yypt-0].item.(*ast.TableName), } } - case 1859: + case 1880: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowCreateDatabase, @@ -19059,21 +19263,21 @@ yynewstate: DBName: yyS[yypt-0].ident, } } - case 1860: + case 1881: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowCreateSequence, Table: yyS[yypt-0].item.(*ast.TableName), } } - case 1861: + case 1882: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowCreatePlacementPolicy, DBName: yyS[yypt-0].ident, } } - case 1862: + case 1883: { // See https://dev.mysql.com/doc/refman/5.7/en/show-create-user.html parser.yyVAL.statement = &ast.ShowStmt{ @@ -19081,14 +19285,14 @@ yynewstate: User: yyS[yypt-0].item.(*auth.UserIdentity), } } - case 1863: + case 1884: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowCreateImport, DBName: yyS[yypt-0].ident, // we reuse DBName of ShowStmt } } - case 1864: + case 1885: { stmt := &ast.ShowStmt{ Tp: ast.ShowRegions, @@ -19100,14 +19304,14 @@ yynewstate: } parser.yyVAL.statement = stmt } - case 1865: + case 1886: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowTableNextRowId, Table: yyS[yypt-1].item.(*ast.TableName), } } - case 1866: + case 1887: { stmt := &ast.ShowStmt{ Tp: ast.ShowRegions, @@ -19120,12 +19324,12 @@ yynewstate: } parser.yyVAL.statement = stmt } - case 1867: + case 1888: { // See https://dev.mysql.com/doc/refman/5.7/en/show-grants.html parser.yyVAL.statement = &ast.ShowStmt{Tp: ast.ShowGrants} } - case 1868: + case 1889: { // See https://dev.mysql.com/doc/refman/5.7/en/show-grants.html if yyS[yypt-0].item != nil { @@ -19142,26 +19346,26 @@ yynewstate: } } } - case 1869: + case 1890: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowMasterStatus, } } - case 1870: + case 1891: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowProcessList, Full: yyS[yypt-1].item.(bool), } } - case 1871: + case 1892: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowProfiles, } } - case 1872: + case 1893: { v := &ast.ShowStmt{ Tp: ast.ShowProfile, @@ -19177,37 +19381,37 @@ yynewstate: } parser.yyVAL.statement = v } - case 1873: + case 1894: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowPrivileges, } } - case 1874: + case 1895: { parser.yyVAL.statement = &ast.ShowStmt{ Tp: ast.ShowBuiltins, } } - case 1875: + case 1896: { parser.yyVAL.statement = yyS[yypt-0].item.(*ast.ShowStmt) } - case 1876: + case 1897: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowPlacementForDatabase, DBName: yyS[yypt-0].ident, } } - case 1877: + case 1898: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowPlacementForTable, Table: yyS[yypt-0].item.(*ast.TableName), } } - case 1878: + case 1899: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowPlacementForPartition, @@ -19215,90 +19419,90 @@ yynewstate: Partition: model.NewCIStr(yyS[yypt-0].ident), } } - case 1879: + case 1900: { parser.yyVAL.item = nil } - case 1881: + case 1902: { parser.yyVAL.item = []int{yyS[yypt-0].item.(int)} } - case 1882: + case 1903: { l := yyS[yypt-2].item.([]int) l = append(l, yyS[yypt-0].item.(int)) parser.yyVAL.item = l } - case 1883: + case 1904: { parser.yyVAL.item = ast.ProfileTypeCPU } - case 1884: + case 1905: { parser.yyVAL.item = ast.ProfileTypeMemory } - case 1885: + case 1906: { parser.yyVAL.item = ast.ProfileTypeBlockIo } - case 1886: + case 1907: { parser.yyVAL.item = ast.ProfileTypeContextSwitch } - case 1887: + case 1908: { parser.yyVAL.item = ast.ProfileTypePageFaults } - case 1888: + case 1909: { parser.yyVAL.item = ast.ProfileTypeIpc } - case 1889: + case 1910: { parser.yyVAL.item = ast.ProfileTypeSwaps } - case 1890: + case 1911: { parser.yyVAL.item = ast.ProfileTypeSource } - case 1891: + case 1912: { parser.yyVAL.item = ast.ProfileTypeAll } - case 1892: + case 1913: { parser.yyVAL.item = nil } - case 1893: + case 1914: { v := yyS[yypt-0].item.(int64) parser.yyVAL.item = &v } - case 1894: + case 1915: { parser.yyVAL.item = nil } - case 1895: + case 1916: { parser.yyVAL.item = yyS[yypt-0].item.([]*auth.RoleIdentity) } - case 1901: + case 1922: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowEngines} } - case 1902: + case 1923: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowDatabases} } - case 1903: + case 1924: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowConfig} } - case 1904: + case 1925: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowCharset} } - case 1905: + case 1926: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowTables, @@ -19306,28 +19510,28 @@ yynewstate: Full: yyS[yypt-2].item.(bool), } } - case 1906: + case 1927: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowOpenTables, DBName: yyS[yypt-0].ident, } } - case 1907: + case 1928: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowTableStatus, DBName: yyS[yypt-0].ident, } } - case 1908: + case 1929: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowIndex, Table: yyS[yypt-0].item.(*ast.TableName), } } - case 1909: + case 1930: { show := &ast.ShowStmt{ Tp: ast.ShowIndex, @@ -19335,7 +19539,7 @@ yynewstate: } parser.yyVAL.item = show } - case 1910: + case 1931: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowColumns, @@ -19344,7 +19548,7 @@ yynewstate: Full: yyS[yypt-3].item.(bool), } } - case 1911: + case 1932: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowColumns, @@ -19354,81 +19558,81 @@ yynewstate: Extended: true, } } - case 1912: + case 1933: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowWarnings, CountWarningsOrErrors: true} } - case 1913: + case 1934: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowWarnings} } - case 1914: + case 1935: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowErrors, CountWarningsOrErrors: true} } - case 1915: + case 1936: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowErrors} } - case 1916: + case 1937: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowVariables, GlobalScope: yyS[yypt-1].item.(bool), } } - case 1917: + case 1938: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowStatus, GlobalScope: yyS[yypt-1].item.(bool), } } - case 1918: + case 1939: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowBindings, GlobalScope: yyS[yypt-1].item.(bool), } } - case 1919: + case 1940: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowCollation, } } - case 1920: + case 1941: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowTriggers, DBName: yyS[yypt-0].ident, } } - case 1921: + case 1942: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowBindingCacheStatus, } } - case 1922: + case 1943: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowProcedureStatus, } } - case 1923: + case 1944: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowPumpStatus, } } - case 1924: + case 1945: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowDrainerStatus, } } - case 1925: + case 1946: { // This statement is similar to SHOW PROCEDURE STATUS but for stored functions. // See http://dev.mysql.com/doc/refman/5.7/en/show-function-status.html @@ -19438,193 +19642,193 @@ yynewstate: Tp: ast.ShowProcedureStatus, } } - case 1926: + case 1947: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowEvents, DBName: yyS[yypt-0].ident, } } - case 1927: + case 1948: { parser.yyVAL.item = &ast.ShowStmt{ Tp: ast.ShowPlugins, } } - case 1928: + case 1949: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowSessionStates} } - case 1929: + case 1950: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsExtended} } - case 1930: + case 1951: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsMeta, Table: &ast.TableName{Name: model.NewCIStr("STATS_META"), Schema: model.NewCIStr(mysql.SystemDB)}} } - case 1931: + case 1952: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsHistograms, Table: &ast.TableName{Name: model.NewCIStr("STATS_HISTOGRAMS"), Schema: model.NewCIStr(mysql.SystemDB)}} } - case 1932: + case 1953: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsTopN} } - case 1933: + case 1954: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsBuckets, Table: &ast.TableName{Name: model.NewCIStr("STATS_BUCKETS"), Schema: model.NewCIStr(mysql.SystemDB)}} } - case 1934: + case 1955: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsHealthy} } - case 1935: + case 1956: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowStatsLocked, Table: &ast.TableName{Name: model.NewCIStr("STATS_TABLE_LOCKED"), Schema: model.NewCIStr(mysql.SystemDB)}} } - case 1936: + case 1957: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowHistogramsInFlight} } - case 1937: + case 1958: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowColumnStatsUsage} } - case 1938: + case 1959: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowAnalyzeStatus} } - case 1939: + case 1960: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowBackups} } - case 1940: + case 1961: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowRestores} } - case 1941: + case 1962: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowImports} } - case 1942: + case 1963: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowPlacement} } - case 1943: + case 1964: { parser.yyVAL.item = &ast.ShowStmt{Tp: ast.ShowPlacementLabels} } - case 1944: + case 1965: { parser.yyVAL.item = nil } - case 1945: + case 1966: { parser.yyVAL.item = &ast.PatternLikeExpr{ Pattern: yyS[yypt-0].expr, Escape: '\\', } } - case 1946: + case 1967: { parser.yyVAL.item = yyS[yypt-0].expr } - case 1947: + case 1968: { parser.yyVAL.item = false } - case 1948: + case 1969: { parser.yyVAL.item = true } - case 1949: + case 1970: { parser.yyVAL.item = false } - case 1950: + case 1971: { parser.yyVAL.item = ast.StatementScopeSession } - case 1951: + case 1972: { parser.yyVAL.item = ast.StatementScopeGlobal } - case 1952: + case 1973: { parser.yyVAL.item = ast.StatementScopeInstance } - case 1953: + case 1974: { parser.yyVAL.item = ast.StatementScopeSession } - case 1954: + case 1975: { parser.yyVAL.item = false } - case 1955: + case 1976: { parser.yyVAL.item = true } - case 1956: + case 1977: { parser.yyVAL.ident = "" } - case 1957: + case 1978: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 1958: + case 1979: { parser.yyVAL.item = yyS[yypt-0].item.(*ast.TableName) } - case 1959: + case 1980: { tmp := yyS[yypt-0].item.(*ast.FlushStmt) tmp.NoWriteToBinLog = yyS[yypt-1].item.(bool) parser.yyVAL.statement = tmp } - case 1960: + case 1981: { parser.yyVAL.item = []string{yyS[yypt-0].ident} } - case 1961: + case 1982: { parser.yyVAL.item = append(yyS[yypt-2].item.([]string), yyS[yypt-0].ident) } - case 1962: + case 1983: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushPrivileges, } } - case 1963: + case 1984: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushStatus, } } - case 1964: + case 1985: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushTiDBPlugin, Plugins: yyS[yypt-0].item.([]string), } } - case 1965: + case 1986: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushHosts, } } - case 1966: + case 1987: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushLogs, LogType: yyS[yypt-1].item.(ast.LogType), } } - case 1967: + case 1988: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushTables, @@ -19632,69 +19836,69 @@ yynewstate: ReadLock: yyS[yypt-0].item.(bool), } } - case 1968: + case 1989: { parser.yyVAL.item = &ast.FlushStmt{ Tp: ast.FlushClientErrorsSummary, } } - case 1969: + case 1990: { parser.yyVAL.item = ast.LogTypeDefault } - case 1970: + case 1991: { parser.yyVAL.item = ast.LogTypeBinary } - case 1971: + case 1992: { parser.yyVAL.item = ast.LogTypeEngine } - case 1972: + case 1993: { parser.yyVAL.item = ast.LogTypeError } - case 1973: + case 1994: { parser.yyVAL.item = ast.LogTypeGeneral } - case 1974: + case 1995: { parser.yyVAL.item = ast.LogTypeSlow } - case 1975: + case 1996: { parser.yyVAL.item = false } - case 1976: + case 1997: { parser.yyVAL.item = true } - case 1977: + case 1998: { parser.yyVAL.item = true } - case 1978: + case 1999: { parser.yyVAL.item = []*ast.TableName{} } - case 1980: + case 2001: { parser.yyVAL.item = []*ast.TableName{} } - case 1981: + case 2002: { parser.yyVAL.item = yyS[yypt-0].item } - case 1982: + case 2003: { parser.yyVAL.item = false } - case 1983: + case 2004: { parser.yyVAL.item = true } - case 2058: + case 2081: { var sel ast.StmtNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -19707,7 +19911,7 @@ yynewstate: } parser.yyVAL.statement = sel } - case 2084: + case 2107: { var sel ast.StmtNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -19720,7 +19924,7 @@ yynewstate: } parser.yyVAL.statement = sel } - case 2100: + case 2123: { var sel ast.StmtNode switch x := yyS[yypt-0].expr.(*ast.SubqueryExpr).Query.(type) { @@ -19733,7 +19937,7 @@ yynewstate: } parser.yyVAL.statement = sel } - case 2102: + case 2125: { if yyS[yypt-0].statement != nil { s := yyS[yypt-0].statement @@ -19743,7 +19947,7 @@ yynewstate: parser.result = append(parser.result, s) } } - case 2103: + case 2126: { if yyS[yypt-0].statement != nil { s := yyS[yypt-0].statement @@ -19753,7 +19957,7 @@ yynewstate: parser.result = append(parser.result, s) } } - case 2104: + case 2127: { cst := yyS[yypt-0].item.(*ast.Constraint) if yyS[yypt-1].item != nil { @@ -19762,7 +19966,7 @@ yynewstate: } parser.yyVAL.item = cst } - case 2109: + case 2132: { if yyS[yypt-0].item != nil { parser.yyVAL.item = []interface{}{yyS[yypt-0].item.(interface{})} @@ -19770,7 +19974,7 @@ yynewstate: parser.yyVAL.item = []interface{}{} } } - case 2110: + case 2133: { if yyS[yypt-0].item != nil { parser.yyVAL.item = append(yyS[yypt-2].item.([]interface{}), yyS[yypt-0].item) @@ -19778,7 +19982,7 @@ yynewstate: parser.yyVAL.item = yyS[yypt-2].item } } - case 2111: + case 2134: { var columnDefs []*ast.ColumnDef var constraints []*ast.Constraint @@ -19787,7 +19991,7 @@ yynewstate: Constraints: constraints, } } - case 2112: + case 2135: { tes := yyS[yypt-1].item.([]interface{}) var columnDefs []*ast.ColumnDef @@ -19805,69 +20009,69 @@ yynewstate: Constraints: constraints, } } - case 2114: + case 2137: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionCharset, StrValue: yyS[yypt-0].ident, UintValue: ast.TableOptionCharsetWithoutConvertTo} } - case 2115: + case 2138: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionCollate, StrValue: yyS[yypt-0].ident, UintValue: ast.TableOptionCharsetWithoutConvertTo} } - case 2116: + case 2139: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionAutoIncrement, UintValue: yyS[yypt-0].item.(uint64), BoolValue: yyS[yypt-3].item.(bool)} } - case 2117: + case 2140: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionAutoIdCache, UintValue: yyS[yypt-0].item.(uint64)} } - case 2118: + case 2141: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionAutoRandomBase, UintValue: yyS[yypt-0].item.(uint64), BoolValue: yyS[yypt-3].item.(bool)} } - case 2119: + case 2142: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionAvgRowLength, UintValue: yyS[yypt-0].item.(uint64)} } - case 2120: + case 2143: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionConnection, StrValue: yyS[yypt-0].ident} } - case 2121: + case 2144: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionCheckSum, UintValue: yyS[yypt-0].item.(uint64)} } - case 2122: + case 2145: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionTableCheckSum, UintValue: yyS[yypt-0].item.(uint64)} } - case 2123: + case 2146: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionPassword, StrValue: yyS[yypt-0].ident} } - case 2124: + case 2147: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionCompression, StrValue: yyS[yypt-0].ident} } - case 2125: + case 2148: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionKeyBlockSize, UintValue: yyS[yypt-0].item.(uint64)} } - case 2126: + case 2149: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionDelayKeyWrite, UintValue: yyS[yypt-0].item.(uint64)} } - case 2127: + case 2150: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionRowFormat, UintValue: yyS[yypt-0].item.(uint64)} } - case 2128: + case 2151: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionStatsPersistent} } - case 2129: + case 2152: { n := yyS[yypt-0].item.(uint64) if n != 0 && n != 1 { @@ -19878,13 +20082,13 @@ yynewstate: yylex.AppendError(yylex.Errorf("The STATS_AUTO_RECALC is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 2130: + case 2153: { parser.yyVAL.item = &ast.TableOption{Tp: ast.TableOptionStatsAutoRecalc, Default: true} yylex.AppendError(yylex.Errorf("The STATS_AUTO_RECALC is parsed but ignored by all storage engines.")) parser.lastErrorAsWarn() } - case 2131: + case 2154: { // Parse it but will ignore it. // In MySQL, STATS_SAMPLE_PAGES=N(Where 0 1 { @@ -21639,7 +21902,7 @@ yynewstate: OptEnclosed: true, } } - case 2457: + case 2486: { str := yyS[yypt-0].ident if str != "\\" && len(str) > 1 { @@ -21651,7 +21914,7 @@ yynewstate: Value: str, } } - case 2458: + case 2487: { str := yyS[yypt-0].ident if str != "\\" && len(str) > 1 { @@ -21663,104 +21926,104 @@ yynewstate: Value: str, } } - case 2460: + case 2489: { parser.yyVAL.ident = yyS[yypt-0].item.(ast.BinaryLiteral).ToString() } - case 2461: + case 2490: { parser.yyVAL.ident = yyS[yypt-0].item.(ast.BinaryLiteral).ToString() } - case 2462: + case 2491: { parser.yyVAL.item = &ast.LinesClause{Terminated: "\n"} } - case 2463: + case 2492: { parser.yyVAL.item = &ast.LinesClause{Starting: yyS[yypt-1].ident, Terminated: yyS[yypt-0].ident} } - case 2464: + case 2493: { parser.yyVAL.ident = "" } - case 2465: + case 2494: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 2466: + case 2495: { parser.yyVAL.ident = "\n" } - case 2467: + case 2496: { parser.yyVAL.ident = yyS[yypt-0].ident } - case 2468: + case 2497: { parser.yyVAL.item = nil } - case 2469: + case 2498: { parser.yyVAL.item = yyS[yypt-0].item } - case 2470: + case 2499: { l := yyS[yypt-2].item.([]*ast.Assignment) parser.yyVAL.item = append(l, yyS[yypt-0].item.(*ast.Assignment)) } - case 2471: + case 2500: { parser.yyVAL.item = []*ast.Assignment{yyS[yypt-0].item.(*ast.Assignment)} } - case 2472: + case 2501: { parser.yyVAL.item = &ast.Assignment{ Column: yyS[yypt-2].expr.(*ast.ColumnNameExpr).Name, Expr: yyS[yypt-0].expr, } } - case 2473: + case 2502: { parser.yyVAL.statement = &ast.UnlockTablesStmt{} } - case 2474: + case 2503: { parser.yyVAL.statement = &ast.LockTablesStmt{ TableLocks: yyS[yypt-0].item.([]ast.TableLock), } } - case 2477: + case 2506: { parser.yyVAL.item = ast.TableLock{ Table: yyS[yypt-1].item.(*ast.TableName), Type: yyS[yypt-0].item.(model.TableLockType), } } - case 2478: + case 2507: { parser.yyVAL.item = model.TableLockRead } - case 2479: + case 2508: { parser.yyVAL.item = model.TableLockReadLocal } - case 2480: + case 2509: { parser.yyVAL.item = model.TableLockWrite } - case 2481: + case 2510: { parser.yyVAL.item = model.TableLockWriteLocal } - case 2482: + case 2511: { parser.yyVAL.item = []ast.TableLock{yyS[yypt-0].item.(ast.TableLock)} } - case 2483: + case 2512: { parser.yyVAL.item = append(yyS[yypt-2].item.([]ast.TableLock), yyS[yypt-0].item.(ast.TableLock)) } - case 2484: + case 2513: { parser.yyVAL.statement = &ast.NonTransactionalDMLStmt{ DryRun: yyS[yypt-1].item.(int), @@ -21769,41 +22032,41 @@ yynewstate: DMLStmt: yyS[yypt-0].statement.(ast.ShardableDMLStmt), } } - case 2488: + case 2518: { parser.yyVAL.item = ast.NoDryRun } - case 2489: + case 2519: { parser.yyVAL.item = ast.DryRunSplitDml } - case 2490: + case 2520: { parser.yyVAL.item = ast.DryRunQuery } - case 2491: + case 2521: { parser.yyVAL.item = (*ast.ColumnName)(nil) } - case 2492: + case 2522: { parser.yyVAL.item = yyS[yypt-0].item.(*ast.ColumnName) } - case 2493: + case 2523: { parser.yyVAL.statement = &ast.KillStmt{ ConnectionID: getUint64FromNUM(yyS[yypt-0].item), TiDBExtension: yyS[yypt-1].item.(bool), } } - case 2494: + case 2524: { parser.yyVAL.statement = &ast.KillStmt{ ConnectionID: getUint64FromNUM(yyS[yypt-0].item), TiDBExtension: yyS[yypt-2].item.(bool), } } - case 2495: + case 2525: { parser.yyVAL.statement = &ast.KillStmt{ ConnectionID: getUint64FromNUM(yyS[yypt-0].item), @@ -21811,47 +22074,70 @@ yynewstate: TiDBExtension: yyS[yypt-2].item.(bool), } } - case 2496: + case 2526: { parser.yyVAL.statement = &ast.KillStmt{ TiDBExtension: yyS[yypt-1].item.(bool), Expr: yyS[yypt-0].expr, } } - case 2497: + case 2527: { parser.yyVAL.item = false } - case 2498: + case 2528: { parser.yyVAL.item = true } - case 2499: + case 2529: { parser.yyVAL.statement = &ast.LoadStatsStmt{ Path: yyS[yypt-0].ident, } } - case 2500: + case 2530: { parser.yyVAL.statement = &ast.LockStatsStmt{ Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 2501: + case 2531: { parser.yyVAL.statement = &ast.UnlockStatsStmt{ Tables: yyS[yypt-0].item.([]*ast.TableName), } } - case 2502: + case 2532: { parser.yyVAL.statement = &ast.DropPlacementPolicyStmt{ IfExists: yyS[yypt-1].item.(bool), PolicyName: model.NewCIStr(yyS[yypt-0].ident), } } - case 2503: + case 2533: + { + parser.yyVAL.statement = &ast.CreateResourceGroupStmt{ + IfNotExists: yyS[yypt-2].item.(bool), + ResourceGroupName: model.NewCIStr(yyS[yypt-1].ident), + ResourceGroupOptionList: yyS[yypt-0].item.([]*ast.ResourceGroupOption), + } + } + case 2534: + { + parser.yyVAL.statement = &ast.AlterResourceGroupStmt{ + IfExists: yyS[yypt-2].item.(bool), + ResourceGroupName: model.NewCIStr(yyS[yypt-1].ident), + ResourceGroupOptionList: yyS[yypt-0].item.([]*ast.ResourceGroupOption), + } + } + case 2535: + { + parser.yyVAL.statement = &ast.DropResourceGroupStmt{ + IfExists: yyS[yypt-1].item.(bool), + ResourceGroupName: model.NewCIStr(yyS[yypt-0].ident), + } + } + case 2536: { parser.yyVAL.statement = &ast.CreatePlacementPolicyStmt{ OrReplace: yyS[yypt-5].item.(bool), @@ -21860,7 +22146,7 @@ yynewstate: PlacementOptions: yyS[yypt-0].item.([]*ast.PlacementOption), } } - case 2504: + case 2537: { parser.yyVAL.statement = &ast.AlterPlacementPolicyStmt{ IfExists: yyS[yypt-2].item.(bool), @@ -21868,7 +22154,7 @@ yynewstate: PlacementOptions: yyS[yypt-0].item.([]*ast.PlacementOption), } } - case 2505: + case 2538: { parser.yyVAL.statement = &ast.CreateSequenceStmt{ IfNotExists: yyS[yypt-3].item.(bool), @@ -21877,87 +22163,87 @@ yynewstate: TblOptions: yyS[yypt-0].item.([]*ast.TableOption), } } - case 2506: + case 2539: { parser.yyVAL.item = []*ast.SequenceOption{} } - case 2508: + case 2541: { parser.yyVAL.item = []*ast.SequenceOption{yyS[yypt-0].item.(*ast.SequenceOption)} } - case 2509: + case 2542: { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.SequenceOption), yyS[yypt-0].item.(*ast.SequenceOption)) } - case 2510: + case 2543: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceOptionIncrementBy, IntValue: yyS[yypt-0].item.(int64)} } - case 2511: + case 2544: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceOptionIncrementBy, IntValue: yyS[yypt-0].item.(int64)} } - case 2512: + case 2545: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceStartWith, IntValue: yyS[yypt-0].item.(int64)} } - case 2513: + case 2546: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceStartWith, IntValue: yyS[yypt-0].item.(int64)} } - case 2514: + case 2547: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceMinValue, IntValue: yyS[yypt-0].item.(int64)} } - case 2515: + case 2548: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoMinValue} } - case 2516: + case 2549: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoMinValue} } - case 2517: + case 2550: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceMaxValue, IntValue: yyS[yypt-0].item.(int64)} } - case 2518: + case 2551: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoMaxValue} } - case 2519: + case 2552: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoMaxValue} } - case 2520: + case 2553: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceCache, IntValue: yyS[yypt-0].item.(int64)} } - case 2521: + case 2554: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoCache} } - case 2522: + case 2555: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoCache} } - case 2523: + case 2556: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceCycle} } - case 2524: + case 2557: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoCycle} } - case 2525: + case 2558: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceNoCycle} } - case 2527: + case 2560: { parser.yyVAL.item = yyS[yypt-0].item } - case 2528: + case 2561: { unsigned_num := getUint64FromNUM(yyS[yypt-0].item) if unsigned_num > 9223372036854775808 { @@ -21970,14 +22256,14 @@ yynewstate: parser.yyVAL.item = -int64(unsigned_num) } } - case 2529: + case 2562: { parser.yyVAL.statement = &ast.DropSequenceStmt{ IfExists: yyS[yypt-1].item.(bool), Sequences: yyS[yypt-0].item.([]*ast.TableName), } } - case 2530: + case 2563: { parser.yyVAL.statement = &ast.AlterSequenceStmt{ IfExists: yyS[yypt-2].item.(bool), @@ -21985,27 +22271,27 @@ yynewstate: SeqOptions: yyS[yypt-0].item.([]*ast.SequenceOption), } } - case 2531: + case 2564: { parser.yyVAL.item = []*ast.SequenceOption{yyS[yypt-0].item.(*ast.SequenceOption)} } - case 2532: + case 2565: { parser.yyVAL.item = append(yyS[yypt-1].item.([]*ast.SequenceOption), yyS[yypt-0].item.(*ast.SequenceOption)) } - case 2534: + case 2567: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceRestart} } - case 2535: + case 2568: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceRestartWith, IntValue: yyS[yypt-0].item.(int64)} } - case 2536: + case 2569: { parser.yyVAL.item = &ast.SequenceOption{Tp: ast.SequenceRestartWith, IntValue: yyS[yypt-0].item.(int64)} } - case 2537: + case 2570: { x := &ast.IndexAdviseStmt{ Path: yyS[yypt-3].ident, @@ -22022,42 +22308,42 @@ yynewstate: } parser.yyVAL.statement = x } - case 2538: + case 2571: { parser.yyVAL.item = uint64(ast.UnspecifiedSize) } - case 2539: + case 2572: { parser.yyVAL.item = getUint64FromNUM(yyS[yypt-0].item) } - case 2540: + case 2573: { parser.yyVAL.item = nil } - case 2541: + case 2574: { parser.yyVAL.item = &ast.MaxIndexNumClause{ PerTable: yyS[yypt-1].item.(uint64), PerDB: yyS[yypt-0].item.(uint64), } } - case 2542: + case 2575: { parser.yyVAL.item = uint64(ast.UnspecifiedSize) } - case 2543: + case 2576: { parser.yyVAL.item = getUint64FromNUM(yyS[yypt-0].item) } - case 2544: + case 2577: { parser.yyVAL.item = uint64(ast.UnspecifiedSize) } - case 2545: + case 2578: { parser.yyVAL.item = getUint64FromNUM(yyS[yypt-0].item) } - case 2546: + case 2579: { // Parse it but will ignore it switch yyS[yypt-0].ident { @@ -22072,19 +22358,19 @@ yynewstate: } parser.yyVAL.ident = yyS[yypt-0].ident } - case 2547: + case 2580: { parser.yyVAL.item = append([]*ast.RowExpr{}, yyS[yypt-0].item.(*ast.RowExpr)) } - case 2548: + case 2581: { parser.yyVAL.item = append(yyS[yypt-2].item.([]*ast.RowExpr), yyS[yypt-0].item.(*ast.RowExpr)) } - case 2549: + case 2582: { parser.yyVAL.item = &ast.RowExpr{Values: yyS[yypt-0].item.([]ast.ExprNode)} } - case 2550: + case 2583: { x := &ast.PlanReplayerStmt{ Stmt: yyS[yypt-0].statement, @@ -22100,7 +22386,7 @@ yynewstate: parser.yyVAL.statement = x } - case 2551: + case 2584: { x := &ast.PlanReplayerStmt{ Stmt: yyS[yypt-0].statement, @@ -22116,7 +22402,7 @@ yynewstate: parser.yyVAL.statement = x } - case 2552: + case 2585: { x := &ast.PlanReplayerStmt{ Stmt: nil, @@ -22136,7 +22422,7 @@ yynewstate: parser.yyVAL.statement = x } - case 2553: + case 2586: { x := &ast.PlanReplayerStmt{ Stmt: nil, @@ -22156,7 +22442,7 @@ yynewstate: parser.yyVAL.statement = x } - case 2554: + case 2587: { x := &ast.PlanReplayerStmt{ Stmt: nil, @@ -22166,7 +22452,7 @@ yynewstate: } parser.yyVAL.statement = x } - case 2555: + case 2588: { x := &ast.PlanReplayerStmt{ Stmt: nil, @@ -22176,7 +22462,7 @@ yynewstate: } parser.yyVAL.statement = x } - case 2556: + case 2589: { x := &ast.PlanReplayerStmt{ Stmt: nil, @@ -22188,6 +22474,21 @@ yynewstate: Limit: nil, } + parser.yyVAL.statement = x + } + case 2590: + { + x := &ast.PlanReplayerStmt{ + Stmt: nil, + Analyze: false, + Capture: true, + SQLDigest: yyS[yypt-1].ident, + PlanDigest: yyS[yypt-0].ident, + Where: nil, + OrderBy: nil, + Limit: nil, + } + parser.yyVAL.statement = x } diff --git a/parser/parser.y b/parser/parser.y index 55ee369aa41e4..c4c4e82e3fa67 100644 --- a/parser/parser.y +++ b/parser/parser.y @@ -373,6 +373,7 @@ import ( deallocate "DEALLOCATE" definer "DEFINER" delayKeyWrite "DELAY_KEY_WRITE" + digest "DIGEST" directory "DIRECTORY" disable "DISABLE" disabled "DISABLED" @@ -531,11 +532,13 @@ import ( replicas "REPLICAS" replication "REPLICATION" required "REQUIRED" + resource "RESOURCE" respect "RESPECT" restart "RESTART" restore "RESTORE" restores "RESTORES" resume "RESUME" + reuse "REUSE" reverse "REVERSE" role "ROLE" rollback "ROLLBACK" @@ -613,6 +616,8 @@ import ( transaction "TRANSACTION" triggers "TRIGGERS" truncate "TRUNCATE" + ttl "TTL" + ttlEnable "TTL_ENABLE" unbounded "UNBOUNDED" uncommitted "UNCOMMITTED" undefined "UNDEFINED" @@ -696,6 +701,7 @@ import ( sum "SUM" substring "SUBSTRING" target "TARGET" + tidbJson "TIDB_JSON" timestampAdd "TIMESTAMPADD" timestampDiff "TIMESTAMPDIFF" tls "TLS" @@ -718,6 +724,10 @@ import ( voter "VOTER" voterConstraints "VOTER_CONSTRAINTS" voters "VOTERS" + rruRate "RRU_PER_SEC" + wruRate "WRU_PER_SEC" + ioReadBandwidth "IO_READ_BANDWIDTH" + ioWriteBandwidth "IO_WRITE_BANDWIDTH" /* The following tokens belong to TiDBKeyword. Notice: make sure these tokens are contained in TiDBKeyword. */ admin "ADMIN" @@ -864,6 +874,7 @@ import ( AlterImportStmt "ALTER IMPORT statement" AlterInstanceStmt "Alter instance statement" AlterPolicyStmt "Alter Placement Policy statement" + AlterResourceGroupStmt "Alter Resource Group statement" AlterSequenceStmt "Alter sequence statement" AnalyzeTableStmt "Analyze table statement" BeginTransactionStmt "BEGIN TRANSACTION statement" @@ -879,6 +890,7 @@ import ( CreateImportStmt "CREATE IMPORT statement" CreateBindingStmt "CREATE BINDING statement" CreatePolicyStmt "CREATE PLACEMENT POLICY statement" + CreateResourceGroupStmt "CREATE RESOURCE GROUP statement" CreateSequenceStmt "CREATE SEQUENCE statement" CreateStatisticsStmt "CREATE STATISTICS statement" DoStmt "Do statement" @@ -966,7 +978,7 @@ import ( AdminStmtLimitOpt "Admin show ddl jobs limit option" AllOrPartitionNameList "All or partition name list" AlgorithmClause "Alter table algorithm" - AlterTablePartitionOpt "Alter table partition option" + AlterTableSpecSingleOpt "Alter table single option" AlterTableSpec "Alter table specification" AlterTableSpecList "Alter table specification list" AlterTableSpecListOpt "Alter table specification list optional" @@ -984,7 +996,6 @@ import ( Boolean "Boolean (0, 1, false, true)" OptionalBraces "optional braces" CastType "Cast function target type" - ClearPasswordExpireOptions "Clear password expire options" ColumnDef "table column definition" ColumnDefList "table column definition list" ColumnName "column name" @@ -1133,7 +1144,6 @@ import ( PartDefValuesOpt "VALUES {LESS THAN {(expr | value_list) | MAXVALUE} | IN {value_list}" PartDefOptionList "PartDefOption list" PartDefOption "COMMENT [=] xxx | TABLESPACE [=] tablespace_name | ENGINE [=] xxx" - PasswordExpire "Single password option for create user statement" PasswordOrLockOption "Single password or lock option for create user statement" PasswordOrLockOptionList "Password or lock options for create user statement" PasswordOrLockOptions "Optional password or lock options for create user statement" @@ -1347,6 +1357,8 @@ import ( PlacementPolicyOption "Anonymous or placement policy option" DirectPlacementOption "Subset of anonymous or direct placement option" PlacementOptionList "Anomymous or direct placement option list" + DirectResourceGroupOption "Subset of anonymous or direct resource group option" + ResourceGroupOptionList "Anomymous or direct resource group option list" AttributesOpt "Attributes options" AllColumnsOrPredicateColumnsOpt "all columns or predicate columns option" StatsOptionsOpt "Stats options" @@ -1412,6 +1424,7 @@ import ( ColumnFormat "Column format" DBName "Database Name" PolicyName "Placement Policy Name" + ResourceGroupName "Resource Group Name" ExplainFormatType "explain format type" FieldAsName "Field alias name" FieldAsNameOpt "Field alias name opt" @@ -1510,7 +1523,7 @@ Start: * See https://dev.mysql.com/doc/refman/5.7/en/alter-table.html *******************************************************************************************/ AlterTableStmt: - "ALTER" IgnoreOptional "TABLE" TableName AlterTableSpecListOpt AlterTablePartitionOpt + "ALTER" IgnoreOptional "TABLE" TableName AlterTableSpecListOpt AlterTableSpecSingleOpt { specs := $5.([]*ast.AlterTableSpec) if $6 != nil { @@ -1566,6 +1579,42 @@ AlterTableStmt: } } +ResourceGroupOptionList: + DirectResourceGroupOption + { + $$ = []*ast.ResourceGroupOption{$1.(*ast.ResourceGroupOption)} + } +| ResourceGroupOptionList DirectResourceGroupOption + { + $$ = append($1.([]*ast.ResourceGroupOption), $2.(*ast.ResourceGroupOption)) + } +| ResourceGroupOptionList ',' DirectResourceGroupOption + { + $$ = append($1.([]*ast.ResourceGroupOption), $3.(*ast.ResourceGroupOption)) + } + +DirectResourceGroupOption: + "RRU_PER_SEC" EqOpt stringLit + { + $$ = &ast.ResourceGroupOption{Tp: ast.ResourceRRURate, StrValue: $3} + } +| "WRU_PER_SEC" EqOpt stringLit + { + $$ = &ast.ResourceGroupOption{Tp: ast.ResourceWRURate, StrValue: $3} + } +| "CPU" EqOpt stringLit + { + $$ = &ast.ResourceGroupOption{Tp: ast.ResourceUnitCPU, StrValue: $3} + } +| "IO_READ_BANDWIDTH" EqOpt stringLit + { + $$ = &ast.ResourceGroupOption{Tp: ast.ResourceUnitIOReadRate, StrValue: $3} + } +| "IO_WRITE_BANDWIDTH" EqOpt stringLit + { + $$ = &ast.ResourceGroupOption{Tp: ast.ResourceUnitIOWriteRate, StrValue: $3} + } + PlacementOptionList: DirectPlacementOption { @@ -1669,7 +1718,8 @@ StatsOptionsOpt: $$ = &ast.StatsOptionsSpec{Default: false, StatsOptions: $3} } -AlterTablePartitionOpt: +// Some spec can only have one, but not in a list +AlterTableSpecSingleOpt: PartitionOpt { if $1 != nil { @@ -1734,6 +1784,16 @@ AlterTablePartitionOpt: Options: $3.([]*ast.TableOption), } } +| "REMOVE" "TTL" + { + if !TTLFeatureGate { + yylex.AppendError(ErrSyntax) + return 1 + } + $$ = &ast.AlterTableSpec{ + Tp: ast.AlterTableRemoveTTL, + } + } LocationLabelList: { @@ -3855,6 +3915,9 @@ DBName: PolicyName: Identifier +ResourceGroupName: + Identifier + DatabaseOption: DefaultKwdOpt CharsetKw EqOpt CharsetName { @@ -4962,6 +5025,7 @@ ExplainFormatType: | "BRIEF" | "VERBOSE" | "TRUE_CARD_COST" +| "TIDB_JSON" SavepointStmt: "SAVEPOINT" Identifier @@ -6135,6 +6199,7 @@ UnReservedKeyword: | "REBUILD" | "REDUNDANT" | "REORGANIZE" +| "RESOURCE" | "RESTART" | "ROLE" | "ROLLBACK" @@ -6391,6 +6456,10 @@ UnReservedKeyword: | "NONCLUSTERED" | "PRESERVE" | "TOKEN_ISSUER" +| "TTL" +| "TTL_ENABLE" +| "DIGEST" +| "REUSE" %prec lowerThanEq TiDBKeyword: "ADMIN" @@ -6524,6 +6593,11 @@ NotKeywordToken: | "FOLLOWER_CONSTRAINTS" | "LEARNER_CONSTRAINTS" | "VOTER_CONSTRAINTS" +| "TIDB_JSON" +| "IO_READ_BANDWIDTH" +| "IO_WRITE_BANDWIDTH" +| "RRU_PER_SEC" +| "WRU_PER_SEC" /************************************************************************************ * @@ -11098,7 +11172,7 @@ ShowTargetFilterable: { $$ = &ast.ShowStmt{Tp: ast.ShowStatsHealthy} } -| "STATS_LOCKED" +| "STATS_LOCKED" { $$ = &ast.ShowStmt{Tp: ast.ShowStatsLocked, Table: &ast.TableName{Name: model.NewCIStr("STATS_TABLE_LOCKED"), Schema: model.NewCIStr(mysql.SystemDB)}} } @@ -11347,6 +11421,7 @@ Statement: | AlterInstanceStmt | AlterSequenceStmt | AlterPolicyStmt +| AlterResourceGroupStmt | AnalyzeTableStmt | BeginTransactionStmt | BinlogStmt @@ -11366,6 +11441,7 @@ Statement: | CreateRoleStmt | CreateBindingStmt | CreatePolicyStmt +| CreateResourceGroupStmt | CreateSequenceStmt | CreateStatisticsStmt | DoStmt @@ -11761,6 +11837,35 @@ TableOption: // Parse it but will ignore it $$ = &ast.TableOption{Tp: ast.TableOptionEncryption, StrValue: $3} } +| "TTL" EqOpt Identifier '+' "INTERVAL" Literal TimeUnit + { + if !TTLFeatureGate { + yylex.AppendError(ErrSyntax) + return 1 + } + $$ = &ast.TableOption{ + Tp: ast.TableOptionTTL, + ColumnName: &ast.ColumnName{Name: model.NewCIStr($3)}, + Value: ast.NewValueExpr($6, parser.charset, parser.collation), + TimeUnitValue: &ast.TimeUnitExpr{Unit: $7.(ast.TimeUnitType)}, + } + } +| "TTL_ENABLE" EqOpt stringLit + { + if !TTLFeatureGate { + yylex.AppendError(ErrSyntax) + return 1 + } + onOrOff := strings.ToLower($3) + if onOrOff == "on" { + $$ = &ast.TableOption{Tp: ast.TableOptionTTLEnable, BoolValue: true} + } else if onOrOff == "off" { + $$ = &ast.TableOption{Tp: ast.TableOptionTTLEnable, BoolValue: false} + } else { + yylex.AppendError(yylex.Errorf("The TTL_ENABLE option has to be set 'ON' or 'OFF'")) + return 1 + } + } ForceOpt: /* empty */ @@ -12923,49 +13028,56 @@ PasswordOrLockOption: Type: ast.Lock, } } -| PasswordExpire +| "PASSWORD" "HISTORY" "DEFAULT" { $$ = &ast.PasswordOrLockOption{ - Type: ast.PasswordExpire, + Type: ast.PasswordHistoryDefault, } - yylex.AppendError(yylex.Errorf("TiDB does not support PASSWORD EXPIRE, they would be parsed but ignored.")) - parser.lastErrorAsWarn() } -| PasswordExpire "INTERVAL" Int64Num "DAY" +| "PASSWORD" "HISTORY" NUM { $$ = &ast.PasswordOrLockOption{ - Type: ast.PasswordExpireInterval, + Type: ast.PasswordHistory, Count: $3.(int64), } - yylex.AppendError(yylex.Errorf("TiDB does not support PASSWORD EXPIRE, they would be parsed but ignored.")) - parser.lastErrorAsWarn() } -| PasswordExpire "NEVER" +| "PASSWORD" "REUSE" "INTERVAL" "DEFAULT" { $$ = &ast.PasswordOrLockOption{ - Type: ast.PasswordExpireNever, + Type: ast.PasswordReuseDefault, } - yylex.AppendError(yylex.Errorf("TiDB does not support PASSWORD EXPIRE, they would be parsed but ignored.")) - parser.lastErrorAsWarn() } -| PasswordExpire "DEFAULT" +| "PASSWORD" "REUSE" "INTERVAL" NUM "DAY" { $$ = &ast.PasswordOrLockOption{ - Type: ast.PasswordExpireDefault, + Type: ast.PasswordReuseInterval, + Count: $4.(int64), } - yylex.AppendError(yylex.Errorf("TiDB does not support PASSWORD EXPIRE, they would be parsed but ignored.")) - parser.lastErrorAsWarn() } - -PasswordExpire: - "PASSWORD" "EXPIRE" ClearPasswordExpireOptions +| "PASSWORD" "EXPIRE" { - $$ = nil + $$ = &ast.PasswordOrLockOption{ + Type: ast.PasswordExpire, + } } - -ClearPasswordExpireOptions: +| "PASSWORD" "EXPIRE" "INTERVAL" Int64Num "DAY" { - $$ = nil + $$ = &ast.PasswordOrLockOption{ + Type: ast.PasswordExpireInterval, + Count: $4.(int64), + } + } +| "PASSWORD" "EXPIRE" "NEVER" + { + $$ = &ast.PasswordOrLockOption{ + Type: ast.PasswordExpireNever, + } + } +| "PASSWORD" "EXPIRE" "DEFAULT" + { + $$ = &ast.PasswordOrLockOption{ + Type: ast.PasswordExpireDefault, + } } AuthOption: @@ -12996,15 +13108,17 @@ AuthOption: | "IDENTIFIED" "WITH" AuthPlugin "AS" HashString { $$ = &ast.AuthOption{ - AuthPlugin: $3, - HashString: $5, + AuthPlugin: $3, + HashString: $5, + ByHashString: true, } } | "IDENTIFIED" "BY" "PASSWORD" HashString { $$ = &ast.AuthOption{ - AuthPlugin: mysql.AuthNativePassword, - HashString: $4, + AuthPlugin: mysql.AuthNativePassword, + HashString: $4, + ByHashString: true, } } @@ -13089,6 +13203,15 @@ CreateBindingStmt: GlobalScope: $2.(bool), } + $$ = x + } +| "CREATE" GlobalScope "BINDING" "FROM" "HISTORY" "USING" "PLAN" "DIGEST" stringLit + { + x := &ast.CreateBindingStmt{ + GlobalScope: $2.(bool), + PlanDigest: $9, + } + $$ = x } @@ -13130,6 +13253,15 @@ DropBindingStmt: GlobalScope: $2.(bool), } + $$ = x + } +| "DROP" GlobalScope "BINDING" "FOR" "SQL" "DIGEST" stringLit + { + x := &ast.DropBindingStmt{ + GlobalScope: $2.(bool), + SQLDigest: $7, + } + $$ = x } @@ -13865,6 +13997,7 @@ ShardableStmt: DeleteFromStmt | UpdateStmt | InsertIntoStmt +| ReplaceIntoStmt DryRunOptions: { @@ -13968,6 +14101,35 @@ DropPolicyStmt: } } +CreateResourceGroupStmt: + "CREATE" "RESOURCE" "GROUP" IfNotExists ResourceGroupName ResourceGroupOptionList + { + $$ = &ast.CreateResourceGroupStmt{ + IfNotExists: $4.(bool), + ResourceGroupName: model.NewCIStr($5), + ResourceGroupOptionList: $6.([]*ast.ResourceGroupOption), + } + } + +AlterResourceGroupStmt: + "ALTER" "RESOURCE" "GROUP" IfExists ResourceGroupName ResourceGroupOptionList + { + $$ = &ast.AlterResourceGroupStmt{ + IfExists: $4.(bool), + ResourceGroupName: model.NewCIStr($5), + ResourceGroupOptionList: $6.([]*ast.ResourceGroupOption), + } + } + +DropPolicyStmt: + "DROP" "RESOURCE" "GROUP" IfExists PolicyName + { + $$ = &ast.DropResourceGroupStmt{ + IfExists: $4.(bool), + ResourceGroupName: model.NewCIStr($5), + } + } + CreatePolicyStmt: "CREATE" OrReplace "PLACEMENT" "POLICY" IfNotExists PolicyName PlacementOptionList { @@ -14294,7 +14456,8 @@ RowStmt: * [ASC | DESC], ... [WITH ROLLUP]] * [LIMIT {[offset,] row_count | row_count OFFSET offset}]} * | 'file_name' - * | LOAD 'file_name'] + * | LOAD 'file_name' + * | CAPTURE `sql_digest` `plan_digest`] *******************************************************************/ PlanReplayerStmt: "PLAN" "REPLAYER" "DUMP" "EXPLAIN" ExplainableStmt @@ -14401,6 +14564,21 @@ PlanReplayerStmt: Limit: nil, } + $$ = x + } +| "PLAN" "REPLAYER" "CAPTURE" stringLit stringLit + { + x := &ast.PlanReplayerStmt{ + Stmt: nil, + Analyze: false, + Capture: true, + SQLDigest: $4, + PlanDigest: $5, + Where: nil, + OrderBy: nil, + Limit: nil, + } + $$ = x } %% diff --git a/parser/parser_test.go b/parser/parser_test.go index 971adc6b25f8e..ff9ada2e2bf02 100644 --- a/parser/parser_test.go +++ b/parser/parser_test.go @@ -98,7 +98,7 @@ func TestSimple(t *testing.T) { "max_connections_per_hour", "max_queries_per_hour", "max_updates_per_hour", "max_user_connections", "event", "reload", "routine", "temporary", "following", "preceding", "unbounded", "respect", "nulls", "current", "last", "against", "expansion", "chain", "error", "general", "nvarchar", "pack_keys", "p", "shard_row_id_bits", "pre_split_regions", - "constraints", "role", "replicas", "policy", "s3", "strict", "running", "stop", "preserve", "placement", "attributes", "attribute", + "constraints", "role", "replicas", "policy", "s3", "strict", "running", "stop", "preserve", "placement", "attributes", "attribute", "resource", } for _, kw := range unreservedKws { src := fmt.Sprintf("SELECT %s FROM tbl;", kw) @@ -3625,6 +3625,31 @@ func TestDDL(t *testing.T) { {"alter placement policy if exists x regions = 'us', follower_constraints='yy'", true, "ALTER PLACEMENT POLICY IF EXISTS `x` REGIONS = 'us' FOLLOWER_CONSTRAINTS = 'yy'"}, {"alter placement policy x placement policy y", false, ""}, + // for create resource group + {"create resource group x cpu ='8c'", true, "CREATE RESOURCE GROUP `x` CPU = '8c'"}, + {"create resource group x region ='us, 3'", false, ""}, + {"create resource group x cpu='8c', io_read_bandwidth='2GB/s', io_write_bandwidth='200MB/s'", true, "CREATE RESOURCE GROUP `x` CPU = '8c' IO_READ_BANDWIDTH = '2GB/s' IO_WRITE_BANDWIDTH = '200MB/s'"}, + {"create resource group x rru_per_sec='2000'", true, "CREATE RESOURCE GROUP `x` RRU_PER_SEC = '2000'"}, + {"create resource group x wru_per_sec='200000'", true, "CREATE RESOURCE GROUP `x` WRU_PER_SEC = '200000'"}, + {"create resource group x rru_per_sec='2000' wru_per_sec='200000'", true, "CREATE RESOURCE GROUP `x` RRU_PER_SEC = '2000' WRU_PER_SEC = '200000'"}, + {"create resource group x followers=0", false, ""}, + + {"alter resource group x cpu ='8c'", true, "ALTER RESOURCE GROUP `x` CPU = '8c'"}, + {"alter resource group x region ='us, 3'", false, ""}, + {"alter resource group x cpu='8c', io_read_bandwidth='2GB/s', io_write_bandwidth='200MB/s'", true, "ALTER RESOURCE GROUP `x` CPU = '8c' IO_READ_BANDWIDTH = '2GB/s' IO_WRITE_BANDWIDTH = '200MB/s'"}, + {"alter resource group x rru_per_sec='2000'", true, "ALTER RESOURCE GROUP `x` RRU_PER_SEC = '2000'"}, + {"alter resource group x wru_per_sec='200000'", true, "ALTER RESOURCE GROUP `x` WRU_PER_SEC = '200000'"}, + {"alter resource group x rru_per_sec='2000' wru_per_sec='200000'", true, "ALTER RESOURCE GROUP `x` RRU_PER_SEC = '2000' WRU_PER_SEC = '200000'"}, + {"alter resource group x followers=0", false, ""}, + + {"drop resource group x;", true, "DROP RESOURCE GROUP `x`"}, + {"drop resource group if exists x;", true, "DROP RESOURCE GROUP IF EXISTS `x`"}, + {"drop resource group x,y", false, ""}, + {"drop resource group if exists x,y", false, ""}, + + {"CREATE ROLE `RESOURCE`", true, "CREATE ROLE `RESOURCE`@`%`"}, + {"CREATE ROLE RESOURCE", false, ""}, + // for table stats options // 1. create table with options {"CREATE TABLE t (a int) STATS_BUCKETS=1", true, "CREATE TABLE `t` (`a` INT) STATS_BUCKETS = 1"}, @@ -4402,7 +4427,7 @@ func TestPrivilege(t *testing.T) { {`CREATE USER 'ttt' REQUIRE SAN 'DNS:mysql-user, URI:spiffe://example.org/myservice'`, true, "CREATE USER `ttt`@`%` REQUIRE SAN 'DNS:mysql-user, URI:spiffe://example.org/myservice'"}, {`CREATE USER 'ttt' WITH MAX_QUERIES_PER_HOUR 2;`, true, "CREATE USER `ttt`@`%` WITH MAX_QUERIES_PER_HOUR 2"}, {`CREATE USER 'ttt'@'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 1 MAX_UPDATES_PER_HOUR 10 PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK;`, true, "CREATE USER `ttt`@`localhost` REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 1 MAX_UPDATES_PER_HOUR 10 PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK"}, - {`CREATE USER 'u1'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ;`, true, "CREATE USER `u1`@`%` IDENTIFIED WITH 'mysql_native_password' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK"}, + {`CREATE USER 'u1'@'%' IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK ;`, true, "CREATE USER `u1`@`%` IDENTIFIED WITH 'mysql_native_password' AS '' REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK"}, {`CREATE USER 'test'`, true, "CREATE USER `test`@`%`"}, {`CREATE USER test`, true, "CREATE USER `test`@`%`"}, {"CREATE USER `test`", true, "CREATE USER `test`@`%`"}, @@ -4991,6 +5016,9 @@ func TestExplain(t *testing.T) { {"EXPLAIN ANALYZE FORMAT = 'binary' SELECT 1", true, "EXPLAIN ANALYZE FORMAT = 'binary' SELECT 1"}, {"EXPLAIN ALTER TABLE t1 ADD INDEX (a)", true, "EXPLAIN FORMAT = 'row' ALTER TABLE `t1` ADD INDEX(`a`)"}, {"EXPLAIN ALTER TABLE t1 ADD a varchar(255)", true, "EXPLAIN FORMAT = 'row' ALTER TABLE `t1` ADD COLUMN `a` VARCHAR(255)"}, + {"EXPLAIN FORMAT = TIDB_JSON FOR CONNECTION 1", true, "EXPLAIN FORMAT = 'TIDB_JSON' FOR CONNECTION 1"}, + {"EXPLAIN FORMAT = tidb_json SELECT 1", true, "EXPLAIN FORMAT = 'tidb_json' SELECT 1"}, + {"EXPLAIN ANALYZE FORMAT = tidb_json SELECT 1", true, "EXPLAIN ANALYZE FORMAT = 'tidb_json' SELECT 1"}, } RunTest(t, table, false) } @@ -5106,6 +5134,10 @@ func TestBinding(t *testing.T) { {"drop session binding for replace into t1 select * from t2 where t1.a=1", true, "DROP SESSION BINDING FOR REPLACE INTO `t1` SELECT * FROM `t2` WHERE `t1`.`a`=1"}, {"DROP GLOBAL BINDING FOR REPLACE INTO `t1` SELECT * FROM `t2` WHERE `t2`.`a`=1 USING REPLACE INTO `t1` SELECT /*+ USE_INDEX(`t2` `a`)*/ * FROM `t2` WHERE `t2`.`a`=1", true, "DROP GLOBAL BINDING FOR REPLACE INTO `t1` SELECT * FROM `t2` WHERE `t2`.`a`=1 USING REPLACE INTO `t1` SELECT /*+ USE_INDEX(`t2` `a`)*/ * FROM `t2` WHERE `t2`.`a`=1"}, {"DROP SESSION BINDING FOR REPLACE INTO `t1` SELECT * FROM `t2` WHERE `t2`.`a`=1 USING REPLACE INTO `t1` SELECT /*+ USE_INDEX(`t2` `a`)*/ * FROM `t2` WHERE `t2`.`a`=1", true, "DROP SESSION BINDING FOR REPLACE INTO `t1` SELECT * FROM `t2` WHERE `t2`.`a`=1 USING REPLACE INTO `t1` SELECT /*+ USE_INDEX(`t2` `a`)*/ * FROM `t2` WHERE `t2`.`a`=1"}, + {"DROP SESSION BINDING FOR SQL DIGEST 'a'", true, "DROP SESSION BINDING FOR SQL DIGEST 'a'"}, + {"drop global binding for sql digest 's'", true, "DROP GLOBAL BINDING FOR SQL DIGEST 's'"}, + {"create session binding from history using plan digest 'sss'", true, "CREATE SESSION BINDING FROM HISTORY USING PLAN DIGEST 'sss'"}, + {"CREATE GLOBAL BINDING FROM HISTORY USING PLAN DIGEST 'sss'", true, "CREATE GLOBAL BINDING FROM HISTORY USING PLAN DIGEST 'sss'"}, } RunTest(t, table, false) @@ -6811,6 +6843,7 @@ func TestPlanReplayer(t *testing.T) { {"PLAN REPLAYER LOAD '/tmp/sdfaalskdjf.zip'", true, "PLAN REPLAYER LOAD '/tmp/sdfaalskdjf.zip'"}, {"PLAN REPLAYER DUMP EXPLAIN 'sql.txt'", true, "PLAN REPLAYER DUMP EXPLAIN 'sql.txt'"}, {"PLAN REPLAYER DUMP EXPLAIN ANALYZE 'sql.txt'", true, "PLAN REPLAYER DUMP EXPLAIN ANALYZE 'sql.txt'"}, + {"PLAN REPLAYER CAPTURE '123' '123'", true, "PLAN REPLAYER CAPTURE '123' '123'"}, } RunTest(t, table, false) @@ -7006,3 +7039,52 @@ func TestIntervalPartition(t *testing.T) { RunTest(t, table, false) } + +func TestTTLTableOption(t *testing.T) { + parser.TTLFeatureGate = true + + table := []testCase{ + // create table with various temporal interval + {"create table t (created_at datetime) TTL = created_at + INTERVAL 3.1415 YEAR", true, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL 3.1415 YEAR"}, + {"create table t (created_at datetime) TTL = created_at + INTERVAL '1 1:1:1' DAY_SECOND", true, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL _UTF8MB4'1 1:1:1' DAY_SECOND"}, + {"create table t (created_at datetime) TTL = created_at + INTERVAL 1 YEAR", true, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL 1 YEAR"}, + {"create table t (created_at datetime) TTL = created_at + INTERVAL 1 YEAR TTL_ENABLE = 'OFF'", true, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL 1 YEAR TTL_ENABLE = 'OFF'"}, + {"create table t (created_at datetime) TTL created_at + INTERVAL 1 YEAR TTL_ENABLE 'OFF'", true, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL 1 YEAR TTL_ENABLE = 'OFF'"}, + {"create table t (created_at datetime) /*T![ttl] ttl=created_at + INTERVAL 1 YEAR ttl_enable='ON'*/", true, "CREATE TABLE `t` (`created_at` DATETIME) TTL = `created_at` + INTERVAL 1 YEAR TTL_ENABLE = 'ON'"}, + + // alter table with various temporal interval + {"alter table t TTL = created_at + INTERVAL 1 MONTH", true, "ALTER TABLE `t` TTL = `created_at` + INTERVAL 1 MONTH"}, + {"alter table t TTL_ENABLE = 'ON'", true, "ALTER TABLE `t` TTL_ENABLE = 'ON'"}, + {"alter table t TTL_ENABLE = 'OFF'", true, "ALTER TABLE `t` TTL_ENABLE = 'OFF'"}, + {"alter table t TTL = created_at + INTERVAL 1 MONTH TTL_ENABLE 'OFF'", true, "ALTER TABLE `t` TTL = `created_at` + INTERVAL 1 MONTH TTL_ENABLE = 'OFF'"}, + {"alter table t /*T![ttl] ttl=created_at + INTERVAL 1 YEAR ttl_enable='ON'*/", true, "ALTER TABLE `t` TTL = `created_at` + INTERVAL 1 YEAR TTL_ENABLE = 'ON'"}, + + // alter table to remove ttl settings + {"alter table t remove ttl", true, "ALTER TABLE `t` REMOVE TTL"}, + + // validate invalid TTL_ENABLE settings + {"create table t (created_at datetime) TTL_ENABLE = 'test_case'", false, ""}, + {"create table t (created_at datetime) /*T![ttl] TTL_ENABLE = 'test_case' */", false, ""}, + {"alter table t /*T![ttl] TTL_ENABLE = 'test_case' */", false, ""}, + } + + RunTest(t, table, false) +} + +func TestTTLFeatureGate(t *testing.T) { + parser.TTLFeatureGate = false + + table := []testCase{ + {"create table t (created_at datetime) TTL = created_at + INTERVAL 3.1415 YEAR", false, ""}, + {"create table t (created_at datetime) TTL_ENABLE = 'OFF'", false, ""}, + {"create table t (created_at datetime) TTL created_at + INTERVAL 1 YEAR TTL_ENABLE 'OFF'", false, ""}, + {"create table t (created_at datetime) /*T![ttl] ttl=created_at + INTERVAL 1 YEAR ttl_enable='ON'*/", false, ""}, + {"alter table t TTL = created_at + INTERVAL 1 MONTH", false, ""}, + {"alter table t TTL_ENABLE = 'ON'", false, ""}, + {"alter table t TTL = created_at + INTERVAL 1 MONTH TTL_ENABLE 'OFF'", false, ""}, + {"alter table t /*T![ttl] ttl=created_at + INTERVAL 1 YEAR ttl_enable='ON'*/", false, ""}, + {"alter table t remove ttl", false, ""}, + } + + RunTest(t, table, false) +} diff --git a/parser/tidb/features.go b/parser/tidb/features.go index 296a3d6b37d9b..e1828d5d8fe79 100644 --- a/parser/tidb/features.go +++ b/parser/tidb/features.go @@ -28,6 +28,10 @@ const ( FeatureIDForceAutoInc = "force_inc" // FeatureIDPlacement is the `placement rule` feature. FeatureIDPlacement = "placement" + // FeatureIDTTL is the `ttl` feature + FeatureIDTTL = "ttl" + // FeatureIDResouceGroup is the `resource group` feature. + FeatureIDResouceGroup = "resource_group" ) var featureIDs = map[string]struct{}{ @@ -37,6 +41,7 @@ var featureIDs = map[string]struct{}{ FeatureIDClusteredIndex: {}, FeatureIDForceAutoInc: {}, FeatureIDPlacement: {}, + FeatureIDTTL: {}, } // CanParseFeature is used to check if a feature can be parsed. diff --git a/parser/ttlfeaturegate.go b/parser/ttlfeaturegate.go new file mode 100644 index 0000000000000..d18633f137afe --- /dev/null +++ b/parser/ttlfeaturegate.go @@ -0,0 +1,17 @@ +// Copyright 2019 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// See the License for the specific language governing permissions and +// limitations under the License. + +package parser + +// TTLFeatureGate determines whether to enable the ttl related syntax in parser +var TTLFeatureGate = false diff --git a/parser/types/field_type.go b/parser/types/field_type.go index efc1c20d0c18f..f555c2dc70acf 100644 --- a/parser/types/field_type.go +++ b/parser/types/field_type.go @@ -77,6 +77,16 @@ func (ft *FieldType) IsDecimalValid() bool { return true } +// IsVarLengthType Determine whether the column type is a variable-length type +func (ft *FieldType) IsVarLengthType() bool { + switch ft.tp { + case mysql.TypeVarchar, mysql.TypeVarString, mysql.TypeJSON, mysql.TypeBlob, mysql.TypeTinyBlob, mysql.TypeMediumBlob, mysql.TypeLongBlob: + return true + default: + return false + } +} + // GetType returns the type of the FieldType. func (ft *FieldType) GetType() byte { return ft.tp diff --git a/planner/cascades/testdata/integration_suite_in.json b/planner/cascades/testdata/integration_suite_in.json index 569cb12860ac3..c5ac4131897cd 100644 --- a/planner/cascades/testdata/integration_suite_in.json +++ b/planner/cascades/testdata/integration_suite_in.json @@ -124,7 +124,7 @@ { "name": "TestMemTableScan", "cases": [ - "select USER, HOST, DB, COMMAND, TIME, STATE, INFO, DIGEST from information_schema.processlist" + "select USER, HOST, DB, COMMAND, TIME, STATE, INFO, `DIGEST` from information_schema.processlist" ] }, { @@ -142,7 +142,7 @@ { "name": "TestCascadePlannerHashedPartTable", "cases": [ - "select * from pt1" + "select * from pt1 order by a" ] }, { diff --git a/planner/cascades/testdata/integration_suite_out.json b/planner/cascades/testdata/integration_suite_out.json index e8d98a41ec557..25d3a20d484af 100644 --- a/planner/cascades/testdata/integration_suite_out.json +++ b/planner/cascades/testdata/integration_suite_out.json @@ -1093,12 +1093,12 @@ "Name": "TestMemTableScan", "Cases": [ { - "SQL": "select USER, HOST, DB, COMMAND, TIME, STATE, INFO, DIGEST from information_schema.processlist", + "SQL": "select USER, HOST, DB, COMMAND, TIME, STATE, INFO, `DIGEST` from information_schema.processlist", "Plan": [ "Projection_3 10000.00 root Column#2, Column#3, Column#4, Column#5, Column#6, Column#7, Column#8, Column#9", "└─MemTableScan_4 10000.00 root table:PROCESSLIST " ], - "Result": [" test Sleep 0 autocommit select USER, HOST, DB, COMMAND, TIME, STATE, INFO, DIGEST from information_schema.processlist 7284ef6cf62f14bccb9fa24aff861b419e9cf59b2c098d3069c7c10bc35d0c14"] + "Result": [" test Sleep 0 autocommit select USER, HOST, DB, COMMAND, TIME, STATE, INFO, `DIGEST` from information_schema.processlist 7284ef6cf62f14bccb9fa24aff861b419e9cf59b2c098d3069c7c10bc35d0c14"] } ] }, @@ -1198,17 +1198,18 @@ "Name": "TestCascadePlannerHashedPartTable", "Cases": [ { - "SQL": "select * from pt1", + "SQL": "select * from pt1 order by a", "Plan": [ - "TableReader_5 10000.00 root partition:all data:TableFullScan_6", - "└─TableFullScan_6 10000.00 cop[tikv] table:pt1 keep order:false, stats:pseudo" + "Sort_11 10000.00 root test.pt1.a", + "└─TableReader_9 10000.00 root partition:all data:TableFullScan_10", + " └─TableFullScan_10 10000.00 cop[tikv] table:pt1 keep order:false, stats:pseudo" ], "Result": [ - "4 40", "1 10", - "5 50", "2 20", - "3 30" + "3 30", + "4 40", + "5 50" ] } ] diff --git a/planner/core/BUILD.bazel b/planner/core/BUILD.bazel index 9db73e6d5fcb8..dcbb25512f458 100644 --- a/planner/core/BUILD.bazel +++ b/planner/core/BUILD.bazel @@ -137,6 +137,7 @@ go_library( "//util/set", "//util/size", "//util/sqlexec", + "//util/stmtsummary", "//util/stringutil", "//util/texttree", "//util/tracing", @@ -167,6 +168,7 @@ go_test( "find_best_task_test.go", "flat_plan_test.go", "fragment_test.go", + "indexmerge_intersection_test.go", "indexmerge_test.go", "integration_partition_test.go", "integration_test.go", diff --git a/planner/core/common_plans.go b/planner/core/common_plans.go index 688e9e6531e18..73bb25e0d874c 100644 --- a/planner/core/common_plans.go +++ b/planner/core/common_plans.go @@ -250,6 +250,8 @@ const ( OpReloadBindings // OpSetBindingStatus is used to set binding status. OpSetBindingStatus + // OpSQLBindDropByDigest is used to drop SQL binds by digest + OpSQLBindDropByDigest ) // SQLBindPlan represents a plan for SQL bind. @@ -265,6 +267,9 @@ type SQLBindPlan struct { Charset string Collation string NewStatus string + Source string // Source indicate how this binding was created, eg: bindinfo.Manual or bindinfo.History + SQLDigest string + PlanDigest string } // Simple represents a simple statement plan which doesn't need any optimization. @@ -587,6 +592,10 @@ type PlanReplayer struct { Analyze bool Load bool File string + + Capture bool + SQLDigest string + PlanDigest string } // IndexAdvise represents a index advise plan. @@ -645,6 +654,37 @@ type SelectInto struct { IntoOpt *ast.SelectIntoOption } +// ExplainInfoForEncode store explain info for JSON encode +type ExplainInfoForEncode struct { + ID string `json:"id"` + EstRows string `json:"estRows"` + ActRows string `json:"actRows,omitempty"` + TaskType string `json:"taskType"` + AccessObject string `json:"accessObject,omitempty"` + ExecuteInfo string `json:"executeInfo,omitempty"` + OperatorInfo string `json:"operatorInfo,omitempty"` + EstCost string `json:"estCost,omitempty"` + CostFormula string `json:"costFormula,omitempty"` + MemoryInfo string `json:"memoryInfo,omitempty"` + DiskInfo string `json:"diskInfo,omitempty"` + TotalMemoryConsumed string `json:"totalMemoryConsumed,omitempty"` + SubOperators []*ExplainInfoForEncode `json:"subOperators,omitempty"` +} + +// JSONToString convert json to string +func JSONToString(j []*ExplainInfoForEncode) (string, error) { + byteBuffer := bytes.NewBuffer([]byte{}) + encoder := json.NewEncoder(byteBuffer) + // avoid wrongly embedding + encoder.SetEscapeHTML(false) + encoder.SetIndent("", " ") + err := encoder.Encode(j) + if err != nil { + return "", err + } + return byteBuffer.String(), nil +} + // Explain represents a explain plan. type Explain struct { baseSchemaProducer @@ -710,6 +750,8 @@ func (e *Explain) prepareSchema() error { fieldNames = []string{"hint"} case format == types.ExplainFormatBinary: fieldNames = []string{"binary plan"} + case format == types.ExplainFormatTiDBJSON: + fieldNames = []string{"TiDB_JSON"} default: return errors.Errorf("explain format '%s' is not supported now", e.Format) } @@ -743,7 +785,8 @@ func (e *Explain) RenderResult() error { } if pp.SCtx().GetSessionVars().CostModelVersion == modelVer2 { // output cost formula and factor costs through warning under model ver2 and true_card_cost mode for cost calibration. - trace, _ := pp.getPlanCostVer2(property.RootTaskType, NewDefaultPlanCostOption()) + cost, _ := pp.getPlanCostVer2(property.RootTaskType, NewDefaultPlanCostOption()) + trace := cost.trace pp.SCtx().GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("cost formula: %v", trace.formula)) data, err := json.Marshal(trace.factorCosts) if err != nil { @@ -796,6 +839,21 @@ func (e *Explain) RenderResult() error { flat := FlattenPhysicalPlan(e.TargetPlan, false) str := BinaryPlanStrFromFlatPlan(e.ctx, flat) e.Rows = append(e.Rows, []string{str}) + case types.ExplainFormatTiDBJSON: + flat := FlattenPhysicalPlan(e.TargetPlan, true) + encodes := e.explainFlatPlanInJSONFormat(flat) + if e.Analyze && len(encodes) > 0 && + e.SCtx().GetSessionVars().MemoryDebugModeMinHeapInUse != 0 && + e.SCtx().GetSessionVars().MemoryDebugModeAlarmRatio > 0 { + encodeRoot := encodes[0] + tracker := e.SCtx().GetSessionVars().MemTracker + encodeRoot.TotalMemoryConsumed = tracker.FormatBytes(tracker.MaxConsumed()) + } + if str, err := JSONToString(encodes); err == nil { + e.Rows = append(e.Rows, []string{str}) + } else { + return err + } default: return errors.Errorf("explain format '%s' is not supported now", e.Format) } @@ -816,6 +874,43 @@ func (e *Explain) explainFlatPlanInRowFormat(flat *FlatPhysicalPlan) { } } +func (e *Explain) explainFlatPlanInJSONFormat(flat *FlatPhysicalPlan) (encodes []*ExplainInfoForEncode) { + if flat == nil || len(flat.Main) == 0 || flat.InExplain { + return + } + // flat.Main[0] must be the root node of tree + encodes = append(encodes, e.explainOpRecursivelyInJSONFormat(flat.Main[0], flat.Main)) + + for _, cte := range flat.CTEs { + encodes = append(encodes, e.explainOpRecursivelyInJSONFormat(cte[0], cte)) + } + return +} + +func (e *Explain) explainOpRecursivelyInJSONFormat(flatOp *FlatOperator, flats FlatPlanTree) *ExplainInfoForEncode { + taskTp := "" + if flatOp.IsRoot { + taskTp = "root" + } else { + taskTp = flatOp.ReqType.Name() + "[" + flatOp.StoreType.Name() + "]" + } + explainID := flatOp.Origin.ExplainID().String() + flatOp.Label.String() + textTreeExplainID := texttree.PrettyIdentifier(explainID, flatOp.TextTreeIndent, flatOp.IsLastChild) + + cur := e.prepareOperatorInfoForJSONFormat(flatOp.Origin, taskTp, textTreeExplainID, explainID) + if e.ctx != nil && e.ctx.GetSessionVars() != nil && e.ctx.GetSessionVars().StmtCtx != nil { + if optimInfo, ok := e.ctx.GetSessionVars().StmtCtx.OptimInfo[flatOp.Origin.ID()]; ok { + e.ctx.GetSessionVars().StmtCtx.AppendNote(errors.New(optimInfo)) + } + } + + for _, idx := range flatOp.ChildrenIdx { + cur.SubOperators = append(cur.SubOperators, + e.explainOpRecursivelyInJSONFormat(flats[idx], flats)) + } + return cur +} + func (e *Explain) explainFlatOpInRowFormat(flatOp *FlatOperator) { taskTp := "" if flatOp.IsRoot { @@ -918,6 +1013,27 @@ func (e *Explain) prepareOperatorInfo(p Plan, taskType, id string) { e.Rows = append(e.Rows, row) } +func (e *Explain) prepareOperatorInfoForJSONFormat(p Plan, taskType, id string, explainID string) *ExplainInfoForEncode { + if p.ExplainID().String() == "_0" { + return nil + } + + estRows, _, _, accessObject, operatorInfo := e.getOperatorInfo(p, id) + jsonRow := &ExplainInfoForEncode{ + ID: explainID, + EstRows: estRows, + TaskType: taskType, + AccessObject: accessObject, + OperatorInfo: operatorInfo, + SubOperators: make([]*ExplainInfoForEncode, 0), + } + + if e.Analyze || e.RuntimeStatsColl != nil { + jsonRow.ActRows, jsonRow.ExecuteInfo, jsonRow.MemoryInfo, jsonRow.DiskInfo = getRuntimeInfoStr(e.ctx, p, e.RuntimeStatsColl) + } + return jsonRow +} + func (e *Explain) getOperatorInfo(p Plan, id string) (string, string, string, string, string) { // For `explain for connection` statement, `e.ExplainRows` will be set. for _, row := range e.ExplainRows { @@ -938,7 +1054,9 @@ func (e *Explain) getOperatorInfo(p Plan, id string) (string, string, string, st if e.ctx != nil && e.ctx.GetSessionVars().CostModelVersion == modelVer2 { costVer2, _ := pp.getPlanCostVer2(property.RootTaskType, NewDefaultPlanCostOption()) estCost = strconv.FormatFloat(costVer2.cost, 'f', 2, 64) - costFormula = costVer2.formula + if costVer2.trace != nil { + costFormula = costVer2.trace.formula + } } else { planCost, _ := getPlanCost(pp, property.RootTaskType, NewDefaultPlanCostOption()) estCost = strconv.FormatFloat(planCost, 'f', 2, 64) @@ -1055,7 +1173,9 @@ func binaryOpFromFlatOp(explainCtx sessionctx.Context, op *FlatOperator, out *ti rootStats, copStats, memTracker, diskTracker := getRuntimeInfo(explainCtx, op.Origin, nil) if rootStats != nil { basic, groups := rootStats.MergeStats() - out.RootBasicExecInfo = basic.String() + if basic != nil { + out.RootBasicExecInfo = basic.String() + } for _, group := range groups { str := group.String() if len(str) > 0 { diff --git a/planner/core/encode.go b/planner/core/encode.go index 4345c80c39fc1..663f743517953 100644 --- a/planner/core/encode.go +++ b/planner/core/encode.go @@ -275,7 +275,13 @@ func NormalizeFlatPlan(flat *FlatPhysicalPlan) (normalized string, digest *parse // assume an operator costs around 30 bytes, preallocate space for them d.buf.Grow(30 * len(selectPlan)) depthOffset := len(flat.Main) - len(selectPlan) +loop1: for _, op := range selectPlan { + switch op.Origin.(type) { + case *FKCheck, *FKCascade: + // Generate plan digest doesn't need to contain the foreign key check/cascade plan, so just break the loop. + break loop1 + } taskTypeInfo := plancodec.EncodeTaskTypeForNormalize(op.IsRoot, op.StoreType) p := op.Origin.(PhysicalPlan) plancodec.NormalizePlanNode( @@ -287,6 +293,9 @@ func NormalizeFlatPlan(flat *FlatPhysicalPlan) (normalized string, digest *parse ) } normalized = d.buf.String() + if len(normalized) == 0 { + return "", parser.NewDigest(nil) + } _, err := d.hasher.Write(d.buf.Bytes()) if err != nil { panic(err) diff --git a/planner/core/explain.go b/planner/core/explain.go index 3f4c37e60d131..16140495de3e7 100644 --- a/planner/core/explain.go +++ b/planner/core/explain.go @@ -285,8 +285,11 @@ func (p *PhysicalIndexLookUpReader) ExplainInfo() string { } // ExplainInfo implements Plan interface. -func (*PhysicalIndexMergeReader) ExplainInfo() string { - return "" +func (p *PhysicalIndexMergeReader) ExplainInfo() string { + if p.IsIntersectionType { + return "type: intersection" + } + return "type: union" } // ExplainInfo implements Plan interface. diff --git a/planner/core/expression_rewriter.go b/planner/core/expression_rewriter.go index 2e22a752df310..d0ca6e6f8e4cf 100644 --- a/planner/core/expression_rewriter.go +++ b/planner/core/expression_rewriter.go @@ -1554,6 +1554,7 @@ func (er *expressionRewriter) inToExpression(lLen int, not bool, tp *types.Field // To keep the result be compatible with MySQL, refine `int non-constant str constant` // here and skip this refine operation in all other cases for safety. er.sctx.GetSessionVars().StmtCtx.SkipPlanCache = true + er.sctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: '%v' may be converted to INT", c.String())) expression.RemoveMutableConst(er.sctx, []expression.Expression{c}) } else { continue @@ -2169,6 +2170,9 @@ func decodeKeyFromString(ctx sessionctx.Context, s string) string { return s } tbl, _ := is.TableByID(tableID) + if tbl == nil { + tbl, _, _ = is.FindTableByPartitionID(tableID) + } loc := ctx.GetSessionVars().Location() if tablecodec.IsRecordKey(key) { ret, err := decodeRecordKey(key, tableID, tbl, loc) @@ -2185,7 +2189,7 @@ func decodeKeyFromString(ctx sessionctx.Context, s string) string { } return ret } else if tablecodec.IsTableKey(key) { - ret, err := decodeTableKey(key, tableID) + ret, err := decodeTableKey(key, tableID, tbl) if err != nil { sc.AppendWarning(err) return s @@ -2203,6 +2207,10 @@ func decodeRecordKey(key []byte, tableID int64, tbl table.Table, loc *time.Locat } if handle.IsInt() { ret := make(map[string]interface{}) + if tbl != nil && tbl.Meta().Partition != nil { + ret["partition_id"] = tableID + tableID = tbl.Meta().ID + } ret["table_id"] = strconv.FormatInt(tableID, 10) // When the clustered index is enabled, we should show the PK name. if tbl != nil && tbl.Meta().HasClusteredIndex() { @@ -2239,6 +2247,10 @@ func decodeRecordKey(key []byte, tableID int64, tbl table.Table, loc *time.Locat return "", errors.Trace(err) } ret := make(map[string]interface{}) + if tbl.Meta().Partition != nil { + ret["partition_id"] = tableID + tableID = tbl.Meta().ID + } ret["table_id"] = tableID handleRet := make(map[string]interface{}) for colID := range datumMap { @@ -2308,6 +2320,10 @@ func decodeIndexKey(key []byte, tableID int64, tbl table.Table, loc *time.Locati ds = append(ds, d) } ret := make(map[string]interface{}) + if tbl.Meta().Partition != nil { + ret["partition_id"] = tableID + tableID = tbl.Meta().ID + } ret["table_id"] = tableID ret["index_id"] = indexID idxValMap := make(map[string]interface{}, len(targetIndex.Columns)) @@ -2340,8 +2356,13 @@ func decodeIndexKey(key []byte, tableID int64, tbl table.Table, loc *time.Locati return string(retStr), nil } -func decodeTableKey(_ []byte, tableID int64) (string, error) { - ret := map[string]int64{"table_id": tableID} +func decodeTableKey(_ []byte, tableID int64, tbl table.Table) (string, error) { + ret := map[string]int64{} + if tbl != nil && tbl.Meta().GetPartitionInfo() != nil { + ret["partition_id"] = tableID + tableID = tbl.Meta().ID + } + ret["table_id"] = tableID retStr, err := json.Marshal(ret) if err != nil { return "", errors.Trace(err) diff --git a/planner/core/find_best_task.go b/planner/core/find_best_task.go index 6f99593514459..12f298e6cd2ba 100644 --- a/planner/core/find_best_task.go +++ b/planner/core/find_best_task.go @@ -903,6 +903,7 @@ func (ds *DataSource) findBestTask(prop *property.PhysicalProperty, planCounter // We should uncache the tableDual plan. if expression.MaybeOverOptimized4PlanCache(ds.ctx, path.AccessConds) { ds.ctx.GetSessionVars().StmtCtx.SkipPlanCache = true + ds.ctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: get a TableDual plan")) } dual := PhysicalTableDual{}.Init(ds.ctx, ds.stats, ds.blockOffset) dual.SetSchema(ds.schema) @@ -912,6 +913,14 @@ func (ds *DataSource) findBestTask(prop *property.PhysicalProperty, planCounter p: dual, }, cntPlan, nil } + + // if the path is the point get range path with for update lock, we should forbid tiflash as it's store path. + if path.StoreType == kv.TiFlash && ds.isForUpdateRead && ds.ctx.GetSessionVars().TxnCtx.IsExplicit { + if ds.isPointGetConditions() { + continue + } + } + canConvertPointGet := len(path.Ranges) > 0 && path.StoreType == kv.TiKV && ds.isPointGetConvertableSchema() if canConvertPointGet && expression.MaybeOverOptimized4PlanCache(ds.ctx, path.AccessConds) { @@ -1108,6 +1117,7 @@ func (ds *DataSource) convertToIndexMergeScan(prop *property.PhysicalProperty, c } cop.tablePlan = ts cop.idxMergePartPlans = scans + cop.idxMergeIsIntersection = path.IndexMergeIsIntersection if remainingFilters != nil { cop.rootTaskConds = remainingFilters } @@ -1120,7 +1130,7 @@ func (ds *DataSource) convertToPartialIndexScan(prop *property.PhysicalProperty, is := ds.getOriginalPhysicalIndexScan(prop, path, false, false) // TODO: Consider using isIndexCoveringColumns() to avoid another TableRead indexConds := path.IndexFilters - if indexConds != nil { + if len(indexConds) > 0 { var selectivity float64 if path.CountAfterAccess > 0 { selectivity = path.CountAfterIndex / path.CountAfterAccess @@ -1902,6 +1912,66 @@ func (s *LogicalIndexScan) GetPhysicalIndexScan(_ *expression.Schema, stats *pro return is } +// isPointGetConditions indicates whether the conditions are point-get-able. +// eg: create table t(a int, b int,c int unique, primary (a,b)) +// select * from t where a = 1 and b = 1 and c =1; +// the datasource can access by primary key(a,b) or unique key (c) which are both point-get-able +func (ds *DataSource) isPointGetConditions() bool { + t, _ := ds.is.TableByID(ds.physicalTableID) + columns := map[string]struct{}{} + for _, cond := range ds.allConds { + s, ok := cond.(*expression.ScalarFunction) + if !ok { + return false + } + if s.FuncName.L != ast.EQ || (s.FuncName.L == ast.In && len(s.GetArgs()) != 2) { + return false + } + arg0 := s.GetArgs()[0] + arg1 := s.GetArgs()[1] + _, ok1 := arg0.(*expression.Constant) + col, ok2 := arg1.(*expression.Column) + if ok1 && ok2 { + columns[t.Meta().FindColumnNameByID(col.ID)] = struct{}{} + continue + } + col, ok1 = arg0.(*expression.Column) + _, ok2 = arg1.(*expression.Constant) + if ok1 && ok2 { + columns[t.Meta().FindColumnNameByID(col.ID)] = struct{}{} + continue + } + } + return ds.findPKOrUniqueIndexMatchColumns(columns) +} + +func (ds *DataSource) findPKOrUniqueIndexMatchColumns(columns map[string]struct{}) bool { + for _, idx := range ds.tableInfo.Indices { + if !idx.Unique && !idx.Primary { + continue + } + if idx.HasPrefixIndex() { + continue + } + if len(idx.Columns) > len(columns) { + continue + } + flag := true + for _, idxCol := range idx.Columns { + _, ok := columns[idxCol.Name.String()] + if !ok { + flag = false + break + } + } + if !flag { + continue + } + return true + } + return false +} + // convertToTableScan converts the DataSource to table scan. func (ds *DataSource) convertToTableScan(prop *property.PhysicalProperty, candidate *candidatePath, _ *physicalOptimizeOp) (task task, err error) { // It will be handled in convertToIndexScan. @@ -2288,6 +2358,7 @@ func (ds *DataSource) getOriginalPhysicalIndexScan(prop *property.PhysicalProper physicalTableID: ds.physicalTableID, tblColHists: ds.TblColHists, pkIsHandleCol: ds.getPKIsHandleCol(), + constColsByCond: path.ConstCols, prop: prop, }.Init(ds.ctx, ds.blockOffset) statsTbl := ds.statisticTable diff --git a/planner/core/flat_plan.go b/planner/core/flat_plan.go index ed283ee7ece93..bbd6ea5f593f6 100644 --- a/planner/core/flat_plan.go +++ b/planner/core/flat_plan.go @@ -15,6 +15,8 @@ package core import ( + "sort" + "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/util/texttree" ) @@ -348,26 +350,29 @@ func (f *FlatPhysicalPlan) flattenRecursively(p Plan, info *operatorCtx, target if plan.SelectPlan != nil { childCtx.isRoot = true childCtx.label = Empty - childCtx.isLastChild = true + childCtx.isLastChild = len(plan.FKChecks) == 0 && len(plan.FKCascades) == 0 target, childIdx = f.flattenRecursively(plan.SelectPlan, childCtx, target) childIdxs = append(childIdxs, childIdx) } + target, childIdxs = f.flattenForeignKeyChecksAndCascades(childCtx, target, childIdxs, plan.FKChecks, plan.FKCascades, true) case *Update: if plan.SelectPlan != nil { childCtx.isRoot = true childCtx.label = Empty - childCtx.isLastChild = true + childCtx.isLastChild = len(plan.FKChecks) == 0 && len(plan.FKCascades) == 0 target, childIdx = f.flattenRecursively(plan.SelectPlan, childCtx, target) childIdxs = append(childIdxs, childIdx) } + target, childIdxs = f.flattenForeignKeyChecksAndCascadesMap(childCtx, target, childIdxs, plan.FKChecks, plan.FKCascades) case *Delete: if plan.SelectPlan != nil { childCtx.isRoot = true childCtx.label = Empty - childCtx.isLastChild = true + childCtx.isLastChild = len(plan.FKChecks) == 0 && len(plan.FKCascades) == 0 target, childIdx = f.flattenRecursively(plan.SelectPlan, childCtx, target) childIdxs = append(childIdxs, childIdx) } + target, childIdxs = f.flattenForeignKeyChecksAndCascadesMap(childCtx, target, childIdxs, plan.FKChecks, plan.FKCascades) case *Execute: f.InExecute = true if plan.Plan != nil { @@ -393,6 +398,13 @@ func (f *FlatPhysicalPlan) flattenRecursively(p Plan, info *operatorCtx, target target, childIdx = f.flattenRecursively(plan.TargetPlan, initInfo, target) childIdxs = append(childIdxs, childIdx) } + case *FKCascade: + for i, child := range plan.CascadePlans { + childCtx.label = Empty + childCtx.isLastChild = i == len(plan.CascadePlans)-1 + target, childIdx = f.flattenRecursively(child, childCtx, target) + childIdxs = append(childIdxs, childIdx) + } } if flat != nil { flat.ChildrenIdx = childIdxs @@ -401,6 +413,50 @@ func (f *FlatPhysicalPlan) flattenRecursively(p Plan, info *operatorCtx, target return target, idx } +func (f *FlatPhysicalPlan) flattenForeignKeyChecksAndCascadesMap(childCtx *operatorCtx, target FlatPlanTree, childIdxs []int, fkChecksMap map[int64][]*FKCheck, fkCascadesMap map[int64][]*FKCascade) (FlatPlanTree, []int) { + tids := make([]int64, 0, len(fkChecksMap)) + for tid := range fkChecksMap { + tids = append(tids, tid) + } + // Sort by table id for explain result stable. + sort.Slice(tids, func(i, j int) bool { + return tids[i] < tids[j] + }) + for i, tid := range tids { + target, childIdxs = f.flattenForeignKeyChecksAndCascades(childCtx, target, childIdxs, fkChecksMap[tid], nil, len(fkCascadesMap) == 0 && i == len(tids)-1) + } + tids = tids[:0] + for tid := range fkCascadesMap { + tids = append(tids, tid) + } + sort.Slice(tids, func(i, j int) bool { + return tids[i] < tids[j] + }) + for i, tid := range tids { + target, childIdxs = f.flattenForeignKeyChecksAndCascades(childCtx, target, childIdxs, nil, fkCascadesMap[tid], i == len(tids)-1) + } + return target, childIdxs +} + +func (f *FlatPhysicalPlan) flattenForeignKeyChecksAndCascades(childCtx *operatorCtx, target FlatPlanTree, childIdxs []int, fkChecks []*FKCheck, fkCascades []*FKCascade, isLast bool) (FlatPlanTree, []int) { + var childIdx int + for i, fkCheck := range fkChecks { + childCtx.isRoot = true + childCtx.label = Empty + childCtx.isLastChild = isLast && len(fkCascades) == 0 && i == len(fkChecks)-1 + target, childIdx = f.flattenRecursively(fkCheck, childCtx, target) + childIdxs = append(childIdxs, childIdx) + } + for i, fkCascade := range fkCascades { + childCtx.isRoot = true + childCtx.label = Empty + childCtx.isLastChild = isLast && i == len(fkCascades)-1 + target, childIdx = f.flattenRecursively(fkCascade, childCtx, target) + childIdxs = append(childIdxs, childIdx) + } + return target, childIdxs +} + func (f *FlatPhysicalPlan) flattenCTERecursively(cteDef *CTEDefinition, info *operatorCtx, target FlatPlanTree) FlatPlanTree { flat := f.flattenSingle(cteDef, info) if flat != nil { diff --git a/planner/core/foreign_key.go b/planner/core/foreign_key.go index 6ee715380f8ba..00b87e11c01f8 100644 --- a/planner/core/foreign_key.go +++ b/planner/core/foreign_key.go @@ -15,6 +15,7 @@ package core import ( + "fmt" "unsafe" "github.com/pingcap/errors" @@ -27,6 +28,7 @@ import ( // FKCheck indicates the foreign key constraint checker. type FKCheck struct { + basePhysicalPlan FK *model.FKInfo ReferredFK *model.ReferredFKInfo Tbl table.Table @@ -42,12 +44,17 @@ type FKCheck struct { // FKCascade indicates the foreign key constraint cascade behaviour. type FKCascade struct { + basePhysicalPlan Tp FKCascadeType ReferredFK *model.ReferredFKInfo ChildTable table.Table FK *model.FKInfo FKCols []*model.ColumnInfo FKIdx *model.IndexInfo + // CascadePlans contains the child cascade plan. + // CascadePlans will be filled during execution, so only `explain analyze` statement result contains the cascade plan, + // `explain` statement result doesn't contain the cascade plan. + CascadePlans []Plan } // FKCascadeType indicates in which (delete/update) statements. @@ -63,6 +70,30 @@ const ( emptyFkCascadeSize = int64(unsafe.Sizeof(FKCascade{})) ) +// AccessObject implements dataAccesser interface. +func (f *FKCheck) AccessObject() AccessObject { + if f.Idx == nil { + return OtherAccessObject(fmt.Sprintf("table:%s", f.Tbl.Meta().Name)) + } + return OtherAccessObject(fmt.Sprintf("table:%s, index:%s", f.Tbl.Meta().Name, f.Idx.Meta().Name)) +} + +// OperatorInfo implements dataAccesser interface. +func (f *FKCheck) OperatorInfo(normalized bool) string { + if f.FK != nil { + return fmt.Sprintf("foreign_key:%s, check_exist", f.FK.Name) + } + if f.ReferredFK != nil { + return fmt.Sprintf("foreign_key:%s, check_not_exist", f.ReferredFK.ChildFKName) + } + return "" +} + +// ExplainInfo implement Plan interface. +func (f *FKCheck) ExplainInfo() string { + return f.AccessObject().String() + ", " + f.OperatorInfo(false) +} + // MemoryUsage return the memory usage of FKCheck func (f *FKCheck) MemoryUsage() (sum int64) { if f == nil { @@ -76,6 +107,30 @@ func (f *FKCheck) MemoryUsage() (sum int64) { return } +// AccessObject implements dataAccesser interface. +func (f *FKCascade) AccessObject() AccessObject { + if f.FKIdx == nil { + return OtherAccessObject(fmt.Sprintf("table:%s", f.ChildTable.Meta().Name)) + } + return OtherAccessObject(fmt.Sprintf("table:%s, index:%s", f.ChildTable.Meta().Name, f.FKIdx.Name)) +} + +// OperatorInfo implements dataAccesser interface. +func (f *FKCascade) OperatorInfo(normalized bool) string { + switch f.Tp { + case FKCascadeOnDelete: + return fmt.Sprintf("foreign_key:%s, on_delete:%s", f.FK.Name, model.ReferOptionType(f.FK.OnDelete).String()) + case FKCascadeOnUpdate: + return fmt.Sprintf("foreign_key:%s, on_update:%s", f.FK.Name, model.ReferOptionType(f.FK.OnUpdate).String()) + } + return "" +} + +// ExplainInfo implement Plan interface. +func (f *FKCascade) ExplainInfo() string { + return f.AccessObject().String() + ", " + f.OperatorInfo(false) +} + // MemoryUsage return the memory usage of FKCascade func (f *FKCascade) MemoryUsage() (sum int64) { if f == nil { @@ -94,7 +149,7 @@ func (p *Insert) buildOnInsertFKTriggers(ctx sessionctx.Context, is infoschema.I fkCascades := make([]*FKCascade, 0, len(tblInfo.ForeignKeys)) updateCols := p.buildOnDuplicateUpdateColumns() if len(updateCols) > 0 { - referredFKChecks, referredFKCascades, err := buildOnUpdateReferredFKTriggers(is, dbName, tblInfo, updateCols) + referredFKChecks, referredFKCascades, err := buildOnUpdateReferredFKTriggers(ctx, is, dbName, tblInfo, updateCols) if err != nil { return err } @@ -110,7 +165,7 @@ func (p *Insert) buildOnInsertFKTriggers(ctx sessionctx.Context, is infoschema.I continue } failedErr := ErrNoReferencedRow2.FastGenByArgs(fk.String(dbName, tblInfo.Name.L)) - fkCheck, err := buildFKCheckOnModifyChildTable(is, fk, failedErr) + fkCheck, err := buildFKCheckOnModifyChildTable(ctx, is, fk, failedErr) if err != nil { return err } @@ -149,7 +204,7 @@ func (updt *Update) buildOnUpdateFKTriggers(ctx sessionctx.Context, is infoschem if len(updateCols) == 0 { continue } - referredFKChecks, referredFKCascades, err := buildOnUpdateReferredFKTriggers(is, dbInfo.Name.L, tblInfo, updateCols) + referredFKChecks, referredFKCascades, err := buildOnUpdateReferredFKTriggers(ctx, is, dbInfo.Name.L, tblInfo, updateCols) if err != nil { return err } @@ -159,7 +214,7 @@ func (updt *Update) buildOnUpdateFKTriggers(ctx sessionctx.Context, is infoschem if len(referredFKCascades) > 0 { fkCascades[tid] = append(fkCascades[tid], referredFKCascades...) } - childFKChecks, err := buildOnUpdateChildFKChecks(is, dbInfo.Name.L, tblInfo, updateCols) + childFKChecks, err := buildOnUpdateChildFKChecks(ctx, is, dbInfo.Name.L, tblInfo, updateCols) if err != nil { return err } @@ -186,7 +241,7 @@ func (del *Delete) buildOnDeleteFKTriggers(ctx sessionctx.Context, is infoschema } referredFKs := is.GetTableReferredForeignKeys(dbInfo.Name.L, tblInfo.Name.L) for _, referredFK := range referredFKs { - fkCheck, fkCascade, err := buildOnDeleteOrUpdateFKTrigger(is, referredFK, FKCascadeOnDelete) + fkCheck, fkCascade, err := buildOnDeleteOrUpdateFKTrigger(ctx, is, referredFK, FKCascadeOnDelete) if err != nil { return err } @@ -203,7 +258,7 @@ func (del *Delete) buildOnDeleteFKTriggers(ctx sessionctx.Context, is infoschema return nil } -func buildOnUpdateReferredFKTriggers(is infoschema.InfoSchema, dbName string, tblInfo *model.TableInfo, updateCols map[string]struct{}) ([]*FKCheck, []*FKCascade, error) { +func buildOnUpdateReferredFKTriggers(ctx sessionctx.Context, is infoschema.InfoSchema, dbName string, tblInfo *model.TableInfo, updateCols map[string]struct{}) ([]*FKCheck, []*FKCascade, error) { referredFKs := is.GetTableReferredForeignKeys(dbName, tblInfo.Name.L) fkChecks := make([]*FKCheck, 0, len(referredFKs)) fkCascades := make([]*FKCascade, 0, len(referredFKs)) @@ -211,7 +266,7 @@ func buildOnUpdateReferredFKTriggers(is infoschema.InfoSchema, dbName string, tb if !isMapContainAnyCols(updateCols, referredFK.Cols...) { continue } - fkCheck, fkCascade, err := buildOnDeleteOrUpdateFKTrigger(is, referredFK, FKCascadeOnUpdate) + fkCheck, fkCascade, err := buildOnDeleteOrUpdateFKTrigger(ctx, is, referredFK, FKCascadeOnUpdate) if err != nil { return nil, nil, err } @@ -225,7 +280,7 @@ func buildOnUpdateReferredFKTriggers(is infoschema.InfoSchema, dbName string, tb return fkChecks, fkCascades, nil } -func buildOnUpdateChildFKChecks(is infoschema.InfoSchema, dbName string, tblInfo *model.TableInfo, updateCols map[string]struct{}) ([]*FKCheck, error) { +func buildOnUpdateChildFKChecks(ctx sessionctx.Context, is infoschema.InfoSchema, dbName string, tblInfo *model.TableInfo, updateCols map[string]struct{}) ([]*FKCheck, error) { fkChecks := make([]*FKCheck, 0, len(tblInfo.ForeignKeys)) for _, fk := range tblInfo.ForeignKeys { if fk.Version < 1 { @@ -235,7 +290,7 @@ func buildOnUpdateChildFKChecks(is infoschema.InfoSchema, dbName string, tblInfo continue } failedErr := ErrNoReferencedRow2.FastGenByArgs(fk.String(dbName, tblInfo.Name.L)) - fkCheck, err := buildFKCheckOnModifyChildTable(is, fk, failedErr) + fkCheck, err := buildFKCheckOnModifyChildTable(ctx, is, fk, failedErr) if err != nil { return nil, err } @@ -280,7 +335,7 @@ func (updt *Update) buildTbl2UpdateColumns() map[int64]map[string]struct{} { return tblID2UpdateColumns } -func buildOnDeleteOrUpdateFKTrigger(is infoschema.InfoSchema, referredFK *model.ReferredFKInfo, tp FKCascadeType) (*FKCheck, *FKCascade, error) { +func buildOnDeleteOrUpdateFKTrigger(ctx sessionctx.Context, is infoschema.InfoSchema, referredFK *model.ReferredFKInfo, tp FKCascadeType) (*FKCheck, *FKCascade, error) { childTable, err := is.TableByName(referredFK.ChildSchema, referredFK.ChildTable) if err != nil { return nil, nil, nil @@ -302,10 +357,10 @@ func buildOnDeleteOrUpdateFKTrigger(is infoschema.InfoSchema, referredFK *model. } switch fkReferOption { case model.ReferOptionCascade, model.ReferOptionSetNull: - fkCascade, err := buildFKCascade(tp, referredFK, childTable, fk) + fkCascade, err := buildFKCascade(ctx, tp, referredFK, childTable, fk) return nil, fkCascade, err default: - fkCheck, err := buildFKCheckForReferredFK(childTable, fk, referredFK) + fkCheck, err := buildFKCheckForReferredFK(ctx, childTable, fk, referredFK) return fkCheck, nil, err } } @@ -320,12 +375,12 @@ func isMapContainAnyCols(colsMap map[string]struct{}, cols ...model.CIStr) bool return false } -func buildFKCheckOnModifyChildTable(is infoschema.InfoSchema, fk *model.FKInfo, failedErr error) (*FKCheck, error) { +func buildFKCheckOnModifyChildTable(ctx sessionctx.Context, is infoschema.InfoSchema, fk *model.FKInfo, failedErr error) (*FKCheck, error) { referTable, err := is.TableByName(fk.RefSchema, fk.RefTable) if err != nil { return nil, nil } - fkCheck, err := buildFKCheck(referTable, fk.RefCols, failedErr) + fkCheck, err := buildFKCheck(ctx, referTable, fk.RefCols, failedErr) if err != nil { return nil, err } @@ -334,21 +389,9 @@ func buildFKCheckOnModifyChildTable(is infoschema.InfoSchema, fk *model.FKInfo, return fkCheck, nil } -func buildFKCheckOnModifyReferTable(is infoschema.InfoSchema, referredFK *model.ReferredFKInfo) (*FKCheck, error) { - childTable, err := is.TableByName(referredFK.ChildSchema, referredFK.ChildTable) - if err != nil { - return nil, nil - } - fk := model.FindFKInfoByName(childTable.Meta().ForeignKeys, referredFK.ChildFKName.L) - if fk == nil || fk.Version < 1 { - return nil, nil - } - return buildFKCheckForReferredFK(childTable, fk, referredFK) -} - -func buildFKCheckForReferredFK(childTable table.Table, fk *model.FKInfo, referredFK *model.ReferredFKInfo) (*FKCheck, error) { +func buildFKCheckForReferredFK(ctx sessionctx.Context, childTable table.Table, fk *model.FKInfo, referredFK *model.ReferredFKInfo) (*FKCheck, error) { failedErr := ErrRowIsReferenced2.GenWithStackByArgs(fk.String(referredFK.ChildSchema.L, referredFK.ChildTable.L)) - fkCheck, err := buildFKCheck(childTable, fk.Cols, failedErr) + fkCheck, err := buildFKCheck(ctx, childTable, fk.Cols, failedErr) if err != nil { return nil, err } @@ -357,17 +400,17 @@ func buildFKCheckForReferredFK(childTable table.Table, fk *model.FKInfo, referre return fkCheck, nil } -func buildFKCheck(tbl table.Table, cols []model.CIStr, failedErr error) (*FKCheck, error) { +func buildFKCheck(ctx sessionctx.Context, tbl table.Table, cols []model.CIStr, failedErr error) (*FKCheck, error) { tblInfo := tbl.Meta() if tblInfo.PKIsHandle && len(cols) == 1 { refColInfo := model.FindColumnInfo(tblInfo.Columns, cols[0].L) if refColInfo != nil && mysql.HasPriKeyFlag(refColInfo.GetFlag()) { - return &FKCheck{ + return FKCheck{ Tbl: tbl, IdxIsPrimaryKey: true, IdxIsExclusive: true, FailedErr: failedErr, - }, nil + }.Init(ctx), nil } } @@ -385,16 +428,16 @@ func buildFKCheck(tbl table.Table, cols []model.CIStr, failedErr error) (*FKChec return nil, failedErr } - return &FKCheck{ + return FKCheck{ Tbl: tbl, Idx: tblIdx, IdxIsExclusive: len(cols) == len(referTbIdxInfo.Columns), IdxIsPrimaryKey: referTbIdxInfo.Primary && tblInfo.IsCommonHandle, FailedErr: failedErr, - }, nil + }.Init(ctx), nil } -func buildFKCascade(tp FKCascadeType, referredFK *model.ReferredFKInfo, childTable table.Table, fk *model.FKInfo) (*FKCascade, error) { +func buildFKCascade(ctx sessionctx.Context, tp FKCascadeType, referredFK *model.ReferredFKInfo, childTable table.Table, fk *model.FKInfo) (*FKCascade, error) { cols := make([]*model.ColumnInfo, len(fk.Cols)) childTableColumns := childTable.Meta().Columns for i, c := range fk.Cols { @@ -404,13 +447,13 @@ func buildFKCascade(tp FKCascadeType, referredFK *model.ReferredFKInfo, childTab } cols[i] = col } - fkCascade := &FKCascade{ + fkCascade := FKCascade{ Tp: tp, ReferredFK: referredFK, ChildTable: childTable, FK: fk, FKCols: cols, - } + }.Init(ctx) if childTable.Meta().PKIsHandle && len(cols) == 1 { refColInfo := model.FindColumnInfo(childTableColumns, cols[0].Name.L) if refColInfo != nil && mysql.HasPriKeyFlag(refColInfo.GetFlag()) { diff --git a/planner/core/fragment.go b/planner/core/fragment.go index 5dfa93186826f..c6aec17f21e6d 100644 --- a/planner/core/fragment.go +++ b/planner/core/fragment.go @@ -406,7 +406,7 @@ func (e *mppTaskGenerator) constructMPPBuildTaskReqForPartitionedTable(ts *Physi return nil, nil, errors.Trace(err) } partitionIDAndRanges[i].ID = pid - partitionIDAndRanges[i].KeyRanges = kvRanges + partitionIDAndRanges[i].KeyRanges = kvRanges.FirstPartitionRange() allPartitionsIDs[i] = pid } return &kv.MPPBuildTasksRequest{PartitionIDAndRanges: partitionIDAndRanges}, allPartitionsIDs, nil @@ -417,5 +417,5 @@ func (e *mppTaskGenerator) constructMPPBuildTaskForNonPartitionTable(ts *Physica if err != nil { return nil, errors.Trace(err) } - return &kv.MPPBuildTasksRequest{KeyRanges: kvRanges}, nil + return &kv.MPPBuildTasksRequest{KeyRanges: kvRanges.FirstPartitionRange()}, nil } diff --git a/planner/core/indexmerge_intersection_test.go b/planner/core/indexmerge_intersection_test.go new file mode 100644 index 0000000000000..8b352f3b5cead --- /dev/null +++ b/planner/core/indexmerge_intersection_test.go @@ -0,0 +1,178 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package core_test + +import ( + "regexp" + "testing" + + "github.com/pingcap/tidb/planner/core" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/testkit/testdata" + "github.com/stretchr/testify/require" +) + +func TestSPMForIntersectionIndexMerge(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(a int, b int, c int, d int, e int, index ia(a), index ib(b), index ic(c), index id(d), index ie(e))") + require.False(t, tk.HasPlan("select * from t where a = 10 and b = 20 and c > 30 and d is null and e in (0, 100)", "IndexMerge")) + require.True(t, + tk.HasPlan("select /*+ use_index_merge(t, ia, ib, ic, id, ie) */ * from t where a = 10 and b = 20 and c > 30 and d is null and e in (0, 100)", + "IndexMerge", + ), + ) + tk.MustExec(` +create global binding for + select * from t where a = 10 and b = 20 and c > 30 and d is null and e in (0, 100) +using + select /*+ use_index_merge(t, ia, ib, ic, id, ie) */ * from t where a = 10 and b = 20 and c > 30 and d is null and e in (0, 100) +`) + require.True(t, tk.HasPlan("select * from t where a = 10 and b = 20 and c > 30 and d is null and e in (0, 100)", "IndexMerge")) +} + +func TestPlanCacheForIntersectionIndexMerge(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t(a int, b int, c int, d int, e int, index ia(a), index ib(b), index ic(c), index id(d), index ie(e))") + tk.MustExec("prepare stmt from 'select /*+ use_index_merge(t, ia, ib, ic, id, ie) */ * from t where a = 10 and b = ? and c > ? and d is null and e in (0, 100)'") + tk.MustExec("set @a=1, @b=3") + tk.MustQuery("execute stmt using @a,@b").Check(testkit.Rows()) + tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("0")) + tk.MustQuery("execute stmt using @a,@b").Check(testkit.Rows()) + tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("1")) + tk.MustExec("set @a=100, @b=500") + tk.MustQuery("execute stmt using @a,@b").Check(testkit.Rows()) + tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("1")) + tk.MustQuery("execute stmt using @a,@b").Check(testkit.Rows()) + require.True(t, tk.HasPlanForLastExecution("IndexMerge")) +} + +func TestHintForIntersectionIndexMerge(t *testing.T) { + store, domain := testkit.CreateMockStoreAndDomain(t) + handle := domain.StatsHandle() + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t1(a int, b int, c int, d int, e int, index ia(a), index ibc(b, c),index ic(c), index id(d), index ie(e))" + + "partition by range(c) (" + + "partition p0 values less than (10)," + + "partition p1 values less than (20)," + + "partition p2 values less than (30)," + + "partition p3 values less than (maxvalue))") + tk.MustExec("insert into t1 values (10, 20, 5, 5, 3), (20, 20, 50, 5, 200), (20, 20, 10, 5, 5), (10, 30, 5, 3, 1)") + tk.MustExec("create definer='root'@'localhost' view vh as " + + "select /*+ use_index_merge(t1, ia, ibc, id) */ * from t1 where a = 10 and b = 20 and c < 30 and d in (2,5)") + tk.MustExec("create definer='root'@'localhost' view v as " + + "select * from t1 where a = 10 and b = 20 and c < 30 and d in (2,5)") + tk.MustExec("create definer='root'@'localhost' view v1 as " + + "select * from t1 where a = 10 and b = 20") + tk.MustExec("create table t2(a int, b int, c int, d int, e int, index ia(a), index ibc(b, c), index id(d), index ie(e))" + + "partition by range columns (c, d) (" + + "partition p0 values less than (10, 20)," + + "partition p1 values less than (30, 40)," + + "partition p2 values less than (50, 60)," + + "partition p3 values less than (maxvalue, maxvalue))") + tk.MustExec("insert into t2 values (10, 20, 5, 5, 3), (20, 20, 20, 5, 100), (100, 30, 5, 3, 100)") + tk.MustExec("create table t3(a int, b int, c int, d int, e int, index ia(a), index ibc(b, c), index id(d), index ie(e))" + + "partition by hash (e) partitions 5") + tk.MustExec("insert into t3 values (10, 20, 5, 5, 3), (20, 20, 20, 5, 100), (10, 30, 5, 3, 100)") + tk.MustExec("create table t4(a int, b int, c int, d int, e int, index ia(a), index ibc(b, c), index id(d), index ie(e))" + + "partition by list (d) (" + + "partition p0 values in (1,2,3,4,5)," + + "partition p1 values in (6,7,8,9,10)," + + "partition p2 values in (11,12,13,14,15)," + + "partition p3 values in (16,17,18,19,20))") + tk.MustExec("insert into t4 values (30, 20, 5, 8, 100), (20, 20, 20, 3, 2), (10, 30, 5, 3, 100)") + tk.MustExec("create table t5(" + + "s1 varchar(20) collate utf8mb4_bin," + + "s2 varchar(30) collate ascii_bin," + + "s3 varchar(50) collate utf8_unicode_ci," + + "s4 varchar(20) collate gbk_chinese_ci," + + "index is1(s1), index is2(s2), index is3(s3), index is4(s4))") + tk.MustExec("insert into t5 values ('Abc', 'zzzz', 'aa', 'ccc'), ('abc', 'zzzz', 'CCC', 'ccc')") + tk.MustExec("create table t6(" + + "s1 varchar(20) collate utf8mb4_bin," + + "s2 varchar(30) collate ascii_bin," + + "s3 varchar(50) collate utf8_unicode_ci," + + "s4 varchar(20) collate gbk_chinese_ci," + + "primary key (s1, s2(10)) nonclustered," + + "index is1(s1), index is2(s2), index is3(s3), index is4(s4))") + tk.MustExec("insert into t6 values ('Abc', 'zzzz', 'A啊A', 'Cdaa'), ('Abc', 'zczz', 'A啊', 'Cda')") + tk.MustExec("create table t7(" + + "a tinyint unsigned," + + "b bit(3)," + + "c float," + + "d decimal(10,3)," + + "e datetime," + + "f timestamp(5)," + + "g year," + + "primary key (d) nonclustered," + + "index ia(a), unique index ib(b), index ic(c), index ie(e), index iff(f), index ig(g))") + tk.MustExec("insert into t7 values (100, 6, 12.2, 56, '2022-11-22 17:00', '2022-12-21 00:00', 2021)," + + "(20, 7, 12.4, 30, '2022-12-22 17:00', '2016-12-21 00:00', 2021)") + tk.MustExec("create table t8(" + + "s1 mediumtext collate utf8mb4_general_ci," + + "s2 varbinary(20)," + + "s3 tinyblob," + + "s4 enum('测试', 'aA', '??') collate gbk_chinese_ci," + + "s5 set('^^^', 'tEsT', '2') collate utf8_general_ci," + + "primary key (s1(10)) nonclustered," + + "unique index is2(s2(20)), index is3(s3(20)), index is4(s4), index is5(s5))") + tk.MustExec("insert into t8 values('啊aabbccdd', 'abcc', 'cccc', 'aa', '2,test')," + + "('啊aabb', 'abcdc', 'aaaa', '??', '2')") + + require.NoError(t, handle.HandleDDLEvent(<-handle.DDLEventCh())) + require.Nil(t, handle.Update(domain.InfoSchema())) + tk.MustExec("set @@tidb_partition_prune_mode = 'dynamic'") + tk.MustExec("analyze table t1,t2,t3,t4") + require.Nil(t, handle.Update(domain.InfoSchema())) + + var ( + input []string + output []struct { + SQL string + Plan []string + Result []string + } + ) + planSuiteData := core.GetIndexMergeSuiteData() + planSuiteData.LoadTestCases(t, &input, &output) + + matchSetStmt, err := regexp.Compile("^set") + require.NoError(t, err) + for i, ts := range input { + testdata.OnRecord(func() { + output[i].SQL = ts + }) + ok := matchSetStmt.MatchString(ts) + if ok { + tk.MustExec(ts) + continue + } + testdata.OnRecord(func() { + output[i].Plan = testdata.ConvertRowsToStrings(tk.MustQuery("explain format = 'brief' " + ts).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(tk.MustQuery(ts).Sort().Rows()) + }) + tk.MustQuery("explain format = 'brief' " + ts).Check(testkit.Rows(output[i].Plan...)) + tk.MustQuery(ts).Sort().Check(testkit.Rows(output[i].Result...)) + // Expect no warnings. + tk.MustQuery("show warnings").Check(testkit.Rows()) + } +} diff --git a/planner/core/initialize.go b/planner/core/initialize.go index bb2fc22b60546..4a096b7b49204 100644 --- a/planner/core/initialize.go +++ b/planner/core/initialize.go @@ -597,3 +597,17 @@ func (p PhysicalCTETable) Init(ctx sessionctx.Context, stats *property.StatsInfo p.stats = stats return &p } + +// Init initializes FKCheck. +func (p FKCheck) Init(ctx sessionctx.Context) *FKCheck { + p.basePhysicalPlan = newBasePhysicalPlan(ctx, plancodec.TypeForeignKeyCheck, &p, 0) + p.stats = &property.StatsInfo{} + return &p +} + +// Init initializes FKCascade +func (p FKCascade) Init(ctx sessionctx.Context) *FKCascade { + p.basePhysicalPlan = newBasePhysicalPlan(ctx, plancodec.TypeForeignKeyCascade, &p, 0) + p.stats = &property.StatsInfo{} + return &p +} diff --git a/planner/core/integration_partition_test.go b/planner/core/integration_partition_test.go index 7823f18474ad1..f1b915b66d038 100644 --- a/planner/core/integration_partition_test.go +++ b/planner/core/integration_partition_test.go @@ -1458,12 +1458,12 @@ func TestRangeColumnsExpr(t *testing.T) { "TableReader 1.14 root partition:p5,p12 data:Selection", "└─Selection 1.14 cop[tikv] in(rce.t.a, 4, 14), in(rce.t.b, NULL, 10)", " └─TableFullScan 21.00 cop[tikv] table:t keep order:false")) - tk.MustQuery(`select * from tref where a in (4,14) and b in (null,10)`).Check(testkit.Rows( - "4 10 3", - "14 10 4")) - tk.MustQuery(`select * from t where a in (4,14) and b in (null,10)`).Check(testkit.Rows( - "4 10 3", - "14 10 4")) + tk.MustQuery(`select * from tref where a in (4,14) and b in (null,10)`).Sort().Check(testkit.Rows( + "14 10 4", + "4 10 3")) + tk.MustQuery(`select * from t where a in (4,14) and b in (null,10)`).Sort().Check(testkit.Rows( + "14 10 4", + "4 10 3")) tk.MustQuery(`explain format = 'brief' select * from t where a in (4,14) and (b in (11,10) OR b is null)`).Check(testkit.Rows( "TableReader 3.43 root partition:p1,p5,p6,p11,p12 data:Selection", "└─Selection 3.43 cop[tikv] in(rce.t.a, 4, 14), or(in(rce.t.b, 11, 10), isnull(rce.t.b))", diff --git a/planner/core/integration_test.go b/planner/core/integration_test.go index a2aa3d643f609..ce4b299cdf328 100644 --- a/planner/core/integration_test.go +++ b/planner/core/integration_test.go @@ -1231,9 +1231,9 @@ func TestAggPushDownEngine(t *testing.T) { tk.MustExec("set @@session.tidb_isolation_read_engines = 'tiflash'") tk.MustQuery("explain format = 'brief' select approx_count_distinct(a) from t").Check(testkit.Rows( - "HashAgg 1.00 root funcs:approx_count_distinct(Column#4)->Column#3", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:approx_count_distinct(test.t.a)->Column#4", + "StreamAgg 1.00 root funcs:approx_count_distinct(Column#5)->Column#3", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:approx_count_distinct(test.t.a)->Column#5", " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo")) tk.MustExec("set @@session.tidb_isolation_read_engines = 'tikv'") @@ -1365,16 +1365,18 @@ func TestViewHintScope(t *testing.T) { tk.MustExec("use test") tk.MustExec("set tidb_cost_model_version=2") - tk.MustExec("drop view if exists v, v1, v2, v3") - tk.MustExec("drop table if exists t, t1, t2") + tk.MustExec("drop view if exists v, v1, v2, v3, v4") + tk.MustExec("drop table if exists t, t1, t2, t3, t4") tk.MustExec("create table t(a int, b int);") tk.MustExec("create table t1(a int, b int);") tk.MustExec("create table t2(a int, b int);") tk.MustExec("create table t3(a int, b int)") + tk.MustExec("create table t4(a int, b int, index idx_a(a), index idx_b(b))") tk.MustExec("create definer='root'@'localhost' view v as select t.a, t.b from t join (select count(*) as a from t1 join t2 join t3 where t1.b=t2.b and t2.a = t3.a group by t2.a) tt on t.a = tt.a;") tk.MustExec("create definer='root'@'localhost' view v1 as select t.a, t.b from t join (select count(*) as a from t1 join v on t1.b=v.b group by v.a) tt on t.a = tt.a;") tk.MustExec("create definer='root'@'localhost' view v2 as select t.a, t.b from t join (select count(*) as a from t1 join v1 on t1.b=v1.b group by v1.a) tt on t.a = tt.a;") tk.MustExec("create definer='root'@'localhost' view v3 as select /*+ merge_join(t) */ t.a, t.b from t join (select /*+ stream_agg() */ count(*) as a from t1 join v1 on t1.b=v1.b group by v1.a) tt on t.a = tt.a;") + tk.MustExec("create definer='root'@'localhost' view v4 as select * from t4 where a > 2 and b > 3;") var input []string var output []struct { @@ -1403,7 +1405,7 @@ func TestViewHintWithBinding(t *testing.T) { tk.MustExec("use test") tk.MustExec("set tidb_cost_model_version=2") tk.MustExec("drop view if exists v, v1") - tk.MustExec("drop table if exists t, t1, t2") + tk.MustExec("drop table if exists t, t1, t2, t3") tk.MustExec("create table t(a int, b int);") tk.MustExec("create table t1(a int, b int);") tk.MustExec("create table t2(a int, b int);") @@ -2349,7 +2351,7 @@ func TestIssue16837(t *testing.T) { tk.MustExec("drop table if exists t") tk.MustExec("create table t(a int,b int,c int,d int,e int,unique key idx_ab(a,b),unique key(c),unique key(d))") tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t,c,idx_ab) */ * from t where a = 1 or (e = 1 and c = 1)").Check(testkit.Rows( - "IndexMerge 0.01 root ", + "IndexMerge 0.01 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:idx_ab(a, b) range:[1,1], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:c(c) range:[1,1], keep order:false, stats:pseudo", "└─Selection(Probe) 0.01 cop[tikv] or(eq(test.t.a, 1), and(eq(test.t.e, 1), eq(test.t.c, 1)))", @@ -2590,7 +2592,7 @@ func TestIssue16407(t *testing.T) { tk.MustExec("drop table if exists t") tk.MustExec("create table t(a int,b char(100),key(a),key(b(10)))") tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t) */ * from t where a=10 or b='x'").Check(testkit.Rows( - "IndexMerge 0.04 root ", + "IndexMerge 0.04 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:a(a) range:[10,10], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:b(b) range:[\"x\",\"x\"], keep order:false, stats:pseudo", "└─Selection(Probe) 0.04 cop[tikv] or(eq(test.t.a, 10), eq(test.t.b, \"x\"))", @@ -3375,6 +3377,10 @@ func TestScalarFunctionPushDown(t *testing.T) { tk.MustQuery("explain analyze select /*+read_from_storage(tikv[t])*/ * from t where ascii(e);"). CheckAt([]int{0, 3, 6}, rows) + rows[1][2] = "eq(json_valid(test.t.c), 1)" + tk.MustQuery("explain analyze select /*+read_from_storage(tikv[t])*/ * from t where json_valid(c)=1;"). + CheckAt([]int{0, 3, 6}, rows) + rows[1][2] = "json_contains(cast(test.t.c, json BINARY), cast(\"1\", json BINARY))" tk.MustQuery("explain analyze select /*+read_from_storage(tikv[t])*/ * from t where json_contains(c, '1');"). CheckAt([]int{0, 3, 6}, rows) @@ -5034,7 +5040,7 @@ func TestIndexMergeTableFilter(t *testing.T) { tk.MustExec("insert into t values(10,1,1,10)") tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t) */ * from t where a=10 or (b=10 and c=10)").Check(testkit.Rows( - "IndexMerge 0.02 root ", + "IndexMerge 0.02 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:a(a) range:[10,10], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:b(b) range:[10,10], keep order:false, stats:pseudo", "└─Selection(Probe) 0.02 cop[tikv] or(eq(test.t.a, 10), and(eq(test.t.b, 10), eq(test.t.c, 10)))", @@ -5044,7 +5050,7 @@ func TestIndexMergeTableFilter(t *testing.T) { "10 1 1 10", )) tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t) */ * from t where (a=10 and d=10) or (b=10 and c=10)").Check(testkit.Rows( - "IndexMerge 0.00 root ", + "IndexMerge 0.00 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:a(a) range:[10,10], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:b(b) range:[10,10], keep order:false, stats:pseudo", "└─Selection(Probe) 0.00 cop[tikv] or(and(eq(test.t.a, 10), eq(test.t.d, 10)), and(eq(test.t.b, 10), eq(test.t.c, 10)))", @@ -5695,36 +5701,36 @@ func TestIssue29221(t *testing.T) { tk.MustExec("set @@session.sql_select_limit=3;") tk.MustQuery("explain format = 'brief' select * from t where a = 1 or b = 1;").Check(testkit.Rows( "Limit 3.00 root offset:0, count:3", - "└─IndexMerge 3.00 root ", + "└─IndexMerge 3.00 root type: union", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_a(a) range:[1,1], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_b(b) range:[1,1], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 3.00 cop[tikv] table:t keep order:false, stats:pseudo")) tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t) */ * from t where a = 1 or b = 1;").Check(testkit.Rows( "Limit 3.00 root offset:0, count:3", - "└─IndexMerge 3.00 root ", + "└─IndexMerge 3.00 root type: union", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_a(a) range:[1,1], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_b(b) range:[1,1], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 3.00 cop[tikv] table:t keep order:false, stats:pseudo")) tk.MustExec("set @@session.sql_select_limit=18446744073709551615;") tk.MustQuery("explain format = 'brief' select * from t where a = 1 or b = 1;").Check(testkit.Rows( - "IndexMerge 19.99 root ", + "IndexMerge 19.99 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:idx_a(a) range:[1,1], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:idx_b(b) range:[1,1], keep order:false, stats:pseudo", "└─TableRowIDScan(Probe) 19.99 cop[tikv] table:t keep order:false, stats:pseudo")) tk.MustQuery("explain format = 'brief' select * from t where a = 1 or b = 1 limit 3;").Check(testkit.Rows( "Limit 3.00 root offset:0, count:3", - "└─IndexMerge 3.00 root ", + "└─IndexMerge 3.00 root type: union", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_a(a) range:[1,1], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_b(b) range:[1,1], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 3.00 cop[tikv] table:t keep order:false, stats:pseudo")) tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t) */ * from t where a = 1 or b = 1;").Check(testkit.Rows( - "IndexMerge 19.99 root ", + "IndexMerge 19.99 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:idx_a(a) range:[1,1], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:idx_b(b) range:[1,1], keep order:false, stats:pseudo", "└─TableRowIDScan(Probe) 19.99 cop[tikv] table:t keep order:false, stats:pseudo")) tk.MustQuery("explain format = 'brief' select /*+ use_index_merge(t) */ * from t where a = 1 or b = 1 limit 3;").Check(testkit.Rows( "Limit 3.00 root offset:0, count:3", - "└─IndexMerge 3.00 root ", + "└─IndexMerge 3.00 root type: union", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_a(a) range:[1,1], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 1.50 cop[tikv] table:t, index:idx_b(b) range:[1,1], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 3.00 cop[tikv] table:t keep order:false, stats:pseudo")) @@ -5791,62 +5797,6 @@ func TestIssue29503(t *testing.T) { require.Len(t, res.Rows(), 2) } -func TestIndexJoinCost(t *testing.T) { - store := testkit.CreateMockStore(t) - tk := testkit.NewTestKit(t, store) - tk.MustExec("use test") - tk.MustExec("set tidb_cost_model_version=2") - tk.MustExec(`drop table if exists t_outer, t_inner_pk, t_inner_idx`) - tk.MustExec(`create table t_outer (a int)`) - tk.MustExec(`create table t_inner_pk (a int primary key)`) - tk.MustExec(`create table t_inner_idx (a int, b int, key(a))`) - - // Default RPC encoding may cause statistics explain result differ and then the test unstable. - tk.MustExec("set @@tidb_enable_chunk_rpc = on") - - tk.MustQuery(`explain format=verbose select /*+ TIDB_INLJ(t_outer, t_inner_pk) */ * from t_outer, t_inner_pk where t_outer.a=t_inner_pk.a`).Check(testkit.Rows( // IndexJoin with inner TableScan - `IndexJoin_11 12487.50 11918182.35 root inner join, inner:TableReader_8, outer key:test.t_outer.a, inner key:test.t_inner_pk.a, equal cond:eq(test.t_outer.a, test.t_inner_pk.a)`, - `├─TableReader_18(Build) 9990.00 211131.09 root data:Selection_17`, - `│ └─Selection_17 9990.00 2534000.00 cop[tikv] not(isnull(test.t_outer.a))`, - `│ └─TableFullScan_16 10000.00 2035000.00 cop[tikv] table:t_outer keep order:false, stats:pseudo`, - `└─TableReader_8(Probe) 9990.00 10.25 root data:TableRangeScan_7`, - ` └─TableRangeScan_7 9990.00 122.10 cop[tikv] table:t_inner_pk range: decided by [test.t_outer.a], keep order:false, stats:pseudo`)) - tk.MustQuery(`explain format=verbose select /*+ TIDB_INLJ(t_outer, t_inner_idx) */ t_inner_idx.a from t_outer, t_inner_idx where t_outer.a=t_inner_idx.a`).Check(testkit.Rows( // IndexJoin with inner IndexScan - `IndexJoin_10 12487.50 11918207.26 root inner join, inner:IndexReader_9, outer key:test.t_outer.a, inner key:test.t_inner_idx.a, equal cond:eq(test.t_outer.a, test.t_inner_idx.a)`, - `├─TableReader_20(Build) 9990.00 211131.09 root data:Selection_19`, - `│ └─Selection_19 9990.00 2534000.00 cop[tikv] not(isnull(test.t_outer.a))`, - `│ └─TableFullScan_18 10000.00 2035000.00 cop[tikv] table:t_outer keep order:false, stats:pseudo`, - `└─IndexReader_9(Probe) 12487.50 23.02 root index:Selection_8`, - ` └─Selection_8 12487.50 266.14 cop[tikv] not(isnull(test.t_inner_idx.a))`, - ` └─IndexRangeScan_7 12500.00 203.70 cop[tikv] table:t_inner_idx, index:a(a) range: decided by [eq(test.t_inner_idx.a, test.t_outer.a)], keep order:false, stats:pseudo`)) - tk.MustQuery(`explain format=verbose select /*+ TIDB_INLJ(t_outer, t_inner_idx) */ * from t_outer, t_inner_idx where t_outer.a=t_inner_idx.a`).Check(testkit.Rows( // IndexJoin with inner IndexLookup - `IndexJoin_11 12487.50 11922930.69 root inner join, inner:IndexLookUp_10, outer key:test.t_outer.a, inner key:test.t_inner_idx.a, equal cond:eq(test.t_outer.a, test.t_inner_idx.a)`, - `├─TableReader_23(Build) 9990.00 211131.09 root data:Selection_22`, - `│ └─Selection_22 9990.00 2534000.00 cop[tikv] not(isnull(test.t_outer.a))`, - `│ └─TableFullScan_21 10000.00 2035000.00 cop[tikv] table:t_outer keep order:false, stats:pseudo`, - `└─IndexLookUp_10(Probe) 12487.50 2443.84 root `, - ` ├─Selection_9(Build) 12487.50 317.07 cop[tikv] not(isnull(test.t_inner_idx.a))`, - ` │ └─IndexRangeScan_7 12500.00 254.63 cop[tikv] table:t_inner_idx, index:a(a) range: decided by [eq(test.t_inner_idx.a, test.t_outer.a)], keep order:false, stats:pseudo`, - ` └─TableRowIDScan_8(Probe) 12487.50 284.13 cop[tikv] table:t_inner_idx keep order:false, stats:pseudo`)) - - tk.MustQuery("explain format=verbose select /*+ inl_hash_join(t_outer, t_inner_idx) */ t_inner_idx.a from t_outer, t_inner_idx where t_outer.a=t_inner_idx.a").Check(testkit.Rows( - `IndexHashJoin_12 12487.50 11918207.26 root inner join, inner:IndexReader_9, outer key:test.t_outer.a, inner key:test.t_inner_idx.a, equal cond:eq(test.t_outer.a, test.t_inner_idx.a)`, - `├─TableReader_20(Build) 9990.00 211131.09 root data:Selection_19`, - `│ └─Selection_19 9990.00 2534000.00 cop[tikv] not(isnull(test.t_outer.a))`, - `│ └─TableFullScan_18 10000.00 2035000.00 cop[tikv] table:t_outer keep order:false, stats:pseudo`, - `└─IndexReader_9(Probe) 12487.50 23.02 root index:Selection_8`, - ` └─Selection_8 12487.50 266.14 cop[tikv] not(isnull(test.t_inner_idx.a))`, - ` └─IndexRangeScan_7 12500.00 203.70 cop[tikv] table:t_inner_idx, index:a(a) range: decided by [eq(test.t_inner_idx.a, test.t_outer.a)], keep order:false, stats:pseudo`)) - tk.MustQuery("explain format=verbose select /*+ inl_merge_join(t_outer, t_inner_idx) */ t_inner_idx.a from t_outer, t_inner_idx where t_outer.a=t_inner_idx.a").Check(testkit.Rows( - `IndexMergeJoin_17 12487.50 11918207.26 root inner join, inner:IndexReader_15, outer key:test.t_outer.a, inner key:test.t_inner_idx.a`, - `├─TableReader_20(Build) 9990.00 211131.09 root data:Selection_19`, - `│ └─Selection_19 9990.00 2534000.00 cop[tikv] not(isnull(test.t_outer.a))`, - `│ └─TableFullScan_18 10000.00 2035000.00 cop[tikv] table:t_outer keep order:false, stats:pseudo`, - `└─IndexReader_15(Probe) 12487.50 23.02 root index:Selection_14`, - ` └─Selection_14 12487.50 266.14 cop[tikv] not(isnull(test.t_inner_idx.a))`, - ` └─IndexRangeScan_13 12500.00 203.70 cop[tikv] table:t_inner_idx, index:a(a) range: decided by [eq(test.t_inner_idx.a, test.t_outer.a)], keep order:true, stats:pseudo`)) -} - func TestHeuristicIndexSelection(t *testing.T) { store := testkit.CreateMockStore(t) tk := testkit.NewTestKit(t, store) @@ -6747,7 +6697,7 @@ func TestAggPushToCopForCachedTable(t *testing.T) { tk.MustExec("alter table t32157 cache") tk.MustQuery("explain format = 'brief' select /*+AGG_TO_COP()*/ count(*) from t32157 ignore index(primary) where process_code = 'GDEP0071'").Check(testkit.Rows( - "HashAgg 1.00 root funcs:count(1)->Column#8]\n" + + "StreamAgg 1.00 root funcs:count(1)->Column#8]\n" + "[└─UnionScan 10.00 root eq(test.t32157.process_code, \"GDEP0071\")]\n" + "[ └─TableReader 10.00 root data:Selection]\n" + "[ └─Selection 10.00 cop[tikv] eq(test.t32157.process_code, \"GDEP0071\")]\n" + @@ -6866,6 +6816,7 @@ func TestTiFlashPartitionTableScan(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomain(t) tk := testkit.NewTestKit(t, store) tk.MustExec("use test") + tk.MustExec("set tidb_cost_model_version=1") tk.MustExec("set @@tidb_partition_prune_mode = 'dynamic'") tk.MustExec("set @@tidb_isolation_read_engines = 'tiflash'") tk.MustExec("set @@tidb_enforce_mpp = on") @@ -7466,6 +7417,72 @@ func TestEltPushDownToTiFlash(t *testing.T) { tk.MustQuery("explain select elt(a, b) from t;").CheckAt([]int{0, 2, 4}, rows) } +func TestRegexpInstrPushDownToTiFlash(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists test.t;") + tk.MustExec("create table test.t (expr varchar(30), pattern varchar(30), pos int, occur int, ret_op int, match_type varchar(30));") + tk.MustExec("insert into test.t values ('123', '12.', 1, 1, 0, ''), ('aBb', 'bb', 1, 1, 0, 'i'), ('ab\nabc', '^abc$', 1, 1, 0, 'm');") + tk.MustExec("set @@tidb_allow_mpp=1; set @@tidb_enforce_mpp=1") + tk.MustExec("set @@tidb_isolation_read_engines = 'tiflash'") + + // Create virtual tiflash replica info. + is := dom.InfoSchema() + db, exists := is.SchemaByName(model.NewCIStr("test")) + require.True(t, exists) + for _, tblInfo := range db.Tables { + if tblInfo.Name.L == "t" { + tblInfo.TiFlashReplica = &model.TiFlashReplicaInfo{ + Count: 1, + Available: true, + } + } + } + + rows := [][]interface{}{ + {"TableReader_9", "root", "data:ExchangeSender_8"}, + {"└─ExchangeSender_8", "mpp[tiflash]", "ExchangeType: PassThrough"}, + {" └─Projection_4", "mpp[tiflash]", "regexp_instr(test.t.expr, test.t.pattern, 1, 1, 0, test.t.match_type)->Column#8"}, + {" └─TableFullScan_7", "mpp[tiflash]", "keep order:false, stats:pseudo"}, + } + tk.MustQuery("explain select regexp_instr(expr, pattern, 1, 1, 0, match_type) as res from test.t;").CheckAt([]int{0, 2, 4}, rows) +} + +func TestRegexpSubstrPushDownToTiFlash(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("drop table if exists test.t;") + tk.MustExec("create table test.t (expr varchar(30), pattern varchar(30), pos int, occur int, match_type varchar(30));") + tk.MustExec("insert into test.t values ('123', '12.', 1, 1, ''), ('aBb', 'bb', 1, 1, 'i'), ('ab\nabc', '^abc$', 1, 1, 'm');") + tk.MustExec("set @@tidb_allow_mpp=1; set @@tidb_enforce_mpp=1") + tk.MustExec("set @@tidb_isolation_read_engines = 'tiflash'") + + // Create virtual tiflash replica info. + is := dom.InfoSchema() + db, exists := is.SchemaByName(model.NewCIStr("test")) + require.True(t, exists) + for _, tblInfo := range db.Tables { + if tblInfo.Name.L == "t" { + tblInfo.TiFlashReplica = &model.TiFlashReplicaInfo{ + Count: 1, + Available: true, + } + } + } + + rows := [][]interface{}{ + {"TableReader_9", "root", "data:ExchangeSender_8"}, + {"└─ExchangeSender_8", "mpp[tiflash]", "ExchangeType: PassThrough"}, + {" └─Projection_4", "mpp[tiflash]", "regexp_substr(test.t.expr, test.t.pattern, 1, 1, test.t.match_type)->Column#7"}, + {" └─TableFullScan_7", "mpp[tiflash]", "keep order:false, stats:pseudo"}, + } + tk.MustQuery("explain select regexp_substr(expr, pattern, 1, 1, match_type) as res from test.t;").CheckAt([]int{0, 2, 4}, rows) +} + func TestCastTimeAsDurationToTiFlash(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomain(t) tk := testkit.NewTestKit(t, store) @@ -7606,6 +7623,40 @@ func TestEnableTiFlashReadForWriteStmt(t *testing.T) { checkMpp(rs) } +func TestPointGetWithSelectLock(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(a int, b int, primary key(a, b));") + tk.MustExec("create table t1(c int unique, d int);") + tbl, err := dom.InfoSchema().TableByName(model.CIStr{O: "test", L: "test"}, model.CIStr{O: "t", L: "t"}) + require.NoError(t, err) + // Set the hacked TiFlash replica for explain tests. + tbl.Meta().TiFlashReplica = &model.TiFlashReplicaInfo{Count: 1, Available: true} + tbl1, err := dom.InfoSchema().TableByName(model.CIStr{O: "test", L: "test"}, model.CIStr{O: "t1", L: "t1"}) + require.NoError(t, err) + // Set the hacked TiFlash replica for explain tests. + tbl1.Meta().TiFlashReplica = &model.TiFlashReplicaInfo{Count: 1, Available: true} + + tk.MustExec("set @@tidb_enable_tiflash_read_for_write_stmt = on;") + tk.MustExec("set @@tidb_isolation_read_engines='tidb,tiflash';") + tk.MustExec("begin;") + // assert point get condition with txn commit and tiflash store + tk.MustGetErrMsg("explain select a, b from t where a = 1 and b = 2 for update;", "[planner:1815]Internal : Can't find a proper physical plan for this query") + tk.MustGetErrMsg("explain select c, d from t1 where c = 1 for update;", "[planner:1815]Internal : Can't find a proper physical plan for this query") + tk.MustGetErrMsg("explain select c, d from t1 where c = 1 and d = 1 for update;", "[planner:1815]Internal : Can't find a proper physical plan for this query") + tk.MustQuery("explain select a, b from t where a = 1 for update;") + tk.MustQuery("explain select c, d from t1 where c > 1 for update;") + tk.MustExec("set tidb_isolation_read_engines='tidb,tikv,tiflash';") + tk.MustQuery("explain select a, b from t where a = 1 and b = 2 for update;") + tk.MustQuery("explain select c, d from t1 where c = 1 for update;") + tk.MustExec("commit") + tk.MustExec("set tidb_isolation_read_engines='tidb,tiflash';") + // assert point get condition with auto commit and tiflash store + tk.MustQuery("explain select a, b from t where a = 1 and b = 2 for update;") + tk.MustQuery("explain select c, d from t1 where c = 1 for update;") +} + func TestTableRangeFallback(t *testing.T) { store := testkit.CreateMockStore(t) tk := testkit.NewTestKit(t, store) @@ -7730,7 +7781,10 @@ func TestPlanCacheForTableRangeFallback(t *testing.T) { tk.MustExec("prepare stmt from 'select * from t where a in (?, ?, ?, ?, ?) and b > 1'") tk.MustExec("set @a=10, @b=20, @c=30, @d=40, @e=50") tk.MustExec("execute stmt using @a, @b, @c, @d, @e") - tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 Memory capacity of 10 bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen")) + tk.MustQuery("show warnings").Sort().Check(testkit.Rows("Warning 1105 Memory capacity of 10 bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long")) tk.MustExec("execute stmt using @a, @b, @c, @d, @e") // The plan with range fallback is not cached. tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("0")) @@ -7777,7 +7831,9 @@ func TestPlanCacheForIndexRangeFallback(t *testing.T) { tk.MustExec("prepare stmt2 from 'select * from t where a in (?, ?, ?, ?, ?) and b in (?, ?, ?, ?, ?)'") tk.MustExec("set @a='aa', @b='bb', @c='cc', @d='dd', @e='ee', @f='ff', @g='gg', @h='hh', @i='ii', @j='jj'") tk.MustExec("execute stmt2 using @a, @b, @c, @d, @e, @f, @g, @h, @i, @j") - tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 Memory capacity of 1330 bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen")) + tk.MustQuery("show warnings").Sort().Check(testkit.Rows("Warning 1105 Memory capacity of 1330 bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long")) tk.MustExec("execute stmt2 using @a, @b, @c, @d, @e, @f, @g, @h, @i, @j") tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("0")) } @@ -7933,7 +7989,12 @@ func TestPlanCacheForIndexJoinRangeFallback(t *testing.T) { tk.MustExec("prepare stmt2 from 'select /*+ inl_join(t1) */ * from t1 join t2 on t1.a = t2.d where t1.b in (?, ?, ?, ?, ?)'") tk.MustExec("set @a='a', @b='b', @c='c', @d='d', @e='e'") tk.MustExec("execute stmt2 using @a, @b, @c, @d, @e") - tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 Memory capacity of 1275 bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen")) + tk.MustQuery("show warnings").Sort().Check(testkit.Rows("Warning 1105 Memory capacity of 1275 bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long", + "Warning 1105 skip plan-cache: in-list is too long")) tk.MustExec("execute stmt2 using @a, @b, @c, @d, @e") tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("0")) } @@ -8015,10 +8076,10 @@ func TestNullConditionForPrefixIndex(t *testing.T) { ps := []*util.ProcessInfo{tkProcess} tk.Session().SetSessionManager(&testkit.MockSessionManager{PS: ps}) tk.MustQuery(fmt.Sprintf("explain for connection %d", tkProcess.ID)).Check(testkit.Rows( - "HashAgg_12 1.00 root funcs:count(Column#6)->Column#5", - "└─IndexReader_13 1.00 root index:HashAgg_6", - " └─HashAgg_6 1.00 cop[tikv] funcs:count(1)->Column#6", - " └─IndexRangeScan_11 99.90 cop[tikv] table:t1, index:idx2(c1, c2) range:[\"0xfff\" -inf,\"0xfff\" +inf], keep order:false, stats:pseudo")) + "StreamAgg_18 1.00 root funcs:count(Column#7)->Column#5", + "└─IndexReader_19 1.00 root index:StreamAgg_9", + " └─StreamAgg_9 1.00 cop[tikv] funcs:count(1)->Column#7", + " └─IndexRangeScan_17 99.90 cop[tikv] table:t1, index:idx2(c1, c2) range:[\"0xfff\" -inf,\"0xfff\" +inf], keep order:false, stats:pseudo")) } func TestAutoIncrementCheckWithCheckConstraint(t *testing.T) { diff --git a/planner/core/logical_plan_builder.go b/planner/core/logical_plan_builder.go index 8ec9b8f48fc06..ad28e951ccdba 100644 --- a/planner/core/logical_plan_builder.go +++ b/planner/core/logical_plan_builder.go @@ -4437,8 +4437,7 @@ func (b *PlanBuilder) buildDataSource(ctx context.Context, tn *ast.TableName, as // Because of the nested views, so we should check the left table list in hint when build the data source from the view inside the current view. currentQBNameMap4View[qbName] = viewQBNameHintTable[1:] currentViewHints[qbName] = b.hintProcessor.QbHints4View[qbName] - delete(b.hintProcessor.QbNameMap4View, qbName) - delete(b.hintProcessor.QbHints4View, qbName) + b.hintProcessor.QbNameUsed4View[qbName] = struct{}{} } } return b.BuildDataSourceFromView(ctx, dbName, tableInfo, currentQBNameMap4View, currentViewHints) @@ -5041,6 +5040,7 @@ func (b *PlanBuilder) BuildDataSourceFromView(ctx context.Context, dbName model. hintProcessor.QbNameMap4View = qbNameMap4View hintProcessor.QbHints4View = viewHints + hintProcessor.QbNameUsed4View = make(map[string]struct{}) hintProcessor.QbHints = currentQbHints hintProcessor.QbNameMap = currentQbNameMap @@ -5049,6 +5049,7 @@ func (b *PlanBuilder) BuildDataSourceFromView(ctx context.Context, dbName model. b.hintProcessor = hintProcessor b.ctx.GetSessionVars().PlannerSelectBlockAsName = make([]ast.HintTable, hintProcessor.MaxSelectStmtOffset()+1) defer func() { + b.hintProcessor.HandleUnusedViewHints() b.hintProcessor = originHintProcessor b.ctx.GetSessionVars().PlannerSelectBlockAsName = originPlannerSelectBlockAsName }() diff --git a/planner/core/main_test.go b/planner/core/main_test.go index 8bd3264684fb7..230cc3f4bdd2d 100644 --- a/planner/core/main_test.go +++ b/planner/core/main_test.go @@ -50,6 +50,7 @@ func TestMain(m *testing.M) { testDataMap.LoadTestSuiteData("testdata", "join_reorder_suite") testDataMap.LoadTestSuiteData("testdata", "flat_plan_suite") testDataMap.LoadTestSuiteData("testdata", "binary_plan_suite") + testDataMap.LoadTestSuiteData("testdata", "json_plan_suite") indexMergeSuiteData = testDataMap["index_merge_suite"] planSuiteUnexportedData = testDataMap["plan_suite_unexported"] @@ -130,3 +131,11 @@ func GetFlatPlanSuiteData() testdata.TestData { func GetBinaryPlanSuiteData() testdata.TestData { return testDataMap["binary_plan_suite"] } + +func GetIndexMergeSuiteData() testdata.TestData { + return testDataMap["index_merge_suite"] +} + +func GetJSONPlanSuiteData() testdata.TestData { + return testDataMap["json_plan_suite"] +} diff --git a/planner/core/optimizer.go b/planner/core/optimizer.go index fe3219fcdaf21..1064ea529b2d0 100644 --- a/planner/core/optimizer.go +++ b/planner/core/optimizer.go @@ -16,11 +16,13 @@ package core import ( "context" + "fmt" "math" "github.com/pingcap/errors" "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/expression" + "github.com/pingcap/tidb/expression/aggregation" "github.com/pingcap/tidb/infoschema" "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/lock" @@ -390,6 +392,7 @@ func postOptimize(sctx sessionctx.Context, plan PhysicalPlan) (PhysicalPlan, err handleFineGrainedShuffle(sctx, plan) checkPlanCacheable(sctx, plan) propagateProbeParents(plan, nil) + countStarRewrite(plan) return plan, nil } @@ -531,6 +534,120 @@ func prunePhysicalColumnsInternal(sctx sessionctx.Context, plan PhysicalPlan) er return nil } +/* +* +The countStarRewriter is used to rewrite + + count(*) -> count(not null column) + +**Only for TiFlash** +Attention: +Since count(*) is directly translated into count(1) during grammar parsing, +the rewritten pattern actually matches count(constant) + +Pattern: +PhysicalAggregation: count(constant) + + | + TableFullScan: TiFlash + +Optimize: +Table + + + +Query: select count(*) from table +ColumnPruningRule: datasource pick row_id +countStarRewrite: datasource pick k1 instead of row_id + + rewrite count(*) -> count(k1) + +Rewritten Query: select count(k1) from table +*/ +func countStarRewrite(plan PhysicalPlan) { + countStarRewriteInternal(plan) + if tableReader, ok := plan.(*PhysicalTableReader); ok { + countStarRewrite(tableReader.tablePlan) + } else { + for _, child := range plan.Children() { + countStarRewrite(child) + } + } +} + +func countStarRewriteInternal(plan PhysicalPlan) { + // match pattern any agg(count(constant)) -> tablefullscan(tiflash) + var physicalAgg *basePhysicalAgg + switch x := plan.(type) { + case *PhysicalHashAgg: + physicalAgg = x.getPointer() + case *PhysicalStreamAgg: + physicalAgg = x.getPointer() + default: + return + } + if len(physicalAgg.GroupByItems) > 0 || len(physicalAgg.children) != 1 { + return + } + for _, aggFunc := range physicalAgg.AggFuncs { + if aggFunc.Name != "count" || len(aggFunc.Args) != 1 || aggFunc.HasDistinct { + return + } + if _, ok := aggFunc.Args[0].(*expression.Constant); !ok { + return + } + } + physicalTableScan, ok := physicalAgg.Children()[0].(*PhysicalTableScan) + if !ok || !physicalTableScan.isFullScan() || physicalTableScan.StoreType != kv.TiFlash || len(physicalTableScan.schema.Columns) != 1 { + return + } + // rewrite datasource and agg args + rewriteTableScanAndAggArgs(physicalTableScan, physicalAgg.AggFuncs) +} + +// rewriteTableScanAndAggArgs Pick the narrowest and not null column from table +// If there is no not null column in Data Source, the row_id or pk column will be retained +func rewriteTableScanAndAggArgs(physicalTableScan *PhysicalTableScan, aggFuncs []*aggregation.AggFuncDesc) { + var resultColumnInfo *model.ColumnInfo + var resultColumn *expression.Column + + resultColumnInfo = physicalTableScan.Columns[0] + resultColumn = physicalTableScan.schema.Columns[0] + // prefer not null column from table + for _, columnInfo := range physicalTableScan.Table.Columns { + if columnInfo.FieldType.IsVarLengthType() { + continue + } + if mysql.HasNotNullFlag(columnInfo.GetFlag()) { + if columnInfo.GetFlen() < resultColumnInfo.GetFlen() { + resultColumnInfo = columnInfo + resultColumn = &expression.Column{ + UniqueID: physicalTableScan.ctx.GetSessionVars().AllocPlanColumnID(), + ID: resultColumnInfo.ID, + RetType: resultColumnInfo.FieldType.Clone(), + OrigName: fmt.Sprintf("%s.%s.%s", physicalTableScan.DBName.L, physicalTableScan.Table.Name.L, resultColumnInfo.Name), + } + } + } + } + // table scan (row_id) -> (not null column) + physicalTableScan.Columns[0] = resultColumnInfo + physicalTableScan.schema.Columns[0] = resultColumn + // agg arg count(1) -> count(not null column) + arg := resultColumn.Clone() + for _, aggFunc := range aggFuncs { + constExpr, ok := aggFunc.Args[0].(*expression.Constant) + if !ok { + return + } + // count(null) shouldn't be rewritten + if constExpr.Value.IsNull() { + continue + } + aggFunc.Args[0] = arg + } +} + // Only for MPP(Window<-[Sort]<-ExchangeReceiver<-ExchangeSender). // TiFlashFineGrainedShuffleStreamCount: // < 0: fine grained shuffle is disabled. @@ -666,6 +783,7 @@ func setupFineGrainedShuffleInternal(plan PhysicalPlan, helper *fineGrainedShuff func checkPlanCacheable(sctx sessionctx.Context, plan PhysicalPlan) { if sctx.GetSessionVars().StmtCtx.UseCache && useTiFlash(plan) { sctx.GetSessionVars().StmtCtx.SkipPlanCache = true + sctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: TiFlash plan is un-cacheable")) } } diff --git a/planner/core/partition_pruner_test.go b/planner/core/partition_pruner_test.go index 5f07340f626e1..166f251b53fc3 100644 --- a/planner/core/partition_pruner_test.go +++ b/planner/core/partition_pruner_test.go @@ -312,15 +312,15 @@ func TestListPartitionPruner(t *testing.T) { for i, tt := range input { testdata.OnRecord(func() { output[i].SQL = tt - output[i].Result = testdata.ConvertRowsToStrings(tk.MustQuery(tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(tk.MustQuery(tt).Sort().Rows()) output[i].Plan = testdata.ConvertRowsToStrings(tk.MustQuery("explain format = 'brief' " + tt).Rows()) }) tk.MustQuery("explain format = 'brief' " + tt).Check(testkit.Rows(output[i].Plan...)) - result := tk.MustQuery(tt) + result := tk.MustQuery(tt).Sort() result.Check(testkit.Rows(output[i].Result...)) // If the query doesn't specified the partition, compare the result with normal table if !strings.Contains(tt, "partition(") { - result.Check(tk2.MustQuery(tt).Rows()) + result.Check(tk.MustQuery(tt).Sort().Rows()) valid = true } require.True(t, valid) @@ -393,7 +393,7 @@ func TestListColumnsPartitionPruner(t *testing.T) { indexPlanTree := testdata.ConvertRowsToStrings(indexPlan.Rows()) testdata.OnRecord(func() { output[i].SQL = tt.SQL - output[i].Result = testdata.ConvertRowsToStrings(tk.MustQuery(tt.SQL).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(tk.MustQuery(tt.SQL).Sort().Rows()) // Test for table without index. output[i].Plan = planTree // Test for table with index. @@ -408,14 +408,14 @@ func TestListColumnsPartitionPruner(t *testing.T) { checkPrunePartitionInfo(t, tt.SQL, tt.Pruner, indexPlanTree) // compare the result. - result := tk.MustQuery(tt.SQL) + result := tk.MustQuery(tt.SQL).Sort() idxResult := tk1.MustQuery(tt.SQL) - result.Check(idxResult.Rows()) + result.Check(idxResult.Sort().Rows()) result.Check(testkit.Rows(output[i].Result...)) // If the query doesn't specified the partition, compare the result with normal table if !strings.Contains(tt.SQL, "partition(") { - result.Check(tk2.MustQuery(tt.SQL).Rows()) + result.Check(tk2.MustQuery(tt.SQL).Sort().Rows()) valid = true } } diff --git a/planner/core/physical_plan_test.go b/planner/core/physical_plan_test.go index 3e41ae2d182d2..7e5b13b588e16 100644 --- a/planner/core/physical_plan_test.go +++ b/planner/core/physical_plan_test.go @@ -2412,7 +2412,7 @@ func TestPhysicalPlanMemoryTrace(t *testing.T) { ls.ByItems = append(ls.ByItems, &util.ByItems{}) require.Greater(t, ls.MemoryUsage(), size) - //PhysicalProperty + // PhysicalProperty pp := property.PhysicalProperty{} size = pp.MemoryUsage() pp.MPPPartitionCols = append(pp.MPPPartitionCols, &property.MPPPartitionColumn{}) @@ -2460,3 +2460,76 @@ func TestNoDecorrelateHint(t *testing.T) { tk.MustQuery("show warnings").Check(testkit.Rows(output[i].Warning...)) } } + +func TestCountStarForTikv(t *testing.T) { + var ( + input []string + output []struct { + SQL string + Plan []string + Warning []string + } + ) + planSuiteData := core.GetPlanSuiteData() + planSuiteData.LoadTestCases(t, &input, &output) + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("set tidb_cost_model_version=1") + tk.MustExec("create table t (a int(11) not null, b varchar(10) not null, c date not null, d char(1) not null, e bigint not null, f datetime not null, g bool not null, h bool )") + tk.MustExec("create table t_pick_row_id (a char(20) not null)") + + // tikv + for i, ts := range input { + testdata.OnRecord(func() { + output[i].SQL = ts + output[i].Plan = testdata.ConvertRowsToStrings(tk.MustQuery("explain format = 'brief' " + ts).Rows()) + }) + tk.MustQuery("explain format = 'brief' " + ts).Check(testkit.Rows(output[i].Plan...)) + } +} + +func TestCountStarForTiFlash(t *testing.T) { + var ( + input []string + output []struct { + SQL string + Plan []string + Warning []string + } + ) + planSuiteData := core.GetPlanSuiteData() + planSuiteData.LoadTestCases(t, &input, &output) + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("set tidb_cost_model_version=1") + tk.MustExec("create table t (a int(11) not null, b varchar(10) not null, c date not null, d char(1) not null, e bigint not null, f datetime not null, g bool not null, h bool )") + tk.MustExec("create table t_pick_row_id (a char(20) not null)") + + // tiflash + dom := domain.GetDomain(tk.Session()) + is := dom.InfoSchema() + db, exists := is.SchemaByName(model.NewCIStr("test")) + require.True(t, exists) + for _, tblInfo := range db.Tables { + tableName := tblInfo.Name.L + if tableName == "t" || tableName == "t_pick_row_id" { + tblInfo.TiFlashReplica = &model.TiFlashReplicaInfo{ + Count: 1, + Available: true, + } + } + } + + tk.MustExec("set @@tidb_allow_mpp=1; set @@tidb_enforce_mpp=1;") + for i, ts := range input { + testdata.OnRecord(func() { + output[i].SQL = ts + output[i].Plan = testdata.ConvertRowsToStrings(tk.MustQuery("explain format = 'brief' " + ts).Rows()) + }) + tk.MustQuery("explain format = 'brief' " + ts).Check(testkit.Rows(output[i].Plan...)) + } +} diff --git a/planner/core/physical_plan_trace_test.go b/planner/core/physical_plan_trace_test.go index ff82d3392bcdd..5390fc20af0bd 100644 --- a/planner/core/physical_plan_trace_test.go +++ b/planner/core/physical_plan_trace_test.go @@ -38,7 +38,6 @@ func TestPhysicalOptimizeWithTraceEnabled(t *testing.T) { tk.MustExec("use test") tk.MustExec("create table t(a int primary key, b int, c int,d int,key ib (b),key ic (c))") tk.MustExec("SET session tidb_enable_index_merge = ON;") - tk.MustExec("set tidb_cost_model_version=2") testcases := []struct { sql string physicalList []string @@ -62,7 +61,7 @@ func TestPhysicalOptimizeWithTraceEnabled(t *testing.T) { "Limit_20", "IndexReader_21", "Limit_14", - "HashAgg_9", + "StreamAgg_10", "Projection_8", }, }, diff --git a/planner/core/physical_plans.go b/planner/core/physical_plans.go index bdb08b7438b5a..537b0826eb381 100644 --- a/planner/core/physical_plans.go +++ b/planner/core/physical_plans.go @@ -327,7 +327,7 @@ func (p *PhysicalIndexReader) Clone() (PhysicalPlan, error) { if cloned.IndexPlans, err = clonePhysicalPlan(p.IndexPlans); err != nil { return nil, err } - cloned.OutputColumns = cloneCols(p.OutputColumns) + cloned.OutputColumns = util.CloneCols(p.OutputColumns) return cloned, err } @@ -548,6 +548,10 @@ func (p *PhysicalIndexLookUpReader) MemoryUsage() (sum int64) { type PhysicalIndexMergeReader struct { physicalSchemaProducer + // IsIntersectionType means whether it's intersection type or union type. + // Intersection type is for expressions connected by `AND` and union type is for `OR`. + IsIntersectionType bool + // PartialPlans flats the partialPlans to construct executor pb. PartialPlans [][]PhysicalPlan // TablePlans flats the tablePlan to construct executor pb. @@ -673,7 +677,12 @@ type PhysicalIndexScan struct { // tblColHists contains all columns before pruning, which are used to calculate row-size tblColHists *statistics.HistColl pkIsHandleCol *expression.Column - prop *property.PhysicalProperty + + // constColsByCond records the constant part of the index columns caused by the access conds. + // e.g. the index is (a, b, c) and there's filter a = 1 and b = 2, then the column a and b are const part. + constColsByCond []bool + + prop *property.PhysicalProperty } // Clone implements PhysicalPlan interface. @@ -685,18 +694,18 @@ func (p *PhysicalIndexScan) Clone() (PhysicalPlan, error) { return nil, err } cloned.physicalSchemaProducer = *base - cloned.AccessCondition = cloneExprs(p.AccessCondition) + cloned.AccessCondition = util.CloneExprs(p.AccessCondition) if p.Table != nil { cloned.Table = p.Table.Clone() } if p.Index != nil { cloned.Index = p.Index.Clone() } - cloned.IdxCols = cloneCols(p.IdxCols) + cloned.IdxCols = util.CloneCols(p.IdxCols) cloned.IdxColLens = make([]int, len(p.IdxColLens)) copy(cloned.IdxColLens, p.IdxColLens) - cloned.Ranges = cloneRanges(p.Ranges) - cloned.Columns = cloneColInfos(p.Columns) + cloned.Ranges = util.CloneRanges(p.Ranges) + cloned.Columns = util.CloneColInfos(p.Columns) if p.dataSourceSchema != nil { cloned.dataSourceSchema = p.dataSourceSchema.Clone() } @@ -836,13 +845,13 @@ func (ts *PhysicalTableScan) Clone() (PhysicalPlan, error) { return nil, err } clonedScan.physicalSchemaProducer = *prod - clonedScan.AccessCondition = cloneExprs(ts.AccessCondition) - clonedScan.filterCondition = cloneExprs(ts.filterCondition) + clonedScan.AccessCondition = util.CloneExprs(ts.AccessCondition) + clonedScan.filterCondition = util.CloneExprs(ts.filterCondition) if ts.Table != nil { clonedScan.Table = ts.Table.Clone() } - clonedScan.Columns = cloneColInfos(ts.Columns) - clonedScan.Ranges = cloneRanges(ts.Ranges) + clonedScan.Columns = util.CloneColInfos(ts.Columns) + clonedScan.Ranges = util.CloneRanges(ts.Ranges) clonedScan.TableAsName = ts.TableAsName if ts.Hist != nil { clonedScan.Hist = ts.Hist.Copy() @@ -993,7 +1002,7 @@ func (p *PhysicalProjection) Clone() (PhysicalPlan, error) { return nil, err } cloned.basePhysicalPlan = *base - cloned.Exprs = cloneExprs(p.Exprs) + cloned.Exprs = util.CloneExprs(p.Exprs) return cloned, err } @@ -1154,16 +1163,16 @@ func (p *basePhysicalJoin) cloneWithSelf(newSelf PhysicalPlan) (*basePhysicalJoi } cloned.physicalSchemaProducer = *base cloned.JoinType = p.JoinType - cloned.LeftConditions = cloneExprs(p.LeftConditions) - cloned.RightConditions = cloneExprs(p.RightConditions) - cloned.OtherConditions = cloneExprs(p.OtherConditions) + cloned.LeftConditions = util.CloneExprs(p.LeftConditions) + cloned.RightConditions = util.CloneExprs(p.RightConditions) + cloned.OtherConditions = util.CloneExprs(p.OtherConditions) cloned.InnerChildIdx = p.InnerChildIdx - cloned.OuterJoinKeys = cloneCols(p.OuterJoinKeys) - cloned.InnerJoinKeys = cloneCols(p.InnerJoinKeys) - cloned.LeftJoinKeys = cloneCols(p.LeftJoinKeys) - cloned.RightJoinKeys = cloneCols(p.RightJoinKeys) - cloned.LeftNAJoinKeys = cloneCols(p.LeftNAJoinKeys) - cloned.RightNAJoinKeys = cloneCols(p.RightNAJoinKeys) + cloned.OuterJoinKeys = util.CloneCols(p.OuterJoinKeys) + cloned.InnerJoinKeys = util.CloneCols(p.InnerJoinKeys) + cloned.LeftJoinKeys = util.CloneCols(p.LeftJoinKeys) + cloned.RightJoinKeys = util.CloneCols(p.RightJoinKeys) + cloned.LeftNAJoinKeys = util.CloneCols(p.LeftNAJoinKeys) + cloned.RightNAJoinKeys = util.CloneCols(p.RightNAJoinKeys) for _, d := range p.DefaultValues { cloned.DefaultValues = append(cloned.DefaultValues, *d.Clone()) } @@ -1669,7 +1678,7 @@ func (p *basePhysicalAgg) cloneWithSelf(newSelf PhysicalPlan) (*basePhysicalAgg, for _, aggDesc := range p.AggFuncs { cloned.AggFuncs = append(cloned.AggFuncs, aggDesc.Clone()) } - cloned.GroupByItems = cloneExprs(p.GroupByItems) + cloned.GroupByItems = util.CloneExprs(p.GroupByItems) return cloned, nil } @@ -1744,6 +1753,10 @@ type PhysicalHashAgg struct { basePhysicalAgg } +func (p *PhysicalHashAgg) getPointer() *basePhysicalAgg { + return &p.basePhysicalAgg +} + // Clone implements PhysicalPlan interface. func (p *PhysicalHashAgg) Clone() (PhysicalPlan, error) { cloned := new(PhysicalHashAgg) @@ -1778,6 +1791,10 @@ type PhysicalStreamAgg struct { basePhysicalAgg } +func (p *PhysicalStreamAgg) getPointer() *basePhysicalAgg { + return &p.basePhysicalAgg +} + // Clone implements PhysicalPlan interface. func (p *PhysicalStreamAgg) Clone() (PhysicalPlan, error) { cloned := new(PhysicalStreamAgg) @@ -1939,7 +1956,7 @@ func (p *PhysicalSelection) Clone() (PhysicalPlan, error) { return nil, err } cloned.basePhysicalPlan = *base - cloned.Conditions = cloneExprs(p.Conditions) + cloned.Conditions = util.CloneExprs(p.Conditions) return cloned, nil } diff --git a/planner/core/plan.go b/planner/core/plan.go index 78d18c59ff7f0..e492ad08d0fc7 100644 --- a/planner/core/plan.go +++ b/planner/core/plan.go @@ -197,7 +197,7 @@ func optimizeByShuffle4StreamAgg(pp *PhysicalStreamAgg, ctx sessionctx.Context) Tails: []PhysicalPlan{tail}, DataSources: []PhysicalPlan{dataSource}, SplitterType: PartitionHashSplitterType, - ByItemArrays: [][]expression.Expression{cloneExprs(pp.GroupByItems)}, + ByItemArrays: [][]expression.Expression{util.CloneExprs(pp.GroupByItems)}, }.Init(ctx, pp.statsInfo(), pp.SelectBlockOffset(), reqProp) return shuffle } diff --git a/planner/core/plan_cache_test.go b/planner/core/plan_cache_test.go index d1f51bc296c07..868f35229ce6e 100644 --- a/planner/core/plan_cache_test.go +++ b/planner/core/plan_cache_test.go @@ -176,3 +176,35 @@ func TestIssue38710(t *testing.T) { require.Equal(t, 2, len(rows.Rows())) tk.MustQuery("select @@last_plan_from_cache").Check(testkit.Rows("0")) // can not use the cache because the types for @a and @b are not equal to the cached plan } + +func TestPlanCacheDiagInfo(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t (a int, b int, key(a), key(b))") + + tk.MustExec("prepare stmt from 'select * from t where a in (select a from t)'") + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: query has sub-queries is un-cacheable")) + + tk.MustExec("prepare stmt from 'select /*+ ignore_plan_cache() */ * from t'") + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: ignore plan cache by hint")) + + tk.MustExec("prepare stmt from 'select * from t limit ?'") + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: query has 'limit ?' is un-cacheable")) + + tk.MustExec("prepare stmt from 'select * from t limit ?, 1'") + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: query has 'limit ?, 10' is un-cacheable")) + + tk.MustExec("prepare stmt from 'select * from t order by ?'") + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: query has 'order by ?' is un-cacheable")) + + tk.MustExec("prepare stmt from 'select * from t where a=?'") + tk.MustExec("set @a='123'") + tk.MustExec("execute stmt using @a") // '123' -> 123 + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: '123' may be converted to INT")) + + tk.MustExec("prepare stmt from 'select * from t where a=? and a=?'") + tk.MustExec("set @a=1, @b=1") + tk.MustExec("execute stmt using @a, @b") // a=1 and a=1 -> a=1 + tk.MustQuery("show warnings").Check(testkit.Rows("Warning 1105 skip plan-cache: some parameters may be overwritten")) +} diff --git a/planner/core/plan_cache_utils.go b/planner/core/plan_cache_utils.go index 0abecafaf7ec8..4229e2b134f06 100644 --- a/planner/core/plan_cache_utils.go +++ b/planner/core/plan_cache_utils.go @@ -117,7 +117,11 @@ func GeneratePlanCacheStmtWithAST(ctx context.Context, sctx sessionctx.Context, if !vars.EnablePreparedPlanCache { prepared.UseCache = false } else { - prepared.UseCache = CacheableWithCtx(sctx, stmt, ret.InfoSchema) + cacheable, reason := CacheableWithCtx(sctx, stmt, ret.InfoSchema) + prepared.UseCache = cacheable + if !cacheable { + sctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: " + reason)) + } selectStmtNode, normalizedSQL4PC, digest4PC, err = ExtractSelectAndNormalizeDigest(stmt, vars.CurrentDB) if err != nil || selectStmtNode == nil { normalizedSQL4PC = "" diff --git a/planner/core/plan_cacheable_checker.go b/planner/core/plan_cacheable_checker.go index 0e4e28250ad4c..55b1e45cd0e99 100644 --- a/planner/core/plan_cacheable_checker.go +++ b/planner/core/plan_cacheable_checker.go @@ -15,6 +15,8 @@ package core import ( + "fmt" + "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/infoschema" "github.com/pingcap/tidb/parser/ast" @@ -27,20 +29,21 @@ import ( // Cacheable checks whether the input ast is cacheable with empty session context, which is mainly for testing. func Cacheable(node ast.Node, is infoschema.InfoSchema) bool { - return CacheableWithCtx(nil, node, is) + c, _ := CacheableWithCtx(nil, node, is) + return c } // CacheableWithCtx checks whether the input ast is cacheable. // Handle "ignore_plan_cache()" hint // If there are multiple hints, only one will take effect -func CacheableWithCtx(sctx sessionctx.Context, node ast.Node, is infoschema.InfoSchema) bool { +func CacheableWithCtx(sctx sessionctx.Context, node ast.Node, is infoschema.InfoSchema) (bool, string) { _, isSelect := node.(*ast.SelectStmt) _, isUpdate := node.(*ast.UpdateStmt) _, isInsert := node.(*ast.InsertStmt) _, isDelete := node.(*ast.DeleteStmt) _, isSetOpr := node.(*ast.SetOprStmt) if !(isSelect || isUpdate || isInsert || isDelete || isSetOpr) { - return false + return false, "not a SELECT/UPDATE/INSERT/DELETE/SET statement" } checker := cacheableChecker{ sctx: sctx, @@ -48,7 +51,7 @@ func CacheableWithCtx(sctx sessionctx.Context, node ast.Node, is infoschema.Info schema: is, } node.Accept(&checker) - return checker.cacheable + return checker.cacheable, checker.reason } // cacheableChecker checks whether a query's plan can be cached, querys that: @@ -61,6 +64,7 @@ type cacheableChecker struct { sctx sessionctx.Context cacheable bool schema infoschema.InfoSchema + reason string // reason why cannot use plan-cache } // Enter implements Visitor interface. @@ -70,6 +74,7 @@ func (checker *cacheableChecker) Enter(in ast.Node) (out ast.Node, skipChildren for _, hints := range node.TableHints { if hints.HintName.L == HintIgnorePlanCache { checker.cacheable = false + checker.reason = "ignore plan cache by hint" return in, true } } @@ -77,6 +82,7 @@ func (checker *cacheableChecker) Enter(in ast.Node) (out ast.Node, skipChildren for _, hints := range node.TableHints { if hints.HintName.L == HintIgnorePlanCache { checker.cacheable = false + checker.reason = "ignore plan cache by hint" return in, true } } @@ -84,21 +90,25 @@ func (checker *cacheableChecker) Enter(in ast.Node) (out ast.Node, skipChildren for _, hints := range node.TableHints { if hints.HintName.L == HintIgnorePlanCache { checker.cacheable = false + checker.reason = "ignore plan cache by hint" return in, true } } case *ast.VariableExpr, *ast.ExistsSubqueryExpr, *ast.SubqueryExpr: checker.cacheable = false + checker.reason = "query has sub-queries is un-cacheable" return in, true case *ast.FuncCallExpr: if _, found := expression.UnCacheableFunctions[node.FnName.L]; found { checker.cacheable = false + checker.reason = fmt.Sprintf("query has '%v' is un-cacheable", node.FnName.L) return in, true } case *ast.OrderByClause: for _, item := range node.Items { if _, isParamMarker := item.Expr.(*driver.ParamMarkerExpr); isParamMarker { checker.cacheable = false + checker.reason = "query has 'order by ?' is un-cacheable" return in, true } } @@ -106,6 +116,7 @@ func (checker *cacheableChecker) Enter(in ast.Node) (out ast.Node, skipChildren for _, item := range node.Items { if _, isParamMarker := item.Expr.(*driver.ParamMarkerExpr); isParamMarker { checker.cacheable = false + checker.reason = "query has 'group by ?' is un-cacheable" return in, true } } @@ -113,18 +124,21 @@ func (checker *cacheableChecker) Enter(in ast.Node) (out ast.Node, skipChildren if node.Count != nil { if _, isParamMarker := node.Count.(*driver.ParamMarkerExpr); isParamMarker { checker.cacheable = false + checker.reason = "query has 'limit ?' is un-cacheable" return in, true } } if node.Offset != nil { if _, isParamMarker := node.Offset.(*driver.ParamMarkerExpr); isParamMarker { checker.cacheable = false + checker.reason = "query has 'limit ?, 10' is un-cacheable" return in, true } } case *ast.FrameBound: if _, ok := node.Expr.(*driver.ParamMarkerExpr); ok { checker.cacheable = false + checker.reason = "query has ? in window function frames is un-cacheable" return in, true } case *ast.TableName: @@ -138,14 +152,17 @@ func (checker *cacheableChecker) Enter(in ast.Node) (out ast.Node, skipChildren } */ checker.cacheable = false + checker.reason = "query accesses partitioned tables is un-cacheable" return in, true } if hasGeneratedCol(checker.schema, node) { checker.cacheable = false + checker.reason = "query accesses generated columns is un-cacheable" return in, true } if isTempTable(checker.schema, node) { checker.cacheable = false + checker.reason = "query accesses temporary tables is un-cacheable" return in, true } } diff --git a/planner/core/plan_cost_detail_test.go b/planner/core/plan_cost_detail_test.go index 0b2df302b3cdd..8a5d04f2df187 100644 --- a/planner/core/plan_cost_detail_test.go +++ b/planner/core/plan_cost_detail_test.go @@ -34,7 +34,6 @@ func TestPlanCostDetail(t *testing.T) { store, dom := testkit.CreateMockStoreAndDomain(t) tk := testkit.NewTestKit(t, store) tk.MustExec("use test") - tk.MustExec("set tidb_cost_model_version=1") tk.MustExec(`create table t (a int primary key, b int, c int, d int, k int, key b(b), key cd(c, d), unique key(k))`) testcases := []struct { sql string diff --git a/planner/core/plan_cost_ver2.go b/planner/core/plan_cost_ver2.go index 81a59e904ed41..b53d53c845c45 100644 --- a/planner/core/plan_cost_ver2.go +++ b/planner/core/plan_cost_ver2.go @@ -17,7 +17,7 @@ package core import ( "fmt" "math" - "strings" + "strconv" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/expression/aggregation" @@ -30,6 +30,11 @@ import ( "github.com/pingcap/tipb/go-tipb" ) +// GetPlanCost returns the cost of this plan. +func GetPlanCost(p PhysicalPlan, taskType property.TaskType, option *PlanCostOption) (float64, error) { + return getPlanCost(p, taskType, option) +} + func getPlanCost(p PhysicalPlan, taskType property.TaskType, option *PlanCostOption) (float64, error) { if p.SCtx().GetSessionVars().CostModelVersion == modelVer2 { planCost, err := p.getPlanCostVer2(taskType, option) @@ -57,7 +62,7 @@ func (p *basePhysicalPlan) getPlanCostVer2(taskType property.TaskType, option *P p.planCostVer2 = sumCostVer2(childCosts...) } p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -79,7 +84,7 @@ func (p *PhysicalSelection) getPlanCostVer2(taskType property.TaskType, option * p.planCostVer2 = sumCostVer2(filterCost, childCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -103,7 +108,7 @@ func (p *PhysicalProjection) getPlanCostVer2(taskType property.TaskType, option p.planCostVer2 = sumCostVer2(childCost, divCostVer2(projCost, concurrency)) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -120,7 +125,7 @@ func (p *PhysicalIndexScan) getPlanCostVer2(taskType property.TaskType, option * p.planCostVer2 = scanCostVer2(option, rows, rowSize, scanFactor) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -149,7 +154,7 @@ func (p *PhysicalTableScan) getPlanCostVer2(taskType property.TaskType, option * } p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -174,7 +179,7 @@ func (p *PhysicalIndexReader) getPlanCostVer2(taskType property.TaskType, option p.planCostVer2 = divCostVer2(sumCostVer2(childCost, netCost), concurrency) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -209,7 +214,7 @@ func (p *PhysicalTableReader) getPlanCostVer2(taskType property.TaskType, option !hasCostFlag(option.CostFlag, CostFlagRecalculate) { // show the real cost in explain-statements p.planCostVer2 = divCostVer2(p.planCostVer2, 1000000000) } - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -251,11 +256,10 @@ func (p *PhysicalIndexLookUpReader) getPlanCostVer2(taskType property.TaskType, } tableSideCost := divCostVer2(sumCostVer2(tableNetCost, tableChildCost), distConcurrency) - // double-read: assume at least 1 row to double-read to avoid 0 double-read cost. - doubleReadRows := math.Max(indexRows, 1) + doubleReadRows := indexRows doubleReadCPUCost := newCostVer2(option, cpuFactor, indexRows*cpuFactor.Value, - "double-read-cpu(%v*%v)", doubleReadRows, cpuFactor) + func() string { return fmt.Sprintf("double-read-cpu(%v*%v)", doubleReadRows, cpuFactor) }) batchSize := float64(p.ctx.GetSessionVars().IndexLookupSize) taskPerBatch := 32.0 // TODO: remove this magic number doubleReadTasks := doubleReadRows / batchSize * taskPerBatch @@ -271,7 +275,7 @@ func (p *PhysicalIndexLookUpReader) getPlanCostVer2(taskType property.TaskType, } p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -316,7 +320,7 @@ func (p *PhysicalIndexMergeReader) getPlanCostVer2(taskType property.TaskType, o p.planCostVer2 = sumCostVer2(tableSideCost, sumIndexSideCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -351,15 +355,15 @@ func (p *PhysicalSort) getPlanCostVer2(taskType property.TaskType, option *PlanC if !spill { sortMemCost = newCostVer2(option, memFactor, rows*rowSize*memFactor.Value, - "sortMem(%v*%v*%v)", rows, rowSize, memFactor) + func() string { return fmt.Sprintf("sortMem(%v*%v*%v)", rows, rowSize, memFactor) }) sortDiskCost = zeroCostVer2 } else { sortMemCost = newCostVer2(option, memFactor, float64(memQuota)*memFactor.Value, - "sortMem(%v*%v)", memQuota, memFactor) + func() string { return fmt.Sprintf("sortMem(%v*%v)", memQuota, memFactor) }) sortDiskCost = newCostVer2(option, diskFactor, rows*rowSize*diskFactor.Value, - "sortDisk(%v*%v*%v)", rows, rowSize, diskFactor) + func() string { return fmt.Sprintf("sortDisk(%v*%v*%v)", rows, rowSize, diskFactor) }) } childCost, err := p.children[0].getPlanCostVer2(taskType, option) @@ -369,7 +373,7 @@ func (p *PhysicalSort) getPlanCostVer2(taskType property.TaskType, option *PlanC p.planCostVer2 = sumCostVer2(childCost, sortCPUCost, sortMemCost, sortDiskCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -390,7 +394,7 @@ func (p *PhysicalTopN) getPlanCostVer2(taskType property.TaskType, option *PlanC topNCPUCost := orderCostVer2(option, rows, N, p.ByItems, cpuFactor) topNMemCost := newCostVer2(option, memFactor, N*rowSize*memFactor.Value, - "topMem(%v*%v*%v)", N, rowSize, memFactor) + func() string { return fmt.Sprintf("topMem(%v*%v*%v)", N, rowSize, memFactor) }) childCost, err := p.children[0].getPlanCostVer2(taskType, option) if err != nil { @@ -399,7 +403,7 @@ func (p *PhysicalTopN) getPlanCostVer2(taskType property.TaskType, option *PlanC p.planCostVer2 = sumCostVer2(childCost, topNCPUCost, topNMemCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -422,7 +426,7 @@ func (p *PhysicalStreamAgg) getPlanCostVer2(taskType property.TaskType, option * p.planCostVer2 = sumCostVer2(childCost, aggCost, groupCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -441,17 +445,20 @@ func (p *PhysicalHashAgg) getPlanCostVer2(taskType property.TaskType, option *Pl aggCost := aggCostVer2(option, inputRows, p.AggFuncs, cpuFactor) groupCost := groupCostVer2(option, inputRows, p.GroupByItems, cpuFactor) - hashBuildCost := hashBuildCostVer2(option, outputRows, outputRowSize, p.GroupByItems, cpuFactor, memFactor) - hashProbeCost := hashProbeCostVer2(option, inputRows, p.GroupByItems, cpuFactor) + hashBuildCost := hashBuildCostVer2(option, outputRows, outputRowSize, float64(len(p.GroupByItems)), cpuFactor, memFactor) + hashProbeCost := hashProbeCostVer2(option, inputRows, float64(len(p.GroupByItems)), cpuFactor) + startCost := newCostVer2(option, cpuFactor, + 10*3*cpuFactor.Value, // 10rows * 3func * cpuFactor + func() string { return fmt.Sprintf("cpu(10*3*%v)", cpuFactor) }) childCost, err := p.children[0].getPlanCostVer2(taskType, option) if err != nil { return zeroCostVer2, err } - p.planCostVer2 = sumCostVer2(childCost, divCostVer2(sumCostVer2(aggCost, groupCost, hashBuildCost, hashProbeCost), concurrency)) + p.planCostVer2 = sumCostVer2(startCost, childCost, divCostVer2(sumCostVer2(aggCost, groupCost, hashBuildCost, hashProbeCost), concurrency)) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -481,7 +488,7 @@ func (p *PhysicalMergeJoin) getPlanCostVer2(taskType property.TaskType, option * p.planCostVer2 = sumCostVer2(leftChildCost, rightChildCost, filterCost, groupCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -509,10 +516,10 @@ func (p *PhysicalHashJoin) getPlanCostVer2(taskType property.TaskType, option *P memFactor := getTaskMemFactorVer2(p, taskType) buildFilterCost := filterCostVer2(option, buildRows, buildFilters, cpuFactor) - buildHashCost := hashBuildCostVer2(option, buildRows, buildRowSize, cols2Exprs(buildKeys), cpuFactor, memFactor) + buildHashCost := hashBuildCostVer2(option, buildRows, buildRowSize, float64(len(buildKeys)), cpuFactor, memFactor) probeFilterCost := filterCostVer2(option, probeRows, probeFilters, cpuFactor) - probeHashCost := hashProbeCostVer2(option, probeRows, cols2Exprs(probeKeys), cpuFactor) + probeHashCost := hashProbeCostVer2(option, probeRows, float64(len(probeKeys)), cpuFactor) buildChildCost, err := build.getPlanCostVer2(taskType, option) if err != nil { @@ -527,63 +534,86 @@ func (p *PhysicalHashJoin) getPlanCostVer2(taskType property.TaskType, option *P p.planCostVer2 = sumCostVer2(buildChildCost, probeChildCost, divCostVer2(sumCostVer2(buildHashCost, buildFilterCost, probeHashCost, probeFilterCost), mppConcurrency)) } else { // TiDB HashJoin - p.planCostVer2 = sumCostVer2(buildChildCost, probeChildCost, buildHashCost, buildFilterCost, + startCost := newCostVer2(option, cpuFactor, + 10*3*cpuFactor.Value, // 10rows * 3func * cpuFactor + func() string { return fmt.Sprintf("cpu(10*3*%v)", cpuFactor) }) + p.planCostVer2 = sumCostVer2(startCost, buildChildCost, probeChildCost, buildHashCost, buildFilterCost, divCostVer2(sumCostVer2(probeFilterCost, probeHashCost), tidbConcurrency)) } p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } -// getPlanCostVer2 returns the plan-cost of this sub-plan, which is: -// plan-cost = build-child-cost + build-filter-cost + -// (probe-cost + probe-filter-cost) / concurrency -// probe-cost = probe-child-cost * build-rows / batchRatio -func (p *PhysicalIndexJoin) getPlanCostVer2(taskType property.TaskType, option *PlanCostOption) (costVer2, error) { +func (p *PhysicalIndexJoin) getIndexJoinCostVer2(taskType property.TaskType, option *PlanCostOption, indexJoinType int) (costVer2, error) { if p.planCostInit && !hasCostFlag(option.CostFlag, CostFlagRecalculate) { return p.planCostVer2, nil } build, probe := p.children[1-p.InnerChildIdx], p.children[p.InnerChildIdx] buildRows := getCardinality(build, option.CostFlag) + buildRowSize := getAvgRowSize(build.Stats(), build.Schema().Columns) probeRowsOne := getCardinality(probe, option.CostFlag) probeRowsTot := probeRowsOne * buildRows + probeRowSize := getAvgRowSize(probe.Stats(), probe.Schema().Columns) buildFilters, probeFilters := p.LeftConditions, p.RightConditions probeConcurrency := float64(p.ctx.GetSessionVars().IndexLookupJoinConcurrency()) cpuFactor := getTaskCPUFactorVer2(p, taskType) - requestFactor := getTaskRequestFactorVer2(p, taskType) + memFactor := getTaskMemFactorVer2(p, taskType) buildFilterCost := filterCostVer2(option, buildRows, buildFilters, cpuFactor) buildChildCost, err := build.getPlanCostVer2(taskType, option) if err != nil { return zeroCostVer2, err } + buildTaskCost := newCostVer2(option, cpuFactor, + buildRows*10*cpuFactor.Value, + func() string { return fmt.Sprintf("cpu(%v*10*%v)", buildRows, cpuFactor) }) + startCost := newCostVer2(option, cpuFactor, + 10*3*cpuFactor.Value, + func() string { return fmt.Sprintf("cpu(10*3*%v)", cpuFactor) }) probeFilterCost := filterCostVer2(option, probeRowsTot, probeFilters, cpuFactor) probeChildCost, err := probe.getPlanCostVer2(taskType, option) if err != nil { return zeroCostVer2, err } + + var hashTableCost costVer2 + switch indexJoinType { + case 1: // IndexHashJoin + hashTableCost = hashBuildCostVer2(option, buildRows, buildRowSize, float64(len(p.RightJoinKeys)), cpuFactor, memFactor) + case 2: // IndexMergeJoin + hashTableCost = newZeroCostVer2(traceCost(option)) + default: // IndexJoin + hashTableCost = hashBuildCostVer2(option, probeRowsTot, probeRowSize, float64(len(p.LeftJoinKeys)), cpuFactor, memFactor) + } + // IndexJoin executes a batch of rows at a time, so the actual cost of this part should be // `innerCostPerBatch * numberOfBatches` instead of `innerCostPerRow * numberOfOuterRow`. // Use an empirical value batchRatio to handle this now. // TODO: remove this empirical value. - batchRatio := 1024.0 + batchRatio := 6.0 probeCost := divCostVer2(mulCostVer2(probeChildCost, buildRows), batchRatio) - doubleReadCost := doubleReadCostVer2(option, buildRows/batchRatio, requestFactor) - p.planCostVer2 = sumCostVer2(buildChildCost, buildFilterCost, divCostVer2(sumCostVer2(probeCost, probeFilterCost, doubleReadCost), probeConcurrency)) + p.planCostVer2 = sumCostVer2(startCost, buildChildCost, buildFilterCost, buildTaskCost, divCostVer2(sumCostVer2(probeCost, probeFilterCost, hashTableCost), probeConcurrency)) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil +} + +// getPlanCostVer2 returns the plan-cost of this sub-plan, which is: +// plan-cost = build-child-cost + build-filter-cost + +// (probe-cost + probe-filter-cost) / concurrency +// probe-cost = probe-child-cost * build-rows / batchRatio +func (p *PhysicalIndexJoin) getPlanCostVer2(taskType property.TaskType, option *PlanCostOption) (costVer2, error) { + return p.getIndexJoinCostVer2(taskType, option, 0) } func (p *PhysicalIndexHashJoin) getPlanCostVer2(taskType property.TaskType, option *PlanCostOption) (costVer2, error) { - // TODO: distinguish IndexHashJoin with IndexJoin - return p.PhysicalIndexJoin.getPlanCostVer2(taskType, option) + return p.getIndexJoinCostVer2(taskType, option, 1) } func (p *PhysicalIndexMergeJoin) getPlanCostVer2(taskType property.TaskType, option *PlanCostOption) (costVer2, error) { - // TODO: distinguish IndexMergeJoin with IndexJoin - return p.PhysicalIndexJoin.getPlanCostVer2(taskType, option) + return p.getIndexJoinCostVer2(taskType, option, 2) } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -614,7 +644,7 @@ func (p *PhysicalApply) getPlanCostVer2(taskType property.TaskType, option *Plan p.planCostVer2 = sumCostVer2(buildChildCost, buildFilterCost, probeCost, probeFilterCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 calculates the cost of the plan if it has not been calculated yet and returns the cost. @@ -635,7 +665,7 @@ func (p *PhysicalUnionAll) getPlanCostVer2(taskType property.TaskType, option *P } p.planCostVer2 = divCostVer2(sumCostVer2(childCosts...), concurrency) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -665,7 +695,7 @@ func (p *PhysicalExchangeReceiver) getPlanCostVer2(taskType property.TaskType, o p.planCostVer2 = sumCostVer2(childCost, netCost) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -684,7 +714,7 @@ func (p *PointGetPlan) getPlanCostVer2(taskType property.TaskType, option *PlanC p.planCostVer2 = netCostVer2(option, 1, rowSize, netFactor) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } // getPlanCostVer2 returns the plan-cost of this sub-plan, which is: @@ -704,41 +734,44 @@ func (p *BatchPointGetPlan) getPlanCostVer2(taskType property.TaskType, option * p.planCostVer2 = netCostVer2(option, rows, rowSize, netFactor) p.planCostInit = true - return p.planCostVer2.label(p), nil + return p.planCostVer2, nil } func scanCostVer2(option *PlanCostOption, rows, rowSize float64, scanFactor costVer2Factor) costVer2 { + if rowSize < 1 { + rowSize = 1 + } return newCostVer2(option, scanFactor, // rows * log(row-size) * scanFactor, log2 from experiments - rows*math.Log2(math.Max(1, rowSize))*scanFactor.Value, - "scan(%v*logrowsize(%v)*%v)", rows, rowSize, scanFactor) + rows*math.Log2(rowSize)*scanFactor.Value, + func() string { return fmt.Sprintf("scan(%v*logrowsize(%v)*%v)", rows, rowSize, scanFactor) }) } func netCostVer2(option *PlanCostOption, rows, rowSize float64, netFactor costVer2Factor) costVer2 { return newCostVer2(option, netFactor, rows*rowSize*netFactor.Value, - "net(%v*rowsize(%v)*%v)", rows, rowSize, netFactor) + func() string { return fmt.Sprintf("net(%v*rowsize(%v)*%v)", rows, rowSize, netFactor) }) } func filterCostVer2(option *PlanCostOption, rows float64, filters []expression.Expression, cpuFactor costVer2Factor) costVer2 { numFuncs := numFunctions(filters) return newCostVer2(option, cpuFactor, rows*numFuncs*cpuFactor.Value, - "cpu(%v*filters(%v)*%v)", rows, numFuncs, cpuFactor) + func() string { return fmt.Sprintf("cpu(%v*filters(%v)*%v)", rows, numFuncs, cpuFactor) }) } func aggCostVer2(option *PlanCostOption, rows float64, aggFuncs []*aggregation.AggFuncDesc, cpuFactor costVer2Factor) costVer2 { return newCostVer2(option, cpuFactor, // TODO: consider types of agg-funcs rows*float64(len(aggFuncs))*cpuFactor.Value, - "agg(%v*aggs(%v)*%v)", rows, len(aggFuncs), cpuFactor) + func() string { return fmt.Sprintf("agg(%v*aggs(%v)*%v)", rows, len(aggFuncs), cpuFactor) }) } func groupCostVer2(option *PlanCostOption, rows float64, groupItems []expression.Expression, cpuFactor costVer2Factor) costVer2 { numFuncs := numFunctions(groupItems) return newCostVer2(option, cpuFactor, rows*numFuncs*cpuFactor.Value, - "group(%v*cols(%v)*%v)", rows, numFuncs, cpuFactor) + func() string { return fmt.Sprintf("group(%v*cols(%v)*%v)", rows, numFuncs, cpuFactor) }) } func numFunctions(exprs []expression.Expression) float64 { @@ -762,35 +795,35 @@ func orderCostVer2(option *PlanCostOption, rows, N float64, byItems []*util.ByIt } exprCost := newCostVer2(option, cpuFactor, rows*float64(numFuncs)*cpuFactor.Value, - "exprCPU(%v*%v*%v)", rows, numFuncs, cpuFactor) + func() string { return fmt.Sprintf("exprCPU(%v*%v*%v)", rows, numFuncs, cpuFactor) }) orderCost := newCostVer2(option, cpuFactor, rows*math.Log2(N)*cpuFactor.Value, - "orderCPU(%v*log(%v)*%v)", rows, N, cpuFactor) + func() string { return fmt.Sprintf("orderCPU(%v*log(%v)*%v)", rows, N, cpuFactor) }) return sumCostVer2(exprCost, orderCost) } -func hashBuildCostVer2(option *PlanCostOption, buildRows, buildRowSize float64, keys []expression.Expression, cpuFactor, memFactor costVer2Factor) costVer2 { +func hashBuildCostVer2(option *PlanCostOption, buildRows, buildRowSize, nKeys float64, cpuFactor, memFactor costVer2Factor) costVer2 { // TODO: 1) consider types of keys, 2) dedicated factor for build-probe hash table hashKeyCost := newCostVer2(option, cpuFactor, - buildRows*float64(len(keys))*cpuFactor.Value, - "hashkey(%v*%v*%v)", buildRows, len(keys), cpuFactor) + buildRows*nKeys*cpuFactor.Value, + func() string { return fmt.Sprintf("hashkey(%v*%v*%v)", buildRows, nKeys, cpuFactor) }) hashMemCost := newCostVer2(option, memFactor, buildRows*buildRowSize*memFactor.Value, - "hashmem(%v*%v*%v)", buildRows, buildRowSize, memFactor) + func() string { return fmt.Sprintf("hashmem(%v*%v*%v)", buildRows, buildRowSize, memFactor) }) hashBuildCost := newCostVer2(option, cpuFactor, buildRows*cpuFactor.Value, - "hashbuild(%v*%v)", buildRows, cpuFactor) + func() string { return fmt.Sprintf("hashbuild(%v*%v)", buildRows, cpuFactor) }) return sumCostVer2(hashKeyCost, hashMemCost, hashBuildCost) } -func hashProbeCostVer2(option *PlanCostOption, probeRows float64, keys []expression.Expression, cpuFactor costVer2Factor) costVer2 { +func hashProbeCostVer2(option *PlanCostOption, probeRows, nKeys float64, cpuFactor costVer2Factor) costVer2 { // TODO: 1) consider types of keys, 2) dedicated factor for build-probe hash table hashKeyCost := newCostVer2(option, cpuFactor, - probeRows*float64(len(keys))*cpuFactor.Value, - "hashkey(%v*%v*%v)", probeRows, len(keys), cpuFactor) + probeRows*nKeys*cpuFactor.Value, + func() string { return fmt.Sprintf("hashkey(%v*%v*%v)", probeRows, nKeys, cpuFactor) }) hashProbeCost := newCostVer2(option, cpuFactor, probeRows*cpuFactor.Value, - "hashprobe(%v*%v)", probeRows, cpuFactor) + func() string { return fmt.Sprintf("hashprobe(%v*%v)", probeRows, cpuFactor) }) return sumCostVer2(hashKeyCost, hashProbeCost) } @@ -798,7 +831,7 @@ func hashProbeCostVer2(option *PlanCostOption, probeRows float64, keys []express func doubleReadCostVer2(option *PlanCostOption, numTasks float64, requestFactor costVer2Factor) costVer2 { return newCostVer2(option, requestFactor, numTasks*requestFactor.Value, - "doubleRead(tasks(%v)*%v)", numTasks, requestFactor) + func() string { return fmt.Sprintf("doubleRead(tasks(%v)*%v)", numTasks, requestFactor) }) } type costVer2Factor struct { @@ -958,19 +991,14 @@ func cols2Exprs(cols []*expression.Column) []expression.Expression { return exprs } -type costVer2 struct { - cost float64 - trace bool // Whether to trace the cost calculation. +type costTrace struct { factorCosts map[string]float64 // map[factorName]cost, used to calibrate the cost model formula string // It used to trace the cost calculation. } -func (c costVer2) label(p PhysicalPlan) costVer2 { - if !c.trace { - return c - } - c.formula = p.ExplainID().String() - return c +type costVer2 struct { + cost float64 + trace *costTrace } func traceCost(option *PlanCostOption) bool { @@ -982,65 +1010,63 @@ func traceCost(option *PlanCostOption) bool { func newZeroCostVer2(trace bool) (ret costVer2) { if trace { - ret.trace = true - ret.factorCosts = make(map[string]float64) - ret.formula = "0" + ret.trace = &costTrace{make(map[string]float64), ""} } return } -func newCostVer2(option *PlanCostOption, factor costVer2Factor, cost float64, - formulaFormat string, formulaArgs ...any) costVer2 { - ret := newZeroCostVer2(traceCost(option)) +func newCostVer2(option *PlanCostOption, factor costVer2Factor, cost float64, lazyFormula func() string) (ret costVer2) { ret.cost = cost - if ret.trace { - ret.factorCosts[factor.Name] = cost - ret.formula = fmt.Sprintf(formulaFormat, formulaArgs...) + if traceCost(option) { + ret.trace = &costTrace{make(map[string]float64), ""} + ret.trace.factorCosts[factor.Name] = cost + ret.trace.formula = lazyFormula() } return ret } -func sumCostVer2(costs ...costVer2) costVer2 { +func sumCostVer2(costs ...costVer2) (ret costVer2) { if len(costs) == 0 { - return newZeroCostVer2(false) + return } - ret := newZeroCostVer2(costs[0].trace) - var subFormulas []string - for _, c := range costs { + for i, c := range costs { ret.cost += c.cost - if ret.trace { - for factor, factorCost := range c.factorCosts { - ret.factorCosts[factor] += factorCost + if c.trace != nil { + if i == 0 { // init + ret.trace = &costTrace{make(map[string]float64), ""} } - subFormulas = append(subFormulas, fmt.Sprintf("(%v)", c.formula)) + for factor, factorCost := range c.trace.factorCosts { + ret.trace.factorCosts[factor] += factorCost + } + if ret.trace.formula != "" { + ret.trace.formula += " + " + } + ret.trace.formula += "(" + c.trace.formula + ")" } } - if ret.trace { - ret.formula = strings.Join(subFormulas, " + ") - } return ret } -func divCostVer2(cost costVer2, denominator float64) costVer2 { - ret := newZeroCostVer2(cost.trace) +func divCostVer2(cost costVer2, denominator float64) (ret costVer2) { ret.cost = cost.cost / denominator - if ret.trace { - for f, c := range cost.factorCosts { - ret.factorCosts[f] = c / denominator + if cost.trace != nil { + ret.trace = &costTrace{make(map[string]float64), ""} + for f, c := range cost.trace.factorCosts { + ret.trace.factorCosts[f] = c / denominator } - ret.formula = fmt.Sprintf("(%v)/%v", cost.formula, denominator) + ret.trace.formula = "(" + cost.trace.formula + ")/" + strconv.FormatFloat(denominator, 'f', 2, 64) } return ret } -func mulCostVer2(cost costVer2, scale float64) costVer2 { - ret := newZeroCostVer2(cost.trace) +func mulCostVer2(cost costVer2, scale float64) (ret costVer2) { ret.cost = cost.cost * scale - if ret.trace { - for f, c := range cost.factorCosts { - ret.factorCosts[f] = c * scale + if cost.trace != nil { + ret.trace = &costTrace{make(map[string]float64), ""} + for f, c := range cost.trace.factorCosts { + ret.trace.factorCosts[f] = c * scale } - ret.formula = fmt.Sprintf("(%v)*%v", cost.formula, scale) + ret.trace.formula = "(" + cost.trace.formula + ")*" + strconv.FormatFloat(scale, 'f', 2, 64) } return ret } diff --git a/planner/core/plan_cost_ver2_test.go b/planner/core/plan_cost_ver2_test.go index 27b5b913980e4..38ee51738d81a 100644 --- a/planner/core/plan_cost_ver2_test.go +++ b/planner/core/plan_cost_ver2_test.go @@ -15,6 +15,7 @@ package core_test import ( + "context" "encoding/json" "fmt" "math" @@ -22,6 +23,11 @@ import ( "strings" "testing" + "github.com/pingcap/tidb/parser" + "github.com/pingcap/tidb/planner" + "github.com/pingcap/tidb/planner/core" + "github.com/pingcap/tidb/planner/property" + "github.com/pingcap/tidb/sessiontxn" "github.com/pingcap/tidb/testkit" "github.com/stretchr/testify/require" ) @@ -144,8 +150,8 @@ func TestCostModelShowFormula(t *testing.T) { actual = append(actual, []interface{}{row[0], row[3]}) // id,costFormula } require.Equal(t, actual, [][]interface{}{ - {"TableReader_7", "((Selection_6) + (net(2*rowsize(16)*tidb_kv_net_factor(3.96))))/15"}, - {"└─Selection_6", "(cpu(3*filters(1)*tikv_cpu_factor(49.9))) + (TableFullScan_5)"}, + {"TableReader_7", "(((cpu(3*filters(1)*tikv_cpu_factor(49.9))) + (scan(3*logrowsize(32)*tikv_scan_factor(40.7)))) + (net(2*rowsize(16)*tidb_kv_net_factor(3.96))))/15.00"}, + {"└─Selection_6", "(cpu(3*filters(1)*tikv_cpu_factor(49.9))) + (scan(3*logrowsize(32)*tikv_scan_factor(40.7)))"}, {" └─TableFullScan_5", "scan(3*logrowsize(32)*tikv_scan_factor(40.7))"}, }) } @@ -242,3 +248,35 @@ func TestCostModelTraceVer2(t *testing.T) { require.True(t, ok) } } + +func BenchmarkGetPlanCost(b *testing.B) { + store := testkit.CreateMockStore(b) + tk := testkit.NewTestKit(b, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("create table t (a int, b int);") + + p := parser.New() + sql := "select sum(t1.b), t1.a from t t1, t t2 where t1.a>0 and t2.a>10 and t1.b=t2.b group by t1.a order by t1.a limit 5" + stmt, err := p.ParseOneStmt(sql, "", "") + if err != nil { + b.Fatal(err) + } + sctx := tk.Session() + sctx.GetSessionVars().CostModelVersion = 2 + is := sessiontxn.GetTxnManager(sctx).GetTxnInfoSchema() + plan, _, err := planner.Optimize(context.TODO(), sctx, stmt, is) + if err != nil { + b.Fatal(err) + } + phyPlan := plan.(core.PhysicalPlan) + _, err = core.GetPlanCost(phyPlan, property.RootTaskType, core.NewDefaultPlanCostOption().WithCostFlag(core.CostFlagRecalculate)) + if err != nil { + b.Fatal(err) + } + + b.ResetTimer() + for i := 0; i < b.N; i++ { + _, _ = core.GetPlanCost(phyPlan, property.RootTaskType, core.NewDefaultPlanCostOption().WithCostFlag(core.CostFlagRecalculate)) + } +} diff --git a/planner/core/plan_stats.go b/planner/core/plan_stats.go index 9bea8edb8b0ba..eaf3cf3120a0f 100644 --- a/planner/core/plan_stats.go +++ b/planner/core/plan_stats.go @@ -18,12 +18,10 @@ import ( "context" "time" - "github.com/pingcap/errors" "github.com/pingcap/tidb/domain" "github.com/pingcap/tidb/infoschema" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/sessionctx" - "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/statistics" "github.com/pingcap/tidb/util/logutil" @@ -66,7 +64,10 @@ func (syncWaitStatsLoadPoint) optimize(_ context.Context, plan LogicalPlan, _ *l if plan.SCtx().GetSessionVars().InRestrictedSQL { return plan, nil } - _, err := SyncWaitStatsLoad(plan) + if plan.SCtx().GetSessionVars().StmtCtx.IsSyncStatsFailed { + return plan, nil + } + err := SyncWaitStatsLoad(plan) return plan, err } @@ -91,37 +92,36 @@ func RequestLoadStats(ctx sessionctx.Context, neededHistItems []model.TableItemI var timeout = time.Duration(waitTime) err := domain.GetDomain(ctx).StatsHandle().SendLoadRequests(stmtCtx, neededHistItems, timeout) if err != nil { - logutil.BgLogger().Warn("SendLoadRequests failed", zap.Error(err)) stmtCtx.IsSyncStatsFailed = true - return handleTimeout(stmtCtx) + if variable.StatsLoadPseudoTimeout.Load() { + logutil.BgLogger().Warn("RequestLoadStats failed", zap.Error(err)) + stmtCtx.AppendWarning(err) + return nil + } + logutil.BgLogger().Error("RequestLoadStats failed", zap.Error(err)) + return err } return nil } // SyncWaitStatsLoad sync-wait for stats load until timeout -func SyncWaitStatsLoad(plan LogicalPlan) (bool, error) { +func SyncWaitStatsLoad(plan LogicalPlan) error { stmtCtx := plan.SCtx().GetSessionVars().StmtCtx - if stmtCtx.StatsLoad.Fallback { - return false, nil - } - success := domain.GetDomain(plan.SCtx()).StatsHandle().SyncWaitStatsLoad(stmtCtx) - if success { - return true, nil - } - logutil.BgLogger().Warn("SyncWaitStatsLoad failed") - stmtCtx.IsSyncStatsFailed = true - err := handleTimeout(stmtCtx) - return false, err -} - -func handleTimeout(stmtCtx *stmtctx.StatementContext) error { - err := errors.New("Timeout when sync-load full stats for needed columns") - if variable.StatsLoadPseudoTimeout.Load() { - stmtCtx.AppendWarning(err) - stmtCtx.StatsLoad.Fallback = true + if len(stmtCtx.StatsLoad.NeededItems) <= 0 { return nil } - return err + err := domain.GetDomain(plan.SCtx()).StatsHandle().SyncWaitStatsLoad(stmtCtx) + if err != nil { + stmtCtx.IsSyncStatsFailed = true + if variable.StatsLoadPseudoTimeout.Load() { + logutil.BgLogger().Warn("SyncWaitStatsLoad failed", zap.Error(err)) + stmtCtx.AppendWarning(err) + return nil + } + logutil.BgLogger().Error("SyncWaitStatsLoad failed", zap.Error(err)) + return err + } + return nil } // collectSyncIndices will collect the indices which includes following conditions: diff --git a/planner/core/plan_test.go b/planner/core/plan_test.go index a31844f5fe722..f50a04a796a7e 100644 --- a/planner/core/plan_test.go +++ b/planner/core/plan_test.go @@ -16,6 +16,7 @@ package core_test import ( "bytes" + "encoding/json" "fmt" "strings" "testing" @@ -109,6 +110,14 @@ func TestNormalizedPlan(t *testing.T) { tk.MustExec("create table t2 (a int key,b int,c int, index (b));") tk.MustExec("create table t3 (a int key,b int) partition by hash(a) partitions 2;") tk.MustExec("create table t4 (a int, b int, index(a)) partition by range(a) (partition p0 values less than (10),partition p1 values less than MAXVALUE);") + tk.MustExec("set @@global.tidb_enable_foreign_key=1") + tk.MustExec("set @@foreign_key_checks=1") + tk.MustExec("create table t5 (id int key, id2 int, id3 int, unique index idx2(id2), index idx3(id3));") + tk.MustExec("create table t6 (id int, id2 int, id3 int, index idx_id(id), index idx_id2(id2), " + + "foreign key fk_1 (id) references t5(id) ON UPDATE CASCADE ON DELETE CASCADE, " + + "foreign key fk_2 (id2) references t5(id2) ON UPDATE CASCADE, " + + "foreign key fk_3 (id3) references t5(id3) ON DELETE CASCADE);") + tk.MustExec("insert into t5 values (1,1,1), (2,2,2)") var input []string var output []struct { SQL string @@ -1100,3 +1109,34 @@ func TestOuterJoinOnNull(t *testing.T) { tk.MustQuery("SELECT ((NOT ('i'))AND(t2.c0)) IS NULL FROM t2 RIGHT JOIN t3 ON t3.c0;").Check(testkit.Rows("1")) tk.MustQuery("SELECT * FROM t2 RIGHT JOIN t3 ON t2.c0 WHERE ((NOT ('i'))AND(t2.c0)) IS NULL;").Check(testkit.Rows(" 1")) } + +func TestJSONPlanInExplain(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t1, t2") + tk.MustExec("create table t1(id int, key(id))") + tk.MustExec("create table t2(id int, key(id))") + + var input []string + var output []struct { + SQL string + JSONPlan []*core.ExplainInfoForEncode + } + planSuiteData := core.GetJSONPlanSuiteData() + planSuiteData.LoadTestCases(t, &input, &output) + + for i, test := range input { + resJSON := tk.MustQuery(test).Rows() + var res []*core.ExplainInfoForEncode + require.NoError(t, json.Unmarshal([]byte(resJSON[0][0].(string)), &res)) + for j, expect := range output[i].JSONPlan { + require.Equal(t, expect.ID, res[j].ID) + require.Equal(t, expect.EstRows, res[j].EstRows) + require.Equal(t, expect.ActRows, res[j].ActRows) + require.Equal(t, expect.TaskType, res[j].TaskType) + require.Equal(t, expect.AccessObject, res[j].AccessObject) + require.Equal(t, expect.OperatorInfo, res[j].OperatorInfo) + } + } +} diff --git a/planner/core/planbuilder.go b/planner/core/planbuilder.go index 4036823813bfb..bbde3995e154a 100644 --- a/planner/core/planbuilder.go +++ b/planner/core/planbuilder.go @@ -65,6 +65,7 @@ import ( "github.com/pingcap/tidb/util/sem" "github.com/pingcap/tidb/util/set" "github.com/pingcap/tidb/util/sqlexec" + "github.com/pingcap/tidb/util/stmtsummary" "github.com/tikv/client-go/v2/tikv" "go.uber.org/zap" ) @@ -979,14 +980,23 @@ func (b *PlanBuilder) buildSet(ctx context.Context, v *ast.SetStmt) (Plan, error } func (b *PlanBuilder) buildDropBindPlan(v *ast.DropBindingStmt) (Plan, error) { - p := &SQLBindPlan{ - SQLBindOp: OpSQLBindDrop, - NormdOrigSQL: parser.Normalize(utilparser.RestoreWithDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB, v.OriginNode.Text())), - IsGlobal: v.GlobalScope, - Db: utilparser.GetDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB), - } - if v.HintedNode != nil { - p.BindSQL = utilparser.RestoreWithDefaultDB(v.HintedNode, b.ctx.GetSessionVars().CurrentDB, v.HintedNode.Text()) + var p *SQLBindPlan + if v.OriginNode != nil { + p = &SQLBindPlan{ + SQLBindOp: OpSQLBindDrop, + NormdOrigSQL: parser.Normalize(utilparser.RestoreWithDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB, v.OriginNode.Text())), + IsGlobal: v.GlobalScope, + Db: utilparser.GetDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB), + } + if v.HintedNode != nil { + p.BindSQL = utilparser.RestoreWithDefaultDB(v.HintedNode, b.ctx.GetSessionVars().CurrentDB, v.HintedNode.Text()) + } + } else { + p = &SQLBindPlan{ + SQLBindOp: OpSQLBindDropByDigest, + IsGlobal: v.GlobalScope, + SQLDigest: v.SQLDigest, + } } b.visitInfo = appendVisitInfo(b.visitInfo, mysql.SuperPriv, "", "", "", nil) return p, nil @@ -1030,7 +1040,49 @@ func checkHintedSQL(sql, charset, collation, db string) error { return nil } +func (b *PlanBuilder) buildCreateBindPlanFromPlanDigest(v *ast.CreateBindingStmt) (Plan, error) { + if v.PlanDigest == "" { + return nil, errors.New("plan digest is empty") + } + bindableStmt := stmtsummary.StmtSummaryByDigestMap.GetBindableStmtByPlanDigest(v.PlanDigest) + if bindableStmt == nil { + return nil, errors.New("can't find any plans for '" + v.PlanDigest + "'") + } + + parser4binding := parser.New() + originNode, err := parser4binding.ParseOneStmt(bindableStmt.Query, bindableStmt.Charset, bindableStmt.Collation) + if err != nil { + return nil, errors.Errorf("binding failed: %v", err) + } + + bindSQL := bindinfo.GenerateBindSQL(context.TODO(), originNode, bindableStmt.PlanHint, true, bindableStmt.Schema) + var hintNode ast.StmtNode + hintNode, err = parser4binding.ParseOneStmt(bindSQL, bindableStmt.Charset, bindableStmt.Collation) + if err != nil { + return nil, errors.Errorf("binding failed: %v", err) + } + normdOrigSQL, sqlDigestWithDB := parser.NormalizeDigest(utilparser.RestoreWithDefaultDB(originNode, bindableStmt.Schema, bindableStmt.Query)) + p := &SQLBindPlan{ + SQLBindOp: OpSQLBindCreate, + NormdOrigSQL: normdOrigSQL, + BindSQL: utilparser.RestoreWithDefaultDB(hintNode, bindableStmt.Schema, hintNode.Text()), + IsGlobal: v.GlobalScope, + BindStmt: hintNode, + Db: utilparser.GetDefaultDB(originNode, bindableStmt.Schema), + Charset: bindableStmt.Charset, + Collation: bindableStmt.Collation, + Source: bindinfo.History, + SQLDigest: sqlDigestWithDB.String(), + PlanDigest: v.PlanDigest, + } + b.visitInfo = appendVisitInfo(b.visitInfo, mysql.SuperPriv, "", "", "", nil) + return p, nil +} + func (b *PlanBuilder) buildCreateBindPlan(v *ast.CreateBindingStmt) (Plan, error) { + if v.OriginNode == nil { + return b.buildCreateBindPlanFromPlanDigest(v) + } charSet, collation := b.ctx.GetSessionVars().GetCharsetInfo() // Because we use HintedNode.Restore instead of HintedNode.Text, so we need do some check here @@ -1042,15 +1094,18 @@ func (b *PlanBuilder) buildCreateBindPlan(v *ast.CreateBindingStmt) (Plan, error return nil, err } + normdOrigSQL, sqlDigestWithDB := parser.NormalizeDigest(utilparser.RestoreWithDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB, v.OriginNode.Text())) p := &SQLBindPlan{ SQLBindOp: OpSQLBindCreate, - NormdOrigSQL: parser.Normalize(utilparser.RestoreWithDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB, v.OriginNode.Text())), + NormdOrigSQL: normdOrigSQL, BindSQL: utilparser.RestoreWithDefaultDB(v.HintedNode, b.ctx.GetSessionVars().CurrentDB, v.HintedNode.Text()), IsGlobal: v.GlobalScope, BindStmt: v.HintedNode, Db: utilparser.GetDefaultDB(v.OriginNode, b.ctx.GetSessionVars().CurrentDB), Charset: charSet, Collation: collation, + Source: bindinfo.Manual, + SQLDigest: sqlDigestWithDB.String(), } b.visitInfo = appendVisitInfo(b.visitInfo, mysql.SuperPriv, "", "", "", nil) return p, nil @@ -4966,8 +5021,8 @@ func buildShowSchema(s *ast.ShowStmt, isView bool, isSequence bool) (schema *exp names = []string{"Privilege", "Context", "Comment"} ftypes = []byte{mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar} case ast.ShowBindings: - names = []string{"Original_sql", "Bind_sql", "Default_db", "Status", "Create_time", "Update_time", "Charset", "Collation", "Source"} - ftypes = []byte{mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeDatetime, mysql.TypeDatetime, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar} + names = []string{"Original_sql", "Bind_sql", "Default_db", "Status", "Create_time", "Update_time", "Charset", "Collation", "Source", "Sql_digest", "Plan_digest"} + ftypes = []byte{mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeDatetime, mysql.TypeDatetime, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar, mysql.TypeVarchar} case ast.ShowBindingCacheStatus: names = []string{"bindings_in_cache", "bindings_in_table", "memory_usage", "memory_quota"} ftypes = []byte{mysql.TypeLonglong, mysql.TypeLonglong, mysql.TypeVarchar, mysql.TypeVarchar} @@ -5015,7 +5070,7 @@ func buildShowSchema(s *ast.ShowStmt, isView bool, isSequence bool) (schema *exp } func (b *PlanBuilder) buildPlanReplayer(pc *ast.PlanReplayerStmt) Plan { - p := &PlanReplayer{ExecStmt: pc.Stmt, Analyze: pc.Analyze, Load: pc.Load, File: pc.File} + p := &PlanReplayer{ExecStmt: pc.Stmt, Analyze: pc.Analyze, Load: pc.Load, File: pc.File, Capture: pc.Capture, SQLDigest: pc.SQLDigest, PlanDigest: pc.PlanDigest} schema := newColumnsWithNames(1) schema.Append(buildColumnWithName("", "File_token", mysql.TypeVarchar, 128)) p.SetSchema(schema.col2Schema()) diff --git a/planner/core/point_get_plan_test.go b/planner/core/point_get_plan_test.go index 7801631325f37..812151afc26ec 100644 --- a/planner/core/point_get_plan_test.go +++ b/planner/core/point_get_plan_test.go @@ -189,7 +189,7 @@ func TestGetExtraColumn(t *testing.T) { tk.MustQuery(`explain format='brief' select t.*, _tidb_rowid from t where a = 1`).Check(testkit.Rows(`Point_Get 1.00 root table:t, index:idx(a) `)) tk.MustExec(`commit`) tk.MustQuery(`explain format='brief' select count(_tidb_rowid) from t where a=1`).Check(testkit.Rows( - `HashAgg 1.00 root funcs:count(test.t._tidb_rowid)->Column#4`, + `StreamAgg 1.00 root funcs:count(test.t._tidb_rowid)->Column#4`, `└─Point_Get 1.00 root table:t, index:idx(a) `)) tk.MustQuery(`explain format='brief' select *, date_format(b, "") from t where a =1 for update`).Check(testkit.Rows( `Projection 1.00 root test.t.a, test.t.b, date_format(cast(test.t.b, datetime BINARY), )->Column#4`, diff --git a/planner/core/preprocess.go b/planner/core/preprocess.go index d059139bd7159..c5a2a9999db90 100644 --- a/planner/core/preprocess.go +++ b/planner/core/preprocess.go @@ -298,16 +298,21 @@ func (p *preprocessor) Enter(in ast.Node) (out ast.Node, skipChildren bool) { p.checkNonUniqTableAlias(node) case *ast.CreateBindingStmt: p.stmtTp = TypeCreate - EraseLastSemicolon(node.OriginNode) - EraseLastSemicolon(node.HintedNode) - p.checkBindGrammar(node.OriginNode, node.HintedNode, p.sctx.GetSessionVars().CurrentDB) + if node.OriginNode != nil { + // if node.PlanDigest is not empty, this binding will be created from history, the node.OriginNode and node.HintedNode should be nil + EraseLastSemicolon(node.OriginNode) + EraseLastSemicolon(node.HintedNode) + p.checkBindGrammar(node.OriginNode, node.HintedNode, p.sctx.GetSessionVars().CurrentDB) + } return in, true case *ast.DropBindingStmt: p.stmtTp = TypeDrop - EraseLastSemicolon(node.OriginNode) - if node.HintedNode != nil { - EraseLastSemicolon(node.HintedNode) - p.checkBindGrammar(node.OriginNode, node.HintedNode, p.sctx.GetSessionVars().CurrentDB) + if node.OriginNode != nil { + EraseLastSemicolon(node.OriginNode) + if node.HintedNode != nil { + EraseLastSemicolon(node.HintedNode) + p.checkBindGrammar(node.OriginNode, node.HintedNode, p.sctx.GetSessionVars().CurrentDB) + } } return in, true case *ast.RecoverTableStmt: @@ -1825,15 +1830,14 @@ func tryLockMDLAndUpdateSchemaIfNecessary(sctx sessionctx.Context, dbName model. } domainSchema := domain.GetDomain(sctx).InfoSchema() domainSchemaVer := domainSchema.SchemaMetaVersion() - if !skipLock { - sctx.GetSessionVars().GetRelatedTableForMDL().Store(tableInfo.ID, domainSchemaVer) - } - var err error tbl, err = domainSchema.TableByName(dbName, tableInfo.Name) if err != nil { return nil, err } + if !skipLock { + sctx.GetSessionVars().GetRelatedTableForMDL().Store(tbl.Meta().ID, domainSchemaVer) + } // Check the table change, if adding new public index or modify a column, we need to handle them. if !sctx.GetSessionVars().IsPessimisticReadConsistency() { var copyTableInfo *model.TableInfo diff --git a/planner/core/rule_column_pruning.go b/planner/core/rule_column_pruning.go index 5eac4a88e88bd..34a5259abbd32 100644 --- a/planner/core/rule_column_pruning.go +++ b/planner/core/rule_column_pruning.go @@ -339,19 +339,7 @@ func (ds *DataSource) PruneColumns(parentUsedCols []*expression.Column, opt *log if ds.schema.Len() == 0 { var handleCol *expression.Column var handleColInfo *model.ColumnInfo - if ds.table.Type().IsClusterTable() && len(originColumns) > 0 { - // use the first line. - handleCol = originSchemaColumns[0] - handleColInfo = originColumns[0] - } else { - if ds.handleCols != nil { - handleCol = ds.handleCols.GetCol(0) - handleColInfo = handleCol.ToInfo() - } else { - handleCol = ds.newExtraHandleSchemaCol() - handleColInfo = model.NewExtraHandleColInfo() - } - } + handleCol, handleColInfo = preferKeyColumnFromTable(ds, originSchemaColumns, originColumns) ds.Columns = append(ds.Columns, handleColInfo) ds.schema.Append(handleCol) } @@ -658,3 +646,23 @@ func appendItemPruneTraceStep(p LogicalPlan, itemType string, prunedObjects []fm } opt.appendStepToCurrent(p.ID(), p.TP(), reason, action) } + +func preferKeyColumnFromTable(dataSource *DataSource, originColumns []*expression.Column, + originSchemaColumns []*model.ColumnInfo) (*expression.Column, *model.ColumnInfo) { + var resultColumnInfo *model.ColumnInfo + var resultColumn *expression.Column + if dataSource.table.Type().IsClusterTable() && len(originColumns) > 0 { + // use the first column. + resultColumnInfo = originSchemaColumns[0] + resultColumn = originColumns[0] + } else { + if dataSource.handleCols != nil { + resultColumn = dataSource.handleCols.GetCol(0) + resultColumnInfo = resultColumn.ToInfo() + } else { + resultColumn = dataSource.newExtraHandleSchemaCol() + resultColumnInfo = model.NewExtraHandleColInfo() + } + } + return resultColumn, resultColumnInfo +} diff --git a/planner/core/rule_partition_processor.go b/planner/core/rule_partition_processor.go index d188854686491..81a43935b056f 100644 --- a/planner/core/rule_partition_processor.go +++ b/planner/core/rule_partition_processor.go @@ -288,7 +288,8 @@ func (s *partitionProcessor) pruneHashPartition(ctx sessionctx.Context, tbl tabl // please see https://github.com/pingcap/tidb/issues/22635 for more details. func (s *partitionProcessor) reconstructTableColNames(ds *DataSource) ([]*types.FieldName, error) { names := make([]*types.FieldName, 0, len(ds.TblCols)) - colsInfo := ds.table.FullHiddenColsAndVisibleCols() + // Use DeletableCols to get all the columns. + colsInfo := ds.table.DeletableCols() colsInfoMap := make(map[int64]*table.Column, len(colsInfo)) for _, c := range colsInfo { colsInfoMap[c.ID] = c diff --git a/planner/core/stats.go b/planner/core/stats.go index 6fe03f87d6a80..f377feac91030 100644 --- a/planner/core/stats.go +++ b/planner/core/stats.go @@ -467,10 +467,19 @@ func (ds *DataSource) DeriveStats(_ []*property.StatsInfo, _ *expression.Schema, func (ds *DataSource) generateAndPruneIndexMergePath(indexMergeConds []expression.Expression, needPrune bool) error { regularPathCount := len(ds.possibleAccessPaths) + // 1. Generate possible IndexMerge paths for `OR`. err := ds.generateIndexMergeOrPaths(indexMergeConds) if err != nil { return err } + // 2. Generate possible IndexMerge paths for `AND`. + indexMergeAndPath := ds.generateIndexMergeAndPaths(regularPathCount) + if indexMergeAndPath != nil { + ds.possibleAccessPaths = append(ds.possibleAccessPaths, indexMergeAndPath) + } + + // 3. If needed, append a warning if no IndexMerge is generated. + // If without hints, it means that `enableIndexMerge` is true if len(ds.indexMergeHints) == 0 { return nil @@ -481,6 +490,9 @@ func (ds *DataSource) generateAndPruneIndexMergePath(indexMergeConds []expressio ds.ctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("IndexMerge is inapplicable")) return nil } + + // 4. If needPrune is true, prune non-IndexMerge paths. + // Do not need to consider the regular paths in find_best_task(). // So we can use index merge's row count as DataSource's row count. if needPrune { @@ -615,7 +627,9 @@ func (ds *DataSource) generateIndexMergeOrPaths(filters []expression.Expression) return nil } -// isInIndexMergeHints checks whether current index or primary key is in IndexMerge hints. +// isInIndexMergeHints returns true if the input index name is not excluded by the IndexMerge hints, which means either +// (1) there's no IndexMerge hint, (2) there's IndexMerge hint but no specified index names, or (3) the input index +// name is specified in the IndexMerge hints. func (ds *DataSource) isInIndexMergeHints(name string) bool { if len(ds.indexMergeHints) == 0 { return true @@ -633,6 +647,34 @@ func (ds *DataSource) isInIndexMergeHints(name string) bool { return false } +// indexMergeHintsHasSpecifiedIdx returns true if there's IndexMerge hint, and it has specified index names. +func (ds *DataSource) indexMergeHintsHasSpecifiedIdx() bool { + for _, hint := range ds.indexMergeHints { + if hint.indexHint == nil || len(hint.indexHint.IndexNames) == 0 { + continue + } + if len(hint.indexHint.IndexNames) > 0 { + return true + } + } + return false +} + +// indexMergeHintsHasSpecifiedIdx return true if the input index name is specified in the IndexMerge hint. +func (ds *DataSource) isSpecifiedInIndexMergeHints(name string) bool { + for _, hint := range ds.indexMergeHints { + if hint.indexHint == nil || len(hint.indexHint.IndexNames) == 0 { + continue + } + for _, hintName := range hint.indexHint.IndexNames { + if strings.EqualFold(strings.ToLower(name), strings.ToLower(hintName.String())) { + return true + } + } + } + return false +} + // accessPathsForConds generates all possible index paths for conditions. func (ds *DataSource) accessPathsForConds(conditions []expression.Expression, usedIndexCount int) []*util.AccessPath { var results = make([]*util.AccessPath, 0, usedIndexCount) @@ -754,6 +796,103 @@ func (ds *DataSource) buildIndexMergeOrPath(filters []expression.Expression, par return indexMergePath } +// generateIndexMergeAndPaths generates IndexMerge paths for `AND` (a.k.a. intersection type IndexMerge) +func (ds *DataSource) generateIndexMergeAndPaths(normalPathCnt int) *util.AccessPath { + // For now, we only consider intersection type IndexMerge when the index names are specified in the hints. + if !ds.indexMergeHintsHasSpecifiedIdx() { + return nil + } + + // 1. Collect partial paths from normal paths. + var partialPaths []*util.AccessPath + for i := 0; i < normalPathCnt; i++ { + originalPath := ds.possibleAccessPaths[i] + // No need to consider table path as a partial path. + if ds.possibleAccessPaths[i].IsTablePath() { + continue + } + if !ds.isSpecifiedInIndexMergeHints(originalPath.Index.Name.L) { + continue + } + // If the path contains a full range, ignore it. + if ranger.HasFullRange(originalPath.Ranges, false) { + continue + } + newPath := originalPath.Clone() + partialPaths = append(partialPaths, newPath) + } + if len(partialPaths) < 2 { + return nil + } + + // 2. Collect filters that can't be covered by the partial paths and deduplicate them. + finalFilters := make([]expression.Expression, 0) + partialFilters := make([]expression.Expression, 0, len(partialPaths)) + hashCodeSet := make(map[string]struct{}) + for _, path := range partialPaths { + // Classify filters into coveredConds and notCoveredConds. + coveredConds := make([]expression.Expression, 0, len(path.AccessConds)+len(path.IndexFilters)) + notCoveredConds := make([]expression.Expression, 0, len(path.IndexFilters)+len(path.TableFilters)) + // AccessConds can be covered by partial path. + coveredConds = append(coveredConds, path.AccessConds...) + for i, cond := range path.IndexFilters { + // IndexFilters can be covered by partial path if it can be pushed down to TiKV. + if !expression.CanExprsPushDown(ds.ctx.GetSessionVars().StmtCtx, []expression.Expression{cond}, ds.ctx.GetClient(), kv.TiKV) { + path.IndexFilters = append(path.IndexFilters[:i], path.IndexFilters[i+1:]...) + notCoveredConds = append(notCoveredConds, cond) + } else { + coveredConds = append(coveredConds, cond) + } + } + // TableFilters can't be covered by partial path. + notCoveredConds = append(notCoveredConds, path.TableFilters...) + + // Record covered filters in hashCodeSet. + // Note that we only record filters that not appear in the notCoveredConds. It's possible that a filter appear + // in both coveredConds and notCoveredConds (e.g. because of prefix index). So we need this extra check to + // avoid wrong deduplication. + notCoveredHashCodeSet := make(map[string]struct{}) + for _, cond := range notCoveredConds { + hashCode := string(cond.HashCode(ds.ctx.GetSessionVars().StmtCtx)) + notCoveredHashCodeSet[hashCode] = struct{}{} + } + for _, cond := range coveredConds { + hashCode := string(cond.HashCode(ds.ctx.GetSessionVars().StmtCtx)) + if _, ok := notCoveredHashCodeSet[hashCode]; !ok { + hashCodeSet[hashCode] = struct{}{} + } + } + + finalFilters = append(finalFilters, notCoveredConds...) + partialFilters = append(partialFilters, coveredConds...) + } + + // Remove covered filters from finalFilters and deduplicate finalFilters. + dedupedFinalFilters := make([]expression.Expression, 0, len(finalFilters)) + for _, cond := range finalFilters { + hashCode := string(cond.HashCode(ds.ctx.GetSessionVars().StmtCtx)) + if _, ok := hashCodeSet[hashCode]; !ok { + dedupedFinalFilters = append(dedupedFinalFilters, cond) + hashCodeSet[hashCode] = struct{}{} + } + } + + // 3. Estimate the row count after partial paths. + sel, _, err := ds.tableStats.HistColl.Selectivity(ds.ctx, partialFilters, nil) + if err != nil { + logutil.BgLogger().Debug("something wrong happened, use the default selectivity", zap.Error(err)) + sel = SelectionFactor + } + + indexMergePath := &util.AccessPath{ + PartialIndexPaths: partialPaths, + IndexMergeIsIntersection: true, + TableFilters: dedupedFinalFilters, + CountAfterAccess: sel * ds.tableStats.RowCount, + } + return indexMergePath +} + // DeriveStats implement LogicalPlan DeriveStats interface. func (p *LogicalSelection) DeriveStats(childStats []*property.StatsInfo, _ *expression.Schema, _ []*expression.Schema, _ [][]*expression.Column) (*property.StatsInfo, error) { if p.stats != nil { diff --git a/planner/core/task.go b/planner/core/task.go index 11d502568d3ae..19ad812e9aaa6 100644 --- a/planner/core/task.go +++ b/planner/core/task.go @@ -24,11 +24,13 @@ import ( "github.com/pingcap/tidb/kv" "github.com/pingcap/tidb/parser/ast" "github.com/pingcap/tidb/parser/charset" + "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/planner/property" "github.com/pingcap/tidb/planner/util" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/statistics" + "github.com/pingcap/tidb/table/tables" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/collate" @@ -80,8 +82,11 @@ type copTask struct { tblColHists *statistics.HistColl // tblCols stores the original columns of DataSource before being pruned, it // is used to compute average row width when computing scan cost. - tblCols []*expression.Column - idxMergePartPlans []PhysicalPlan + tblCols []*expression.Column + + idxMergePartPlans []PhysicalPlan + idxMergeIsIntersection bool + // rootTaskConds stores select conditions containing virtual columns. // These conditions can't push to TiKV, so we have to add a selection for rootTask rootTaskConds []expression.Expression @@ -680,8 +685,9 @@ func (t *copTask) convertToRootTaskImpl(ctx sessionctx.Context) *rootTask { newTask := &rootTask{} if t.idxMergePartPlans != nil { p := PhysicalIndexMergeReader{ - partialPlans: t.idxMergePartPlans, - tablePlan: t.tablePlan, + partialPlans: t.idxMergePartPlans, + tablePlan: t.tablePlan, + IsIntersectionType: t.idxMergeIsIntersection, }.Init(ctx, t.idxMergePartPlans[0].SelectBlockOffset()) p.PartitionInfo = t.partitionInfo setTableScanToTableRowIDScan(p.tablePlan) @@ -955,6 +961,10 @@ func (p *PhysicalTopN) attach2Task(tasks ...task) task { } needPushDown := len(cols) > 0 if copTask, ok := t.(*copTask); ok && needPushDown && p.canPushDown(copTask.getStoreType()) && len(copTask.rootTaskConds) == 0 { + newTask, changed := p.pushTopNDownToDynamicPartition(copTask) + if changed { + return newTask + } // If all columns in topN are from index plan, we push it to index plan, otherwise we finish the index plan and // push it to table plan. var pushedDownTopN *PhysicalTopN @@ -974,6 +984,141 @@ func (p *PhysicalTopN) attach2Task(tasks ...task) task { return attachPlan2Task(p, rootTask) } +// pushTopNDownToDynamicPartition is a temp solution for partition table. It actually does the same thing as DataSource's isMatchProp. +// We need to support a more enhanced read strategy in the execution phase. So that we can achieve Limit(TiDB)->Reader(TiDB)->Limit(TiKV/TiFlash)->Scan(TiKV/TiFlash). +// Before that is done, we use this logic to provide a way to keep the order property when reading from TiKV, so that we can use the orderliness of index to speed up the query. +// Here we can change the execution plan to TopN(TiDB)->Reader(TiDB)->Limit(TiKV)->Scan(TiKV).(TiFlash is not supported). +func (p *PhysicalTopN) pushTopNDownToDynamicPartition(copTsk *copTask) (task, bool) { + if copTsk.getStoreType() != kv.TiKV { + return nil, false + } + copTsk = copTsk.copy().(*copTask) + if len(copTsk.rootTaskConds) > 0 { + return nil, false + } + colsProp, ok := GetPropByOrderByItems(p.ByItems) + if !ok { + return nil, false + } + allSameOrder, isDesc := colsProp.AllSameOrder() + if !allSameOrder { + return nil, false + } + checkIndexMatchProp := func(idxCols []*expression.Column, idxColLens []int, constColsByCond []bool, colsProp *property.PhysicalProperty) bool { + // If the number of the by-items is bigger than the index columns. We cannot push down since it must not keep order. + if len(idxCols) < len(colsProp.SortItems) { + return false + } + idxPos := 0 + for _, byItem := range colsProp.SortItems { + found := false + for ; idxPos < len(idxCols); idxPos++ { + if idxColLens[idxPos] == types.UnspecifiedLength && idxCols[idxPos].Equal(p.SCtx(), byItem.Col) { + found = true + idxPos++ + break + } + if len(constColsByCond) == 0 || idxPos > len(constColsByCond) || !constColsByCond[idxPos] { + found = false + break + } + } + if !found { + return false + } + } + return true + } + var ( + idxScan *PhysicalIndexScan + tblScan *PhysicalTableScan + tblInfo *model.TableInfo + err error + ) + if copTsk.indexPlan != nil { + copTsk.indexPlan, err = copTsk.indexPlan.Clone() + if err != nil { + return nil, false + } + finalIdxScanPlan := copTsk.indexPlan + for len(finalIdxScanPlan.Children()) > 0 && finalIdxScanPlan.Children()[0] != nil { + finalIdxScanPlan = finalIdxScanPlan.Children()[0] + } + idxScan = finalIdxScanPlan.(*PhysicalIndexScan) + tblInfo = idxScan.Table + } + if copTsk.tablePlan != nil { + copTsk.tablePlan, err = copTsk.tablePlan.Clone() + if err != nil { + return nil, false + } + finalTblScanPlan := copTsk.tablePlan + for len(finalTblScanPlan.Children()) > 0 { + finalTblScanPlan = finalTblScanPlan.Children()[0] + } + tblScan = finalTblScanPlan.(*PhysicalTableScan) + tblInfo = tblScan.Table + } + + pi := tblInfo.GetPartitionInfo() + if pi == nil { + return nil, false + } + if pi.Type == model.PartitionTypeList { + return nil, false + } + + if !copTsk.indexPlanFinished { + // If indexPlan side isn't finished, there's no selection on the table side. + + propMatched := checkIndexMatchProp(idxScan.IdxCols, idxScan.IdxColLens, idxScan.constColsByCond, colsProp) + if !propMatched { + return nil, false + } + + idxScan.Desc = isDesc + childProfile := copTsk.plan().statsInfo() + newCount := p.Offset + p.Count + stats := deriveLimitStats(childProfile, float64(newCount)) + pushedLimit := PhysicalLimit{ + Count: newCount, + }.Init(p.SCtx(), stats, p.SelectBlockOffset()) + pushedLimit.SetSchema(copTsk.indexPlan.Schema()) + copTsk = attachPlan2Task(pushedLimit, copTsk).(*copTask) + } else if copTsk.indexPlan == nil { + if tblScan.HandleCols == nil { + return nil, false + } + + if tblScan.HandleCols.IsInt() { + pk := tblScan.HandleCols.GetCol(0) + if len(colsProp.SortItems) != 1 || !colsProp.SortItems[0].Col.Equal(p.SCtx(), pk) { + return nil, false + } + } else { + idxCols, idxColLens := expression.IndexInfo2PrefixCols(tblScan.Columns, tblScan.Schema().Columns, tables.FindPrimaryIndex(tblScan.Table)) + matched := checkIndexMatchProp(idxCols, idxColLens, nil, colsProp) + if !matched { + return nil, false + } + } + tblScan.Desc = isDesc + childProfile := copTsk.plan().statsInfo() + newCount := p.Offset + p.Count + stats := deriveLimitStats(childProfile, float64(newCount)) + pushedLimit := PhysicalLimit{ + Count: newCount, + }.Init(p.SCtx(), stats, p.SelectBlockOffset()) + pushedLimit.SetSchema(copTsk.tablePlan.Schema()) + copTsk = attachPlan2Task(pushedLimit, copTsk).(*copTask) + } else { + return nil, false + } + + rootTask := copTsk.convertToRootTask(p.ctx) + return attachPlan2Task(p, rootTask), true +} + func (p *PhysicalProjection) attach2Task(tasks ...task) task { t := tasks[0].copy() if cop, ok := t.(*copTask); ok { @@ -1598,8 +1743,12 @@ func (p *PhysicalStreamAgg) attach2Task(tasks ...task) task { t = cop.convertToRootTask(p.ctx) attachPlan2Task(p, t) } else { - copTaskType := cop.getStoreType() - partialAgg, finalAgg := p.newPartialAggregate(copTaskType, false) + storeType := cop.getStoreType() + // TiFlash doesn't support Stream Aggregation + if storeType == kv.TiFlash && len(p.GroupByItems) > 0 { + return invalidTask + } + partialAgg, finalAgg := p.newPartialAggregate(storeType, false) if partialAgg != nil { if cop.tablePlan != nil { cop.finishIndexPlan() diff --git a/planner/core/testdata/analyze_suite_out.json b/planner/core/testdata/analyze_suite_out.json index 4d902fec467a5..ea1e33b3ca0b8 100644 --- a/planner/core/testdata/analyze_suite_out.json +++ b/planner/core/testdata/analyze_suite_out.json @@ -383,7 +383,7 @@ "└─Apply 10.00 root CARTESIAN left outer semi join, other cond:eq(test.t.c, Column#21)", " ├─IndexReader(Build) 10.00 root index:IndexFullScan", " │ └─IndexFullScan 10.00 cop[tikv] table:t, index:idx(c, b, a) keep order:false", - " └─HashAgg(Probe) 10.00 root funcs:count(1)->Column#21", + " └─StreamAgg(Probe) 10.00 root funcs:count(1)->Column#21", " └─HashJoin 10.00 root inner join, equal:[eq(test.t.a, test.t.a)]", " ├─IndexReader(Build) 10.00 root index:Selection", " │ └─Selection 10.00 cop[tikv] eq(test.t.a, test.t.a), not(isnull(test.t.a))", @@ -411,7 +411,7 @@ { "SQL": "explain format = 'brief' select max(e) from t where a='T3382' and b='ECO' and c='TOPIC' and d='23660fa1ace9455cb7f3ee831e14a342'", "Plan": [ - "HashAgg 1.00 root funcs:max(test.t.e)->Column#7", + "StreamAgg 1.00 root funcs:max(test.t.e)->Column#7", "└─TopN 0.00 root test.t.e:desc, offset:0, count:1", " └─IndexLookUp 0.00 root ", " ├─IndexRangeScan(Build) 0.01 cop[tikv] table:t, index:idx1(d, a) range:[\"23660fa1ace9455cb7f3ee831e14a342\" \"T3382\",\"23660fa1ace9455cb7f3ee831e14a342\" \"T3382\"], keep order:false", @@ -435,7 +435,7 @@ "Cases": [ "IndexReader(Index(t.e)[[NULL,+inf]]->StreamAgg)->StreamAgg", "IndexReader(Index(t.e)[[-inf,10]]->StreamAgg)->StreamAgg", - "IndexReader(Index(t.e)[[-inf,50]]->HashAgg)->HashAgg", + "IndexReader(Index(t.e)[[-inf,50]]->StreamAgg)->StreamAgg", "IndexReader(Index(t.b_c)[[NULL,+inf]]->Sel([gt(test.t.c, 1)])->StreamAgg)->StreamAgg", "IndexLookUp(Index(t.e)[[1,1]], Table(t))->HashAgg", "TableReader(Table(t)->Sel([gt(test.t.e, 1)])->HashAgg)->HashAgg", diff --git a/planner/core/testdata/binary_plan_suite_out.json b/planner/core/testdata/binary_plan_suite_out.json index 203f11acf364f..a361c5ca0b23f 100644 --- a/planner/core/testdata/binary_plan_suite_out.json +++ b/planner/core/testdata/binary_plan_suite_out.json @@ -123,7 +123,7 @@ "operator_info": "data:TableFullScan_16" } ], - "cost": 975351.9825195674, + "cost": 976848.9825195674, "est_rows": 100000000, "act_rows": 8, "task_type": 1, @@ -131,7 +131,7 @@ "operator_info": "CARTESIAN inner join" } ], - "cost": 998975351.9825196, + "cost": 998976848.9825196, "est_rows": 100000000, "act_rows": 8, "task_type": 1, @@ -139,7 +139,7 @@ "operator_info": "cast(test.t.a, decimal(10,0) BINARY)->Column#8" } ], - "cost": 1996975363.5625196, + "cost": 1996978357.5625196, "est_rows": 1, "act_rows": 1, "task_type": 1, @@ -283,7 +283,7 @@ "operator_info": "data:Selection_33" } ], - "cost": 1798740.0717058014, + "cost": 1800237.0717058014, "est_rows": 12487.5, "task_type": 1, "store_type": 1, diff --git a/planner/core/testdata/enforce_mpp_suite_out.json b/planner/core/testdata/enforce_mpp_suite_out.json index e1e3242fb55b5..91de0d5bd1348 100644 --- a/planner/core/testdata/enforce_mpp_suite_out.json +++ b/planner/core/testdata/enforce_mpp_suite_out.json @@ -31,30 +31,30 @@ { "SQL": "explain format='verbose' select count(*) from t where a=1", "Plan": [ - "HashAgg_14 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_15 1.00 124.64 root index:HashAgg_6", - " └─HashAgg_6 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_13 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_24 1.00 193.81 root funcs:count(Column#6)->Column#4", + "└─IndexReader_25 1.00 143.91 root index:StreamAgg_9", + " └─StreamAgg_9 1.00 2127.00 cop[tikv] funcs:count(1)->Column#6", + " └─IndexRangeScan_23 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tikv[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_12 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_13 1.00 124.64 root index:HashAgg_6", - " └─HashAgg_6 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_11 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_17 1.00 193.81 root funcs:count(Column#6)->Column#4", + "└─IndexReader_18 1.00 143.91 root index:StreamAgg_9", + " └─StreamAgg_9 1.00 2127.00 cop[tikv] funcs:count(1)->Column#6", + " └─IndexRangeScan_16 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tiflash[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_8 1.00 63718.81 root funcs:count(1)->Column#4", - "└─TableReader_17 10.00 63508.91 root data:Selection_16", - " └─Selection_16 10.00 952000.00 cop[tiflash] eq(test.t.a, 1)", - " └─TableFullScan_15 10000.00 928000.00 cop[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg_10 1.00 64007.91 root funcs:count(1)->Column#4", + "└─TableReader_24 10.00 63508.91 root data:Selection_23", + " └─Selection_23 10.00 952000.00 cop[tiflash] eq(test.t.a, 1)", + " └─TableFullScan_22 10000.00 928000.00 cop[tiflash] table:t keep order:false, stats:pseudo" ], "Warn": null }, @@ -71,32 +71,30 @@ { "SQL": "explain format='verbose' select count(*) from t where a=1", "Plan": [ - "HashAgg_16 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_17 1.00 124.64 root index:HashAgg_7", - " └─HashAgg_7 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_15 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_31 1.00 193.81 root funcs:count(Column#7)->Column#4", + "└─IndexReader_32 1.00 143.91 root index:StreamAgg_11", + " └─StreamAgg_11 1.00 2127.00 cop[tikv] funcs:count(1)->Column#7", + " └─IndexRangeScan_30 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tikv[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_14 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_15 1.00 124.64 root index:HashAgg_7", - " └─HashAgg_7 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_13 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_19 1.00 193.81 root funcs:count(Column#6)->Column#4", + "└─IndexReader_20 1.00 143.91 root index:StreamAgg_11", + " └─StreamAgg_11 1.00 2127.00 cop[tikv] funcs:count(1)->Column#6", + " └─IndexRangeScan_18 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tiflash[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_22 1.00 63498.78 root funcs:count(Column#6)->Column#4", - "└─TableReader_24 1.00 63468.52 root data:ExchangeSender_23", - " └─ExchangeSender_23 1.00 952010.16 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg_10 1.00 952010.16 mpp[tiflash] funcs:count(1)->Column#6", - " └─Selection_21 10.00 952000.00 mpp[tiflash] eq(test.t.a, 1)", - " └─TableFullScan_20 10000.00 928000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg_12 1.00 64007.91 root funcs:count(1)->Column#4", + "└─TableReader_31 10.00 63508.91 root data:Selection_30", + " └─Selection_30 10.00 952000.00 cop[tiflash] eq(test.t.a, 1)", + " └─TableFullScan_29 10000.00 928000.00 cop[tiflash] table:t keep order:false, stats:pseudo" ], "Warn": null }, @@ -108,32 +106,30 @@ { "SQL": "explain format='verbose' select count(*) from t where a=1", "Plan": [ - "HashAgg_16 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_17 1.00 124.64 root index:HashAgg_7", - " └─HashAgg_7 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_15 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_31 1.00 193.81 root funcs:count(Column#7)->Column#4", + "└─IndexReader_32 1.00 143.91 root index:StreamAgg_11", + " └─StreamAgg_11 1.00 2127.00 cop[tikv] funcs:count(1)->Column#7", + " └─IndexRangeScan_30 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tikv[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_14 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_15 1.00 124.64 root index:HashAgg_7", - " └─HashAgg_7 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_13 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_19 1.00 193.81 root funcs:count(Column#6)->Column#4", + "└─IndexReader_20 1.00 143.91 root index:StreamAgg_11", + " └─StreamAgg_11 1.00 2127.00 cop[tikv] funcs:count(1)->Column#6", + " └─IndexRangeScan_18 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tiflash[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_22 1.00 63498.78 root funcs:count(Column#6)->Column#4", - "└─TableReader_24 1.00 63468.52 root data:ExchangeSender_23", - " └─ExchangeSender_23 1.00 952010.16 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg_10 1.00 952010.16 mpp[tiflash] funcs:count(1)->Column#6", - " └─Selection_21 10.00 952000.00 mpp[tiflash] eq(test.t.a, 1)", - " └─TableFullScan_20 10000.00 928000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg_12 1.00 64007.91 root funcs:count(1)->Column#4", + "└─TableReader_31 10.00 63508.91 root data:Selection_30", + " └─Selection_30 10.00 952000.00 cop[tiflash] eq(test.t.a, 1)", + " └─TableFullScan_29 10000.00 928000.00 cop[tiflash] table:t keep order:false, stats:pseudo" ], "Warn": null }, @@ -145,22 +141,20 @@ { "SQL": "explain format='verbose' select count(*) from t where a=1", "Plan": [ - "HashAgg_25 1.00 30.26 root funcs:count(Column#6)->Column#4", - "└─TableReader_27 1.00 0.00 root data:ExchangeSender_26", - " └─ExchangeSender_26 1.00 952010.16 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg_10 1.00 952010.16 mpp[tiflash] funcs:count(1)->Column#6", - " └─Selection_24 10.00 952000.00 mpp[tiflash] eq(test.t.a, 1)", - " └─TableFullScan_23 10000.00 928000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg_31 1.00 193.81 root funcs:count(Column#7)->Column#4", + "└─IndexReader_32 1.00 143.91 root index:StreamAgg_11", + " └─StreamAgg_11 1.00 2127.00 cop[tikv] funcs:count(1)->Column#7", + " └─IndexRangeScan_30 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": null }, { "SQL": "explain format='verbose' select /*+ read_from_storage(tikv[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_14 1.00 154.90 root funcs:count(Column#5)->Column#4", - "└─IndexReader_15 1.00 124.64 root index:HashAgg_7", - " └─HashAgg_7 1.00 1837.90 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_13 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_19 1.00 193.81 root funcs:count(Column#6)->Column#4", + "└─IndexReader_20 1.00 143.91 root index:StreamAgg_11", + " └─StreamAgg_11 1.00 2127.00 cop[tikv] funcs:count(1)->Column#6", + " └─IndexRangeScan_18 10.00 1628.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": [ "MPP mode may be blocked because you have set a hint to read table `t` from TiKV." @@ -169,12 +163,11 @@ { "SQL": "explain format='verbose' select /*+ read_from_storage(tiflash[t]) */ count(*) from t where a=1", "Plan": [ - "HashAgg_22 1.00 30.26 root funcs:count(Column#6)->Column#4", - "└─TableReader_24 1.00 0.00 root data:ExchangeSender_23", - " └─ExchangeSender_23 1.00 952010.16 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg_10 1.00 952010.16 mpp[tiflash] funcs:count(1)->Column#6", - " └─Selection_21 10.00 952000.00 mpp[tiflash] eq(test.t.a, 1)", - " └─TableFullScan_20 10000.00 928000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg_27 1.00 49.90 root funcs:count(Column#7)->Column#4", + "└─TableReader_28 1.00 0.00 root data:StreamAgg_11", + " └─StreamAgg_11 1.00 1427024.00 batchCop[tiflash] funcs:count(1)->Column#7", + " └─Selection_26 10.00 1427000.00 batchCop[tiflash] eq(test.t.a, 1)", + " └─TableFullScan_25 10000.00 928000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ], "Warn": null } @@ -191,9 +184,9 @@ { "SQL": "explain format = 'brief' select count(*) from t where a=1 -- 1. no replica", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#7)->Column#6", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#7", + "StreamAgg 1.00 root funcs:count(Column#8)->Column#6", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#8", " └─IndexRangeScan 10.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": [ @@ -208,10 +201,10 @@ { "SQL": "explain select count(*) from t where a=1 -- 2. replica not ready", "Plan": [ - "HashAgg_12 1.00 root funcs:count(Column#7)->Column#6", - "└─IndexReader_13 1.00 root index:HashAgg_6", - " └─HashAgg_6 1.00 cop[tikv] funcs:count(1)->Column#7", - " └─IndexRangeScan_11 10.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_17 1.00 root funcs:count(Column#8)->Column#6", + "└─IndexReader_18 1.00 root index:StreamAgg_9", + " └─StreamAgg_9 1.00 cop[tikv] funcs:count(1)->Column#8", + " └─IndexRangeScan_16 10.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": [ "MPP mode may be blocked because tiflash replicas of table `t` not ready." @@ -230,10 +223,10 @@ { "SQL": "explain select count(*) from t where a=1 -- 3. isolation_engine not match", "Plan": [ - "HashAgg_12 1.00 root funcs:count(Column#7)->Column#6", - "└─IndexReader_13 1.00 root index:HashAgg_6", - " └─HashAgg_6 1.00 cop[tikv] funcs:count(1)->Column#7", - " └─IndexRangeScan_11 10.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" + "StreamAgg_17 1.00 root funcs:count(Column#8)->Column#6", + "└─IndexReader_18 1.00 root index:StreamAgg_9", + " └─StreamAgg_9 1.00 cop[tikv] funcs:count(1)->Column#8", + " └─IndexRangeScan_16 10.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": [ "MPP mode may be blocked because 'tidb_isolation_read_engines'(value: 'tikv') not match, need 'tiflash'." @@ -247,9 +240,9 @@ { "SQL": "explain format = 'brief' select /*+ read_from_storage(tikv[t]) */ count(*) from t where a=1 -- 4. hint use tikv", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#7)->Column#6", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#7", + "StreamAgg 1.00 root funcs:count(Column#8)->Column#6", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#8", " └─IndexRangeScan 10.00 cop[tikv] table:t, index:idx(a) range:[1,1], keep order:false, stats:pseudo" ], "Warn": [ @@ -287,7 +280,7 @@ { "SQL": "EXPLAIN format = 'brief' SELECT count(b) from t where a=1; -- 7. agg func has virtual column", "Plan": [ - "HashAgg 1.00 root funcs:count(test.t.b)->Column#6", + "StreamAgg 1.00 root funcs:count(test.t.b)->Column#6", "└─TableReader 10.00 root data:Selection", " └─Selection 10.00 cop[tiflash] eq(test.t.a, 1)", " └─TableFullScan 10000.00 cop[tiflash] table:t keep order:false, stats:pseudo" @@ -334,7 +327,7 @@ { "SQL": "EXPLAIN format = 'brief' SELECT count(a) from t where c=1; -- 11. type not supported", "Plan": [ - "HashAgg 1.00 root funcs:count(test.t.a)->Column#6", + "StreamAgg 1.00 root funcs:count(test.t.a)->Column#6", "└─TableReader 10.00 root data:Selection", " └─Selection 10.00 cop[tikv] eq(test.t.c, 1)", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" @@ -350,7 +343,7 @@ { "SQL": "EXPLAIN format = 'brief' SELECT count(a) from t where d=1; -- 11.1. type not supported", "Plan": [ - "HashAgg 1.00 root funcs:count(test.t.a)->Column#6", + "StreamAgg 1.00 root funcs:count(test.t.a)->Column#6", "└─TableReader 10.00 root data:Selection", " └─Selection 10.00 cop[tikv] eq(test.t.d, 1)", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" @@ -381,11 +374,11 @@ { "SQL": "EXPLAIN SELECT count(*) from t where a=1; -- 1. static partition prune", "Plan": [ - "HashAgg_19 1.00 root funcs:count(Column#5)->Column#4", - "└─TableReader_20 1.00 root data:HashAgg_9", - " └─HashAgg_9 1.00 batchCop[tiflash] funcs:count(1)->Column#5", - " └─Selection_18 10.00 batchCop[tiflash] eq(test.t.a, 1)", - " └─TableFullScan_17 10000.00 batchCop[tiflash] table:t, partition:p0 keep order:false, stats:pseudo" + "StreamAgg_32 1.00 root funcs:count(Column#6)->Column#4", + "└─TableReader_33 1.00 root data:StreamAgg_13", + " └─StreamAgg_13 1.00 batchCop[tiflash] funcs:count(1)->Column#6", + " └─Selection_31 10.00 batchCop[tiflash] eq(test.t.a, 1)", + " └─TableFullScan_30 10000.00 batchCop[tiflash] table:t, partition:p0 keep order:false, stats:pseudo" ], "Warn": [ "MPP mode may be blocked because table `t`is a partition table which is not supported when `@@tidb_partition_prune_mode=static`." diff --git a/planner/core/testdata/expression_rewriter_suite_out.json b/planner/core/testdata/expression_rewriter_suite_out.json index b7f5a31f7a46a..72b86884a1412 100644 --- a/planner/core/testdata/expression_rewriter_suite_out.json +++ b/planner/core/testdata/expression_rewriter_suite_out.json @@ -7,10 +7,9 @@ "Plan": [ "HashJoin 2.25 root inner join, equal:[eq(test.t1.a, test.t2.a) eq(test.t1.b, test.t2.b)]", "├─HashAgg(Build) 1.69 root group by:test.t2.a, test.t2.b, funcs:firstrow(test.t2.a)->test.t2.a, funcs:firstrow(test.t2.b)->test.t2.b", - "│ └─TableReader 1.69 root data:HashAgg", - "│ └─HashAgg 1.69 cop[tikv] group by:test.t2.a, test.t2.b, ", - "│ └─Selection 2.25 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ └─TableFullScan 4.00 cop[tikv] table:t2 keep order:false", + "│ └─TableReader 2.25 root data:Selection", + "│ └─Selection 2.25 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ └─TableFullScan 4.00 cop[tikv] table:t2 keep order:false", "└─TableReader(Probe) 2.25 root data:Selection", " └─Selection 2.25 cop[tikv] not(isnull(test.t1.a)), not(isnull(test.t1.b))", " └─TableFullScan 4.00 cop[tikv] table:t1 keep order:false" @@ -37,15 +36,13 @@ "Plan": [ "HashJoin 1.69 root inner join, equal:[eq(test.t2.a, test.t1.a) eq(test.t2.b, Column#7)]", "├─HashAgg(Build) 1.69 root group by:test.t2.a, test.t2.b, funcs:firstrow(test.t2.a)->test.t2.a, funcs:firstrow(test.t2.b)->test.t2.b", - "│ └─TableReader 1.69 root data:HashAgg", - "│ └─HashAgg 1.69 cop[tikv] group by:test.t2.a, test.t2.b, ", - "│ └─Selection 2.25 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ └─TableFullScan 4.00 cop[tikv] table:t2 keep order:false", - "└─HashAgg(Probe) 2.25 root group by:test.t1.a, funcs:count(Column#14)->Column#7, funcs:firstrow(test.t1.a)->test.t1.a", - " └─TableReader 2.25 root data:HashAgg", - " └─HashAgg 2.25 cop[tikv] group by:test.t1.a, funcs:count(1)->Column#14", - " └─Selection 3.00 cop[tikv] not(isnull(test.t1.a))", - " └─TableFullScan 4.00 cop[tikv] table:t1 keep order:false" + "│ └─TableReader 2.25 root data:Selection", + "│ └─Selection 2.25 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ └─TableFullScan 4.00 cop[tikv] table:t2 keep order:false", + "└─HashAgg(Probe) 2.25 root group by:test.t1.a, funcs:count(1)->Column#7, funcs:firstrow(test.t1.a)->test.t1.a", + " └─TableReader 3.00 root data:Selection", + " └─Selection 3.00 cop[tikv] not(isnull(test.t1.a))", + " └─TableFullScan 4.00 cop[tikv] table:t1 keep order:false" ], "Res": [ "1" @@ -57,10 +54,9 @@ "HashJoin 2.40 root CARTESIAN anti semi join, other cond:eq(Column#7, test.t2.b), eq(test.t1.a, test.t2.a)", "├─TableReader(Build) 4.00 root data:TableFullScan", "│ └─TableFullScan 4.00 cop[tikv] table:t2 keep order:false", - "└─HashAgg(Probe) 3.00 root group by:test.t1.a, funcs:count(Column#12)->Column#7, funcs:firstrow(test.t1.a)->test.t1.a", - " └─TableReader 3.00 root data:HashAgg", - " └─HashAgg 3.00 cop[tikv] group by:test.t1.a, funcs:count(1)->Column#12", - " └─TableFullScan 4.00 cop[tikv] table:t1 keep order:false" + "└─HashAgg(Probe) 3.00 root group by:test.t1.a, funcs:count(1)->Column#7, funcs:firstrow(test.t1.a)->test.t1.a", + " └─TableReader 4.00 root data:TableFullScan", + " └─TableFullScan 4.00 cop[tikv] table:t1 keep order:false" ], "Res": [ "4" @@ -73,9 +69,9 @@ "Cases": [ { "Plan": [ - "HashAgg 1.00 root funcs:bit_or(Column#5)->Column#4", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:bit_or(cast(mul(cast(test.t.a, double BINARY), cast(test.t.b, double BINARY)), bigint(20) BINARY))->Column#5", + "StreamAgg 1.00 root funcs:bit_or(Column#6)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:bit_or(cast(mul(cast(test.t.a, double BINARY), cast(test.t.b, double BINARY)), bigint(20) BINARY))->Column#6", " └─TableFullScan 1.00 cop[tikv] table:t keep order:false" ] } diff --git a/planner/core/testdata/index_merge_suite_in.json b/planner/core/testdata/index_merge_suite_in.json index 55c9c1cca1f7c..db7ebacdb29c7 100644 --- a/planner/core/testdata/index_merge_suite_in.json +++ b/planner/core/testdata/index_merge_suite_in.json @@ -9,5 +9,35 @@ "select * from t where (c < 1 or f > 2) and (c > 5 or f < 7) and (c < 1 or g > 2)", "select * from t where (c < 1 or f > 2) and (c > 5 or f < 7) and (e < 1 or f > 2)" ] + }, + { + "name": "TestHintForIntersectionIndexMerge", + "cases": [ + "set @@tidb_partition_prune_mode = 'dynamic'", + "select * from vh", + "select /*+ qb_name(v, v), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ qb_name(v, v@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ qb_name(v, v@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ qb_name(v, v1@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v1 where c < 30 and d in (2,5)", + "select /*+ use_index_merge(t2, ia, ibc, id, ie) */ * from t2 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "select /*+ use_index_merge(t3, ia, ibc, id, ie) */ * from t3 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "select /*+ use_index_merge(t4, ia, ibc, id, ie) */ * from t4 where a > 10 and b = 20 and c < 35 and d in (1,3,8,9) and e = 100", + "select /*+ use_index_merge(t5, is1, is2, is3, is4) */ * from t5 where s1 = 'Abc' and s2 > 'zzz' and s3 < 'B啊a' and s4 = 'CcC'", + "select /*+ use_index_merge(t6, primary, is3, is4) */ * from t6 where s1 = 'Abc' and s2 > 'zzz' and s3 = 'A啊a' and s4 not like 'Cd_'", + "select /*+ use_index_merge(t7, primary,ia,ib,ic,ie,iff,ig) */ * from t7 where a = 100 and b > 5 and c < 12.3 and d > 54.321 and e = '2022-11-22 17:00' and f > '2020-6-23 10:00' and g < 2025", + "select /*+ use_index_merge(t8, primary,is2,is3,is4,is5) */ * from t8 where s1 like '啊A%' and s2 > 'abc' and s3 > 'cba' and s4 in ('aA', '??') and s5 = 'test,2'", + "select (select /*+ use_index_merge(t1,ia,ibc,ic) */ a from t1 where t1.a > 10 and t1.b = 20 and t1.c = t2.a) from t2", + "select (select /*+ use_index_merge(t1,ia,ibc,ic) */ a from t1 where t1.a > 10 and t1.b = 20 and t1.c > t2.a) from t2", + "select (select /*+ use_index_merge(t1,ia,ibc,ic) */ a from t1 where t1.a > 10 and t1.b = 20 and t1.e > t2.a) from t2", + "set @@tidb_partition_prune_mode = 'static'", + "select * from vh", + "select /*+ qb_name(v, v), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ qb_name(v, v@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ qb_name(v, v@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ qb_name(v, v@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "select /*+ use_index_merge(t2, ia, ibc, id, ie) */ * from t2 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "select /*+ use_index_merge(t3, ia, ibc, id, ie) */ * from t3 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "select /*+ use_index_merge(t4, ia, ibc, id, ie) */ * from t4 where a > 10 and b = 20 and c < 35 and d in (1,3,8,9) and e = 100" + ] } -] \ No newline at end of file +] diff --git a/planner/core/testdata/index_merge_suite_out.json b/planner/core/testdata/index_merge_suite_out.json index 4fdd67789e205..3d67e5e372251 100644 --- a/planner/core/testdata/index_merge_suite_out.json +++ b/planner/core/testdata/index_merge_suite_out.json @@ -9,5 +9,427 @@ "[{Idxs:[c_d_e,f],TbFilters:[or(gt(test.t.c, 5), lt(test.t.f, 7)),or(lt(test.t.c, 1), gt(test.t.g, 2))]},{Idxs:[c_d_e,f],TbFilters:[or(lt(test.t.c, 1), gt(test.t.f, 2)),or(lt(test.t.c, 1), gt(test.t.g, 2))]},{Idxs:[c_d_e,g],TbFilters:[or(lt(test.t.c, 1), gt(test.t.f, 2)),or(gt(test.t.c, 5), lt(test.t.f, 7))]}]", "[{Idxs:[c_d_e,f],TbFilters:[or(gt(test.t.c, 5), lt(test.t.f, 7)),or(lt(test.t.e, 1), gt(test.t.f, 2))]},{Idxs:[c_d_e,f],TbFilters:[or(lt(test.t.c, 1), gt(test.t.f, 2)),or(lt(test.t.e, 1), gt(test.t.f, 2))]}]" ] + }, + { + "Name": "TestHintForIntersectionIndexMerge", + "Cases": [ + { + "SQL": "set @@tidb_partition_prune_mode = 'dynamic'", + "Plan": null, + "Result": null + }, + { + "SQL": "select * from vh", + "Plan": [ + "IndexMerge 0.97 root partition:p0,p1,p2 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, index:ia(a) range:[10,10], keep order:false", + "├─IndexRangeScan(Build) 2.60 cop[tikv] table:t1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t1, index:id(d) range:[2,2], [5,5], keep order:false", + "└─TableRowIDScan(Probe) 0.97 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "IndexMerge 0.97 root partition:p0,p1,p2 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, index:ia(a) range:[10,10], keep order:false", + "├─IndexRangeScan(Build) 2.60 cop[tikv] table:t1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t1, index:id(d) range:[2,2], [5,5], keep order:false", + "└─TableRowIDScan(Probe) 0.97 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "IndexMerge 0.97 root partition:p0,p1,p2 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, index:ia(a) range:[10,10], keep order:false", + "├─IndexRangeScan(Build) 2.60 cop[tikv] table:t1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t1, index:id(d) range:[2,2], [5,5], keep order:false", + "└─TableRowIDScan(Probe) 0.97 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "IndexMerge 0.97 root partition:p0,p1,p2 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, index:ia(a) range:[10,10], keep order:false", + "├─IndexRangeScan(Build) 2.60 cop[tikv] table:t1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t1, index:id(d) range:[2,2], [5,5], keep order:false", + "└─TableRowIDScan(Probe) 0.97 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v1@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v1 where c < 30 and d in (2,5)", + "Plan": [ + "IndexMerge 0.97 root partition:p0,p1,p2 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, index:ia(a) range:[10,10], keep order:false", + "├─IndexRangeScan(Build) 2.60 cop[tikv] table:t1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t1, index:id(d) range:[2,2], [5,5], keep order:false", + "└─TableRowIDScan(Probe) 0.97 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ use_index_merge(t2, ia, ibc, id, ie) */ * from t2 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "Plan": [ + "IndexMerge 0.89 root partition:p0,p1,p2 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t2, index:ia(a) range:(10,+inf], keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t2, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t2, index:id(d) range:[-inf,45), keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t2, index:ie(e) range:[100,100], keep order:false", + "└─TableRowIDScan(Probe) 0.89 cop[tikv] table:t2 keep order:false" + ], + "Result": [ + "20 20 20 5 100" + ] + }, + { + "SQL": "select /*+ use_index_merge(t3, ia, ibc, id, ie) */ * from t3 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "Plan": [ + "IndexMerge 0.44 root partition:p0 type: intersection", + "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t3, index:ia(a) range:(10,+inf], keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t3, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t3, index:id(d) range:[-inf,45), keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t3, index:ie(e) range:[100,100], keep order:false", + "└─TableRowIDScan(Probe) 0.44 cop[tikv] table:t3 keep order:false" + ], + "Result": [ + "20 20 20 5 100" + ] + }, + { + "SQL": "select /*+ use_index_merge(t4, ia, ibc, id, ie) */ * from t4 where a > 10 and b = 20 and c < 35 and d in (1,3,8,9) and e = 100", + "Plan": [ + "IndexMerge 0.89 root partition:p0,p1 type: intersection", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t4, index:ia(a) range:(10,+inf], keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t4, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "├─IndexRangeScan(Build) 3.00 cop[tikv] table:t4, index:id(d) range:[1,1], [3,3], [8,8], [9,9], keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t4, index:ie(e) range:[100,100], keep order:false", + "└─TableRowIDScan(Probe) 0.89 cop[tikv] table:t4 keep order:false" + ], + "Result": [ + "30 20 5 8 100" + ] + }, + { + "SQL": "select /*+ use_index_merge(t5, is1, is2, is3, is4) */ * from t5 where s1 = 'Abc' and s2 > 'zzz' and s3 < 'B啊a' and s4 = 'CcC'", + "Plan": [ + "IndexMerge 0.00 root type: intersection", + "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t5, index:is1(s1) range:[\"Abc\",\"Abc\"], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t5, index:is2(s2) range:(\"zzz\",+inf], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t5, index:is3(s3) range:[-inf,\"B啊a\"), keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t5, index:is4(s4) range:[\"CcC\",\"CcC\"], keep order:false, stats:pseudo", + "└─TableRowIDScan(Probe) 0.00 cop[tikv] table:t5 keep order:false, stats:pseudo" + ], + "Result": [ + "Abc zzzz aa ccc" + ] + }, + { + "SQL": "select /*+ use_index_merge(t6, primary, is3, is4) */ * from t6 where s1 = 'Abc' and s2 > 'zzz' and s3 = 'A啊a' and s4 not like 'Cd_'", + "Plan": [ + "IndexMerge 0.03 root type: intersection", + "├─IndexRangeScan(Build) 33.33 cop[tikv] table:t6, index:PRIMARY(s1, s2) range:(\"Abc\" \"zzz\",\"Abc\" +inf], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t6, index:is3(s3) range:[\"A啊a\",\"A啊a\"], keep order:false, stats:pseudo", + "└─Selection(Probe) 0.03 cop[tikv] gt(test.t6.s2, \"zzz\"), not(like(test.t6.s4, \"Cd_\", 92))", + " └─TableRowIDScan 0.03 cop[tikv] table:t6 keep order:false, stats:pseudo" + ], + "Result": [ + "Abc zzzz A啊A Cdaa" + ] + }, + { + "SQL": "select /*+ use_index_merge(t7, primary,ia,ib,ic,ie,iff,ig) */ * from t7 where a = 100 and b > 5 and c < 12.3 and d > 54.321 and e = '2022-11-22 17:00' and f > '2020-6-23 10:00' and g < 2025", + "Plan": [ + "IndexMerge 0.00 root type: intersection", + "├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t7, index:PRIMARY(d) range:(54.321,+inf], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t7, index:ia(a) range:[100,100], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t7, index:ib(b) range:(\"0x05\",+inf], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t7, index:ic(c) range:[-inf,12.3), keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t7, index:ie(e) range:[2022-11-22 17:00:00,2022-11-22 17:00:00], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t7, index:iff(f) range:(2020-06-23 10:00:00.00000,+inf], keep order:false, stats:pseudo", + "├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t7, index:ig(g) range:[-inf,2025), keep order:false, stats:pseudo", + "└─TableRowIDScan(Probe) 0.00 cop[tikv] table:t7 keep order:false, stats:pseudo" + ], + "Result": [ + "100 \u0006 12.2 56.000 2022-11-22 17:00:00 2022-12-21 00:00:00.00000 2021" + ] + }, + { + "SQL": "select /*+ use_index_merge(t8, primary,is2,is3,is4,is5) */ * from t8 where s1 like '啊A%' and s2 > 'abc' and s3 > 'cba' and s4 in ('aA', '??') and s5 = 'test,2'", + "Plan": [ + "Selection 1.42 root eq(test.t8.s5, \"test,2\")", + "└─IndexMerge 0.59 root type: intersection", + " ├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t8, index:is2(s2) range:(0x616263,+inf], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t8, index:is3(s3) range:(0x636261,+inf], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 20.00 cop[tikv] table:t8, index:is4(s4) range:[\"aA\",\"aA\"], [\"??\",\"??\"], keep order:false, stats:pseudo", + " └─Selection(Probe) 0.59 cop[tikv] gt(test.t8.s3, \"cba\"), like(test.t8.s1, \"啊A%\", 92)", + " └─TableRowIDScan 2.22 cop[tikv] table:t8 keep order:false, stats:pseudo" + ], + "Result": [ + "啊aabbccdd abcc cccc aA tEsT,2" + ] + }, + { + "SQL": "select (select /*+ use_index_merge(t1,ia,ibc,ic) */ a from t1 where t1.a > 10 and t1.b = 20 and t1.c = t2.a) from t2", + "Plan": [ + "Projection 3.00 root test.t1.a", + "└─Apply 3.00 root CARTESIAN left outer join", + " ├─IndexReader(Build) 3.00 root partition:all index:IndexFullScan", + " │ └─IndexFullScan 3.00 cop[tikv] table:t2, index:ia(a) keep order:false", + " └─MaxOneRow(Probe) 3.00 root ", + " └─IndexMerge 1.50 root partition:all type: intersection", + " ├─IndexRangeScan(Build) 6.00 cop[tikv] table:t1, index:ia(a) range:(10,+inf], keep order:false", + " ├─IndexRangeScan(Build) 4.00 cop[tikv] table:t1, index:ibc(b, c) range: decided by [eq(test.t1.b, 20) eq(test.t1.c, test.t2.a)], keep order:false", + " └─TableRowIDScan(Probe) 1.50 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "20", + "", + "" + ] + }, + { + "SQL": "select (select /*+ use_index_merge(t1,ia,ibc,ic) */ a from t1 where t1.a > 10 and t1.b = 20 and t1.c > t2.a) from t2", + "Plan": [ + "Projection 3.00 root test.t1.a", + "└─Apply 3.00 root CARTESIAN left outer join", + " ├─IndexReader(Build) 3.00 root partition:all index:IndexFullScan", + " │ └─IndexFullScan 3.00 cop[tikv] table:t2, index:ia(a) keep order:false", + " └─MaxOneRow(Probe) 3.00 root ", + " └─IndexMerge 3.60 root partition:all type: intersection", + " ├─IndexRangeScan(Build) 6.00 cop[tikv] table:t1, index:ia(a) range:(10,+inf], keep order:false", + " ├─Selection(Build) 7.20 cop[tikv] gt(test.t1.c, test.t2.a)", + " │ └─IndexRangeScan 9.00 cop[tikv] table:t1, index:ibc(b, c) range:[20,20], keep order:false", + " └─TableRowIDScan(Probe) 3.60 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "20", + "20", + "" + ] + }, + { + "SQL": "select (select /*+ use_index_merge(t1,ia,ibc,ic) */ a from t1 where t1.a > 10 and t1.b = 20 and t1.e > t2.a) from t2", + "Plan": [ + "Projection 3.00 root test.t1.a", + "└─Apply 3.00 root CARTESIAN left outer join", + " ├─IndexReader(Build) 3.00 root partition:all index:IndexFullScan", + " │ └─IndexFullScan 3.00 cop[tikv] table:t2, index:ia(a) keep order:false", + " └─MaxOneRow(Probe) 3.00 root ", + " └─IndexMerge 3.60 root partition:all type: intersection", + " ├─IndexRangeScan(Build) 6.00 cop[tikv] table:t1, index:ia(a) range:(10,+inf], keep order:false", + " ├─IndexRangeScan(Build) 9.00 cop[tikv] table:t1, index:ibc(b, c) range:[20,20], keep order:false", + " └─Selection(Probe) 3.60 cop[tikv] gt(test.t1.e, test.t2.a)", + " └─TableRowIDScan 4.50 cop[tikv] table:t1 keep order:false" + ], + "Result": [ + "20", + "20", + "20" + ] + }, + { + "SQL": "set @@tidb_partition_prune_mode = 'static'", + "Plan": null, + "Result": null + }, + { + "SQL": "select * from vh", + "Plan": [ + "PartitionUnion 0.50 root ", + "├─IndexMerge 0.50 root type: intersection", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, partition:p0, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 0.50 cop[tikv] table:t1, partition:p0 keep order:false", + "├─IndexMerge 1.00 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p1 keep order:false", + "└─IndexMerge 0.00 root type: intersection", + " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, partition:p2, index:ia(a) range:[10,10], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 33.23 cop[tikv] table:t1, partition:p2, index:ibc(b, c) range:[20 -inf,20 30), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 20.00 cop[tikv] table:t1, partition:p2, index:id(d) range:[2,2], [5,5], keep order:false, stats:pseudo", + " └─TableRowIDScan(Probe) 0.00 cop[tikv] table:t1, partition:p2 keep order:false, stats:pseudo" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "PartitionUnion 0.50 root ", + "├─IndexMerge 0.50 root type: intersection", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, partition:p0, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 0.50 cop[tikv] table:t1, partition:p0 keep order:false", + "├─IndexMerge 1.00 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p1 keep order:false", + "└─IndexMerge 0.00 root type: intersection", + " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, partition:p2, index:ia(a) range:[10,10], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 33.23 cop[tikv] table:t1, partition:p2, index:ibc(b, c) range:[20 -inf,20 30), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 20.00 cop[tikv] table:t1, partition:p2, index:id(d) range:[2,2], [5,5], keep order:false, stats:pseudo", + " └─TableRowIDScan(Probe) 0.00 cop[tikv] table:t1, partition:p2 keep order:false, stats:pseudo" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "PartitionUnion 0.50 root ", + "├─IndexMerge 0.50 root type: intersection", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, partition:p0, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 0.50 cop[tikv] table:t1, partition:p0 keep order:false", + "├─IndexMerge 1.00 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p1 keep order:false", + "└─IndexMerge 0.00 root type: intersection", + " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, partition:p2, index:ia(a) range:[10,10], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 33.23 cop[tikv] table:t1, partition:p2, index:ibc(b, c) range:[20 -inf,20 30), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 20.00 cop[tikv] table:t1, partition:p2, index:id(d) range:[2,2], [5,5], keep order:false, stats:pseudo", + " └─TableRowIDScan(Probe) 0.00 cop[tikv] table:t1, partition:p2 keep order:false, stats:pseudo" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "PartitionUnion 0.50 root ", + "├─IndexMerge 0.50 root type: intersection", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, partition:p0, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 0.50 cop[tikv] table:t1, partition:p0 keep order:false", + "├─IndexMerge 1.00 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p1 keep order:false", + "└─IndexMerge 0.00 root type: intersection", + " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, partition:p2, index:ia(a) range:[10,10], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 33.23 cop[tikv] table:t1, partition:p2, index:ibc(b, c) range:[20 -inf,20 30), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 20.00 cop[tikv] table:t1, partition:p2, index:id(d) range:[2,2], [5,5], keep order:false, stats:pseudo", + " └─TableRowIDScan(Probe) 0.00 cop[tikv] table:t1, partition:p2 keep order:false, stats:pseudo" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ qb_name(v, v@sel_1 .@sel_1), use_index_merge(@v t1, ia, ibc, id) */ * from v", + "Plan": [ + "PartitionUnion 0.50 root ", + "├─IndexMerge 0.50 root type: intersection", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t1, partition:p0, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p0, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 0.50 cop[tikv] table:t1, partition:p0 keep order:false", + "├─IndexMerge 1.00 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ia(a) range:[10,10], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:ibc(b, c) range:[20 -inf,20 30), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, partition:p1, index:id(d) range:[2,2], [5,5], keep order:false", + "│ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t1, partition:p1 keep order:false", + "└─IndexMerge 0.00 root type: intersection", + " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, partition:p2, index:ia(a) range:[10,10], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 33.23 cop[tikv] table:t1, partition:p2, index:ibc(b, c) range:[20 -inf,20 30), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 20.00 cop[tikv] table:t1, partition:p2, index:id(d) range:[2,2], [5,5], keep order:false, stats:pseudo", + " └─TableRowIDScan(Probe) 0.00 cop[tikv] table:t1, partition:p2 keep order:false, stats:pseudo" + ], + "Result": [ + "10 20 5 5 3" + ] + }, + { + "SQL": "select /*+ use_index_merge(t2, ia, ibc, id, ie) */ * from t2 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "Plan": [ + "PartitionUnion 1.25 root ", + "├─IndexMerge 0.25 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p0, index:ia(a) range:(10,+inf], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p0, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t2, partition:p0, index:id(d) range:[-inf,45), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p0, index:ie(e) range:[100,100], keep order:false", + "│ └─TableRowIDScan(Probe) 0.25 cop[tikv] table:t2, partition:p0 keep order:false", + "├─IndexMerge 1.00 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p1, index:ia(a) range:(10,+inf], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p1, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p1, index:id(d) range:[-inf,45), keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t2, partition:p1, index:ie(e) range:[100,100], keep order:false", + "│ └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t2, partition:p1 keep order:false", + "└─IndexMerge 0.00 root type: intersection", + " ├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t2, partition:p2, index:ia(a) range:(10,+inf], keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 33.23 cop[tikv] table:t2, partition:p2, index:ibc(b, c) range:[20 -inf,20 35), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t2, partition:p2, index:id(d) range:[-inf,45), keep order:false, stats:pseudo", + " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t2, partition:p2, index:ie(e) range:[100,100], keep order:false, stats:pseudo", + " └─TableRowIDScan(Probe) 0.00 cop[tikv] table:t2, partition:p2 keep order:false, stats:pseudo" + ], + "Result": [ + "20 20 20 5 100" + ] + }, + { + "SQL": "select /*+ use_index_merge(t3, ia, ibc, id, ie) */ * from t3 where a > 10 and b = 20 and c < 35 and d < 45 and e = 100", + "Plan": [ + "IndexMerge 0.50 root type: intersection", + "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t3, partition:p0, index:ia(a) range:(10,+inf], keep order:false", + "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t3, partition:p0, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t3, partition:p0, index:id(d) range:[-inf,45), keep order:false", + "├─IndexRangeScan(Build) 2.00 cop[tikv] table:t3, partition:p0, index:ie(e) range:[100,100], keep order:false", + "└─TableRowIDScan(Probe) 0.50 cop[tikv] table:t3, partition:p0 keep order:false" + ], + "Result": [ + "20 20 20 5 100" + ] + }, + { + "SQL": "select /*+ use_index_merge(t4, ia, ibc, id, ie) */ * from t4 where a > 10 and b = 20 and c < 35 and d in (1,3,8,9) and e = 100", + "Plan": [ + "PartitionUnion 1.25 root ", + "├─IndexMerge 0.25 root type: intersection", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p0, index:ia(a) range:(10,+inf], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p0, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + "│ ├─IndexRangeScan(Build) 2.00 cop[tikv] table:t4, partition:p0, index:id(d) range:[1,1], [3,3], [8,8], [9,9], keep order:false", + "│ ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p0, index:ie(e) range:[100,100], keep order:false", + "│ └─TableRowIDScan(Probe) 0.25 cop[tikv] table:t4, partition:p0 keep order:false", + "└─IndexMerge 1.00 root type: intersection", + " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p1, index:ia(a) range:(10,+inf], keep order:false", + " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p1, index:ibc(b, c) range:[20 -inf,20 35), keep order:false", + " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p1, index:id(d) range:[1,1], [3,3], [8,8], [9,9], keep order:false", + " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:t4, partition:p1, index:ie(e) range:[100,100], keep order:false", + " └─TableRowIDScan(Probe) 1.00 cop[tikv] table:t4, partition:p1 keep order:false" + ], + "Result": [ + "30 20 5 8 100" + ] + } + ] } ] diff --git a/planner/core/testdata/integration_suite_in.json b/planner/core/testdata/integration_suite_in.json index bcce484092644..df990e52c65eb 100644 --- a/planner/core/testdata/integration_suite_in.json +++ b/planner/core/testdata/integration_suite_in.json @@ -667,8 +667,8 @@ // Hint for view v1 "explain format = 'brief' select /*+ qb_name(qb_v1_2, v1@sel_1 .@sel_2), merge_join(t1@qb_v1_2) */ * from v1;", "explain format = 'brief' select /*+ qb_name(qb_v1_2, v1@sel_1 .@sel_2), merge_join(t1@qb_v1_2), stream_agg(@qb_v1_2), qb_name(qb_v1_1, v1@sel_1 .@sel_1), merge_join(t@qb_v1_1) */ * from v1;", - "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_1 .@sel_2), merge_join(t1@qb_v1_2) */ * from v2;", - "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_1 .@sel_2), merge_join(t1@qb_v1_2), stream_agg(@qb_v1_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_1 .@sel_1), merge_join(t@qb_v1_1) */ * from v2;", + "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_2 .@sel_2), merge_join(t1@qb_v1_2) */ * from v2;", + "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_2 .@sel_2), merge_join(t1@qb_v1_2), stream_agg(@qb_v1_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_2 .@sel_1), merge_join(t@qb_v1_1) */ * from v2;", // Hint for view v2 "explain format = 'brief' select /*+ qb_name(qb_v2_2, v2@sel_1 .@sel_2), merge_join(t1@qb_v2_2) */ * from v2;", @@ -684,7 +684,6 @@ "explain format = 'brief' select /*+ qb_name(qb_v, v2@sel_1 .v1@sel_2 .v@sel_2 .@sel_2), qb_name(qb_v, v2@sel_1 .v1@sel_2 .v@sel_2 .@sel_1), merge_join(t1@qb_v) */ * from v2;", // Set the unappeared view name - // TODO: add the warning for the unused the view hints "explain format = 'brief' select /*+ qb_name(qb_v1_2, v@sel_1 .@sel_2), merge_join(t1@qb_v1_2) */ * from v1;", "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v@sel_1 .@sel_2), merge_join(t1@qb_v1_2) */ * from v2;", @@ -694,18 +693,17 @@ // Tht view hint isn't set in the first query block. "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2), merge_join(t1@qb_v_2) */ * from v) t;", - "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v@sel_1 .@sel1), merge_join(t@qb_v_1) */ * from v) t;", + "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v.@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v@sel_1 .@sel1), merge_join(t@qb_v_1) */ * from v) t;", "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2), merge_join(t1@qb_v_2) */ * from v1) t;", - "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v1@sel_1 . v@sel_2 .@sel_1), merge_join(t@qb_v_1) */ * from v1) t;", + "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v1.v@sel_2 .@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v1@sel_1 . v@sel_2 .@sel_1), merge_join(t@qb_v_1) */ * from v1) t;", - // TODO: add the warning when the view hints don't set in the first query block - "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v) t;", - "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2), qb_name(qb_v_1, v@sel_1 .@sel1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v) t;", - "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v1) t;", - "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2), qb_name(qb_v_1, v1@sel_1 . v@sel_2 .@sel_1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v1) t;", + "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_2 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v) t;", + "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_2 .@sel_2), qb_name(qb_v_1, v@sel_2 .@sel1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v) t;", + "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_2 . v@sel_2 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v1) t;", + "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_2 . v@sel_2 .@sel_2), qb_name(qb_v_1, v1@sel_2 . v@sel_2 .@sel_1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v1) t;", // Define more tables in one view hint - "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_1 .@sel_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_1 .@sel_1), merge_join(t1@qb_v1_2, t@qb_v1_1) */ * from v2;", + "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2. v1@sel_2 .@sel_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_2 .@sel_1), merge_join(t1@qb_v1_2, t@qb_v1_1), merge_join(t1@qb_v1_2) */ * from v2;", "explain format = 'brief' select /*+ qb_name(qb_v_2, v2@sel_1 . v1@sel_2 . v@sel_2 .@sel_2), qb_name(qb_v_1, v2@sel_1 . v1@sel_2 . v@sel_2 .@sel_1), merge_join(t1@qb_v_2, t3@qb_v_2) */ * from v2;", "explain format = 'brief' select /*+ qb_name(qb_v_2, v2@sel_1 . v1@sel_2 . v@sel_2 .@sel_2), qb_name(qb_v_1, v2@sel_1 . v1@sel_2 . v@sel_2 .@sel_1), merge_join(@qb_v_2 t1, t3) */ * from v2;", @@ -721,7 +719,12 @@ // The view contains the hint when creation "explain format = 'brief' select /*+ qb_name(qb_v3_2, v3@sel_1 .@sel_2), merge_join(t1@qb_v3_2) */ * from v3;", - "explain format = 'brief' select /*+ qb_name(qb_v3_2, v3@sel_1 .@sel_2), merge_join(t1@qb_v3_2), hash_agg(@qb_v3_2), qb_name(qb_v3_1, v3@sel_1 .@sel_1), hash_join(t@qb_v3_1) */ * from v3;" + "explain format = 'brief' select /*+ qb_name(qb_v3_2, v3@sel_1 .@sel_2), merge_join(t1@qb_v3_2), hash_agg(@qb_v3_2), qb_name(qb_v3_1, v3@sel_1 .@sel_1), hash_join(t@qb_v3_1) */ * from v3;", + + // The view is in the CTE + "explain with d1 as (\n select a from (\n select a from (\n select /*+ qb_name(qb, v4) use_index(t4@qb, idx_a) */ a from v4 where a < 10\n ) as t0 where a < 9\n ) as t1 where a < 8\n), d2 as (select /*+ qb_name(qb2, v4) use_index(t4@qb2, idx_b) */ a from v4 where b < 10)\n\nselect * from (select * from d1) as t0 join (select * from d2) as t1;", + "explain with d1 as (\n select a from (\n select a from (\n select a from v4 where a < 10\n ) as t0 where a < 9\n ) as t1 where a < 8\n), d2 as (select a from v4 where b < 10)\n\nselect /*+ qb_name(qb, v4@sel_4) use_index(t4@qb, idx_a) qb_name(qb2, v4@sel_5) use_index(t4@qb, idx_b) */ * from (select * from d1) as t0 join (select * from d2) as t1;", + "explain with d1 as (\n select a from (\n select a from (\n select /*+ qb_name(qb, v5) use_index(t4@qb, idx_a) */ a from v4 where a < 10\n ) as t0 where a < 9\n ) as t1 where a < 8\n), d2 as (select /*+ qb_name(qb2, v4) use_index(t4@qb2, idx_b) */ a from v4 where b < 10)\n\nselect * from (select * from d1) as t0 join (select * from d2) as t1;" ] }, { diff --git a/planner/core/testdata/integration_suite_out.json b/planner/core/testdata/integration_suite_out.json index b7f0c9ed9cb95..14c04c6cfb0ab 100644 --- a/planner/core/testdata/integration_suite_out.json +++ b/planner/core/testdata/integration_suite_out.json @@ -175,12 +175,12 @@ "Plan": [ "HashAgg 2.00 root group by:Column#5, funcs:firstrow(Column#5)->Column#5", "└─Union 2.00 root ", - " ├─HashAgg 1.00 root funcs:max(test.t.a)->Column#2", + " ├─StreamAgg 1.00 root funcs:max(test.t.a)->Column#2", " │ └─Limit 1.00 root offset:0, count:1", " │ └─TableReader 1.00 root data:Limit", " │ └─Limit 1.00 cop[tikv] offset:0, count:1", " │ └─TableFullScan 1.00 cop[tikv] table:t keep order:true, desc, stats:pseudo", - " └─HashAgg 1.00 root funcs:min(test.t.a)->Column#4", + " └─StreamAgg 1.00 root funcs:min(test.t.a)->Column#4", " └─Limit 1.00 root offset:0, count:1", " └─TableReader 1.00 root data:Limit", " └─Limit 1.00 cop[tikv] offset:0, count:1", @@ -191,12 +191,12 @@ "SQL": "explain format = 'brief' select min(a), max(a) from cluster_index_t", "Plan": [ "HashJoin 1.00 root CARTESIAN inner join", - "├─HashAgg(Build) 1.00 root funcs:max(test.cluster_index_t.a)->Column#5", + "├─StreamAgg(Build) 1.00 root funcs:max(test.cluster_index_t.a)->Column#5", "│ └─Limit 1.00 root offset:0, count:1", "│ └─TableReader 1.00 root data:Limit", "│ └─Limit 1.00 cop[tikv] offset:0, count:1", "│ └─TableFullScan 1.00 cop[tikv] table:cluster_index_t keep order:true, desc, stats:pseudo", - "└─HashAgg(Probe) 1.00 root funcs:min(test.cluster_index_t.a)->Column#4", + "└─StreamAgg(Probe) 1.00 root funcs:min(test.cluster_index_t.a)->Column#4", " └─Limit 1.00 root offset:0, count:1", " └─TableReader 1.00 root data:Limit", " └─Limit 1.00 cop[tikv] offset:0, count:1", @@ -207,12 +207,12 @@ "SQL": "explain format = 'brief' select min(b), max(b) from cluster_index_t where a = 1", "Plan": [ "HashJoin 1.00 root CARTESIAN inner join", - "├─HashAgg(Build) 1.00 root funcs:max(test.cluster_index_t.b)->Column#5", + "├─StreamAgg(Build) 1.00 root funcs:max(test.cluster_index_t.b)->Column#5", "│ └─Limit 1.00 root offset:0, count:1", "│ └─TableReader 1.00 root data:Limit", "│ └─Limit 1.00 cop[tikv] offset:0, count:1", "│ └─TableRangeScan 1.00 cop[tikv] table:cluster_index_t range:[1,1], keep order:true, desc, stats:pseudo", - "└─HashAgg(Probe) 1.00 root funcs:min(test.cluster_index_t.b)->Column#4", + "└─StreamAgg(Probe) 1.00 root funcs:min(test.cluster_index_t.b)->Column#4", " └─Limit 1.00 root offset:0, count:1", " └─TableReader 1.00 root data:Limit", " └─Limit 1.00 cop[tikv] offset:0, count:1", @@ -222,9 +222,9 @@ { "SQL": "explain format = 'brief' select min(a), max(a) from cluster_index_t where b = 1", "Plan": [ - "HashAgg 1.00 root funcs:min(Column#6)->Column#4, funcs:max(Column#7)->Column#5", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:min(test.cluster_index_t.a)->Column#6, funcs:max(test.cluster_index_t.a)->Column#7", + "StreamAgg 1.00 root funcs:min(Column#8)->Column#4, funcs:max(Column#9)->Column#5", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:min(test.cluster_index_t.a)->Column#8, funcs:max(test.cluster_index_t.a)->Column#9", " └─Selection 10.00 cop[tikv] eq(test.cluster_index_t.b, 1)", " └─TableFullScan 10000.00 cop[tikv] table:cluster_index_t keep order:false, stats:pseudo" ] @@ -232,9 +232,9 @@ { "SQL": "explain format = 'brief' select min(b), max(b) from cluster_index_t where b = 1", "Plan": [ - "HashAgg 1.00 root funcs:min(Column#6)->Column#4, funcs:max(Column#7)->Column#5", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:min(test.cluster_index_t.b)->Column#6, funcs:max(test.cluster_index_t.b)->Column#7", + "StreamAgg 1.00 root funcs:min(Column#8)->Column#4, funcs:max(Column#9)->Column#5", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:min(test.cluster_index_t.b)->Column#8, funcs:max(test.cluster_index_t.b)->Column#9", " └─Selection 10.00 cop[tikv] eq(test.cluster_index_t.b, 1)", " └─TableFullScan 10000.00 cop[tikv] table:cluster_index_t keep order:false, stats:pseudo" ] @@ -339,7 +339,7 @@ { "SQL": "explain format = 'brief' select /*+ USE_INDEX_MERGE(t, a, b) */ * from t where a = 1 or b = 2", "Plan": [ - "IndexMerge 2.00 root ", + "IndexMerge 2.00 root type: union", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:b(b) range:[2,2], keep order:false, stats:pseudo", "└─TableRowIDScan(Probe) 2.00 cop[tikv] table:t keep order:false, stats:pseudo" @@ -348,7 +348,7 @@ { "SQL": "explain format = 'brief' select /*+ USE_INDEX_MERGE(t, A, B) */ * from t where a = 1 or b = 2", "Plan": [ - "IndexMerge 2.00 root ", + "IndexMerge 2.00 root type: union", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:b(b) range:[2,2], keep order:false, stats:pseudo", "└─TableRowIDScan(Probe) 2.00 cop[tikv] table:t keep order:false, stats:pseudo" @@ -386,7 +386,7 @@ { "SQL": "explain format = 'brief' select /*+ USE_INDEX_MERGE(t, a, c) */ * from t where b = 1 and (a = 1 or c = 1)", "Plan": [ - "IndexMerge 0.02 root ", + "IndexMerge 0.02 root type: union", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, index:c(c) range:[1,1], keep order:false, stats:pseudo", "└─Selection(Probe) 0.02 cop[tikv] eq(test.t.b, 1)", @@ -942,7 +942,7 @@ "SQL": "select /*+ use_index_merge(t partition(p0)) */ * from t where t.b = 1 or t.c = \"8\"", "Plan": [ "PartitionUnion 59.97 root ", - "├─IndexMerge 19.99 root ", + "├─IndexMerge 19.99 root type: union", "│ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, partition:p0, index:b(b) range:[1,1], keep order:false, stats:pseudo", "│ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, partition:p0, index:c(c) range:[\"8\",\"8\"], keep order:false, stats:pseudo", "│ └─TableRowIDScan(Probe) 19.99 cop[tikv] table:t, partition:p0 keep order:false, stats:pseudo", @@ -959,11 +959,11 @@ "SQL": "select /*+ use_index_merge(t partition(p0, p1) primary, b) */ * from t where t.a = 1 or t.b = 2", "Plan": [ "PartitionUnion 33.00 root ", - "├─IndexMerge 11.00 root ", + "├─IndexMerge 11.00 root type: union", "│ ├─TableRangeScan(Build) 1.00 cop[tikv] table:t, partition:p0 range:[1,1], keep order:false, stats:pseudo", "│ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, partition:p0, index:b(b) range:[2,2], keep order:false, stats:pseudo", "│ └─TableRowIDScan(Probe) 11.00 cop[tikv] table:t, partition:p0 keep order:false, stats:pseudo", - "├─IndexMerge 11.00 root ", + "├─IndexMerge 11.00 root type: union", "│ ├─TableRangeScan(Build) 1.00 cop[tikv] table:t, partition:p1 range:[1,1], keep order:false, stats:pseudo", "│ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t, partition:p1, index:b(b) range:[2,2], keep order:false, stats:pseudo", "│ └─TableRowIDScan(Probe) 11.00 cop[tikv] table:t, partition:p1 keep order:false, stats:pseudo", @@ -1094,7 +1094,7 @@ { "SQL": "select /*+ use_index_merge(t1 primary, c) */ * from t1 where t1.a >= 1 or t1.c = 2.2", "Plan": [ - "IndexMerge 3.00 root ", + "IndexMerge 3.00 root type: union", "├─TableRangeScan(Build) 3.00 cop[tikv] table:t1 range:[1,+inf], keep order:false", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, index:c(c) range:[2.2000000000,2.2000000000], keep order:false", "└─TableRowIDScan(Probe) 3.00 cop[tikv] table:t1 keep order:false" @@ -1108,7 +1108,7 @@ { "SQL": "select /*+ use_index_merge(t1 primary, c) */ * from t1 where t1.a = 1 and t1.b = '111' or t1.c = 3.3", "Plan": [ - "IndexMerge 1.67 root ", + "IndexMerge 1.67 root type: union", "├─TableRangeScan(Build) 1.00 cop[tikv] table:t1 range:[1 \"111\",1 \"111\"], keep order:false", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t1, index:c(c) range:[3.3000000000,3.3000000000], keep order:false", "└─TableRowIDScan(Probe) 1.67 cop[tikv] table:t1 keep order:false" @@ -1338,7 +1338,7 @@ { "SQL": "select * from pt where id = 4 or c < 7", "Plan": [ - "IndexMerge_11 3330.01 root partition:all ", + "IndexMerge_11 3330.01 root partition:all type: union", "├─IndexRangeScan_8(Build) 10.00 cop[tikv] table:pt, index:i_id(id) range:[4,4], keep order:false, stats:pseudo", "├─IndexRangeScan_9(Build) 3323.33 cop[tikv] table:pt, index:i_c(c) range:[-inf,7), keep order:false, stats:pseudo", "└─TableRowIDScan_10(Probe) 3330.01 cop[tikv] table:pt keep order:false, stats:pseudo" @@ -1347,7 +1347,7 @@ { "SQL": "select * from pt where id > 4 or c = 7", "Plan": [ - "IndexMerge_11 3340.00 root partition:all ", + "IndexMerge_11 3340.00 root partition:all type: union", "├─IndexRangeScan_8(Build) 3333.33 cop[tikv] table:pt, index:i_id(id) range:(4,+inf], keep order:false, stats:pseudo", "├─IndexRangeScan_9(Build) 10.00 cop[tikv] table:pt, index:i_c(c) range:[7,7], keep order:false, stats:pseudo", "└─TableRowIDScan_10(Probe) 3340.00 cop[tikv] table:pt keep order:false, stats:pseudo" @@ -1487,7 +1487,7 @@ "SQL": "explain format = 'brief' SELECT /*+ use_index_merge(t1)*/ COUNT(*) FROM t1 WHERE (key4=42 AND key6 IS NOT NULL) OR (key1=4 AND key3=6)", "Plan": [ "StreamAgg 1.00 root funcs:count(1)->Column#10", - "└─IndexMerge 0.02 root ", + "└─IndexMerge 0.02 root type: union", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:i4(key4) range:[42,42], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:i1(key1) range:[4,4], keep order:false, stats:pseudo", " └─Selection(Probe) 0.02 cop[tikv] or(and(eq(test.t1.key4, 42), not(isnull(test.t1.key6))), and(eq(test.t1.key1, 4), eq(test.t1.key3, 6)))", @@ -1502,8 +1502,8 @@ { "SQL": "explain format = 'brief' SELECT t1.pk FROM t1 INNER JOIN t2 ON t1.col1 = t2.pk INNER JOIN t3 ON t1.col3 = t3.pk WHERE t2.col1 IN ('a' , 'b') AND t3.keycol = 'c' AND t1.col2 = 'a' AND t1.col1 != 'abcdef' AND t1.col1 != 'aaaaaa'", "Plan": [ - "IndexJoin 13.81 root inner join, inner:IndexLookUp, outer key:test.t1.col1, inner key:test.t2.pk, equal cond:eq(test.t1.col1, test.t2.pk)", - "├─IndexJoin(Build) 12.50 root inner join, inner:IndexLookUp, outer key:test.t3.pk, inner key:test.t1.col3, equal cond:eq(test.t3.pk, test.t1.col3)", + "IndexHashJoin 13.81 root inner join, inner:IndexLookUp, outer key:test.t1.col1, inner key:test.t2.pk, equal cond:eq(test.t1.col1, test.t2.pk)", + "├─IndexHashJoin(Build) 12.50 root inner join, inner:IndexLookUp, outer key:test.t3.pk, inner key:test.t1.col3, equal cond:eq(test.t3.pk, test.t1.col3)", "│ ├─IndexLookUp(Build) 10.00 root ", "│ │ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t3, index:keycol(keycol, pad1, pad2) range:[\"c\",\"c\"], keep order:false, stats:pseudo", "│ │ └─TableRowIDScan(Probe) 10.00 cop[tikv] table:t3 keep order:false, stats:pseudo", @@ -1522,8 +1522,8 @@ { "SQL": "explain format = 'brief' SELECT t1.pk FROM t1 LEFT JOIN t2 ON t1.col1 = t2.pk LEFT JOIN t3 ON t1.col3 = t3.pk WHERE t2.col1 IN ('a' , 'b') AND t3.keycol = 'c' AND t1.col2 = 'a' AND t1.col1 != 'abcdef' AND t1.col1 != 'aaaaaa'", "Plan": [ - "IndexJoin 13.81 root inner join, inner:IndexLookUp, outer key:test.t1.col1, inner key:test.t2.pk, equal cond:eq(test.t1.col1, test.t2.pk)", - "├─IndexJoin(Build) 12.50 root inner join, inner:IndexLookUp, outer key:test.t3.pk, inner key:test.t1.col3, equal cond:eq(test.t3.pk, test.t1.col3)", + "IndexHashJoin 13.81 root inner join, inner:IndexLookUp, outer key:test.t1.col1, inner key:test.t2.pk, equal cond:eq(test.t1.col1, test.t2.pk)", + "├─IndexHashJoin(Build) 12.50 root inner join, inner:IndexLookUp, outer key:test.t3.pk, inner key:test.t1.col3, equal cond:eq(test.t3.pk, test.t1.col3)", "│ ├─IndexLookUp(Build) 10.00 root ", "│ │ ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t3, index:keycol(keycol, pad1, pad2) range:[\"c\",\"c\"], keep order:false, stats:pseudo", "│ │ └─TableRowIDScan(Probe) 10.00 cop[tikv] table:t3 keep order:false, stats:pseudo", @@ -1723,7 +1723,7 @@ { "SQL": "select count(*) from t join (select t.id, t.value v1 from t join t t1 on t.id = t1.id order by t.value limit 1) v on v.id = t.id and v.v1 = t.value;", "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#10", + "StreamAgg 1.00 root funcs:count(1)->Column#10", "└─HashJoin 1.00 root inner join, equal:[eq(test.t.id, test.t.id) eq(test.t.value, test.t.value)]", " ├─Selection(Build) 0.80 root not(isnull(test.t.id)), not(isnull(test.t.value))", " │ └─TopN 1.00 root test.t.value, offset:0, count:1", @@ -1754,21 +1754,21 @@ { "SQL": "select count(1) from s1", "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#1", + "StreamAgg 1.00 root funcs:count(1)->Column#1", "└─TableDual 1.00 root rows:1" ] }, { "SQL": "select count(*) from s1", "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#1", + "StreamAgg 1.00 root funcs:count(1)->Column#1", "└─TableDual 1.00 root rows:1" ] }, { "SQL": "select sum(1) from s1", "Plan": [ - "HashAgg 1.00 root funcs:sum(1)->Column#1", + "StreamAgg 1.00 root funcs:sum(1)->Column#1", "└─TableDual 1.00 root rows:1" ] }, @@ -1777,9 +1777,9 @@ "Plan": [ "HashAgg 2.00 root group by:Column#3, funcs:firstrow(Column#3)->Column#3", "└─Union 2.00 root ", - " ├─HashAgg 1.00 root funcs:count(1)->Column#1", + " ├─StreamAgg 1.00 root funcs:count(1)->Column#1", " │ └─TableDual 1.00 root rows:1", - " └─HashAgg 1.00 root funcs:count(1)->Column#2", + " └─StreamAgg 1.00 root funcs:count(1)->Column#2", " └─TableDual 1.00 root rows:1" ] } @@ -2211,7 +2211,7 @@ "Plan": [ "Projection 15.99 root 1->Column#5", "└─Selection 15.99 root or(eq(test.t1.c1, \"de\"), and(eq(test.t1.c2, \"10\"), eq(from_base64(to_base64(test.t1.c1)), \"ab\")))", - " └─IndexMerge 19.99 root ", + " └─IndexMerge 19.99 root type: union", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:c1(c1) range:[\"de\",\"de\"], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:c2(c2) range:[\"10\",\"10\"], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 19.99 cop[tikv] table:t1 keep order:false, stats:pseudo" @@ -2225,7 +2225,7 @@ "Plan": [ "Projection 17.99 root 1->Column#5", "└─Selection 0.04 root or(eq(test.t1.c1, \"ab\"), and(eq(test.t1.c2, \"10\"), eq(char_length(left(test.t1.c1, 10)), 10)))", - " └─IndexMerge 19.99 root ", + " └─IndexMerge 19.99 root type: union", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:c1(c1) range:[\"ab\",\"ab\"], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:c2(c2) range:[\"10\",\"10\"], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 19.99 cop[tikv] table:t1 keep order:false, stats:pseudo" @@ -2239,7 +2239,7 @@ "Plan": [ "Projection 15.99 root 1->Column#6", "└─Selection 15.99 root or(eq(test.tt1.c1, \"de\"), and(eq(test.tt1.c2, \"10\"), eq(from_base64(to_base64(test.tt1.c3)), \"10\")))", - " └─IndexMerge 19.99 root ", + " └─IndexMerge 19.99 root type: union", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:tt1, index:idx_0(c1) range:[\"de\",\"de\"], keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:tt1, index:idx_1(c2, c3) range:[\"10\",\"10\"], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 19.99 cop[tikv] table:tt1 keep order:false, stats:pseudo" @@ -2253,7 +2253,7 @@ "Plan": [ "Projection 2.40 root 1->Column#3", "└─Selection 2.40 root or(eq(test.tt2.c1, -3896405), and(in(test.tt2.pk, 1, 53330), istrue_with_null(cast(to_base64(left(cast(test.tt2.pk, var_string(20)), 5)), double BINARY))))", - " └─IndexMerge 3.00 root ", + " └─IndexMerge 3.00 root type: union", " ├─IndexRangeScan(Build) 1.00 cop[tikv] table:tt2, index:c1(c1) range:[-3896405,-3896405], keep order:false, stats:pseudo", " ├─TableRangeScan(Build) 2.00 cop[tikv] table:tt2 range:[1,1], [53330,53330], keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 3.00 cop[tikv] table:tt2 keep order:false, stats:pseudo" @@ -2267,7 +2267,7 @@ "Plan": [ "Projection 5098.44 root 1->Column#5", "└─Selection 2825.66 root or(lt(test.tt3.c1, -10), and(lt(test.tt3.c2, 10), eq(reverse(cast(test.tt3.c3, var_string(20))), \"2\")))", - " └─IndexMerge 5542.21 root ", + " └─IndexMerge 5542.21 root type: union", " ├─IndexRangeScan(Build) 3323.33 cop[tikv] table:tt3, index:c1(c1) range:[-inf,-10), keep order:false, stats:pseudo", " ├─IndexRangeScan(Build) 3323.33 cop[tikv] table:tt3, index:c2(c2) range:[-inf,10), keep order:false, stats:pseudo", " └─TableRowIDScan(Probe) 5542.21 cop[tikv] table:tt3 keep order:false, stats:pseudo" @@ -2302,7 +2302,7 @@ " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", " └─StreamAgg(Probe) 10000.00 root funcs:min(test.t1.c1)->Column#8, funcs:sum(0)->Column#9, funcs:count(1)->Column#10", - " └─IndexMerge 63.35 root ", + " └─IndexMerge 63.35 root type: union", " ├─Selection(Build) 10000.00 cop[tikv] eq(10, test.t2.c3)", " │ └─TableRangeScan 10000.00 cop[tikv] table:t1 range:[10,10], keep order:false, stats:pseudo", " ├─Selection(Build) 80000.00 cop[tikv] eq(1, test.t2.c3)", @@ -2324,7 +2324,7 @@ " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", " └─StreamAgg(Probe) 10000.00 root funcs:min(test.t1.c1)->Column#8, funcs:sum(0)->Column#9, funcs:count(1)->Column#10", - " └─IndexMerge 63.35 root ", + " └─IndexMerge 63.35 root type: union", " ├─Selection(Build) 10000.00 cop[tikv] eq(10, test.t2.c3)", " │ └─TableRangeScan 10000.00 cop[tikv] table:t1 range:[10,10], keep order:false, stats:pseudo", " ├─Selection(Build) 80000.00 cop[tikv] eq(1, test.t2.c3)", @@ -2344,8 +2344,8 @@ " └─Apply 10000.00 root CARTESIAN inner join, other cond:or(and(lt(test.t2.c1, Column#8), if(ne(Column#9, 0), NULL, 1)), or(eq(Column#10, 0), if(isnull(test.t2.c1), NULL, 0)))", " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", - " └─HashAgg(Probe) 10000.00 root funcs:min(test.t1.c1)->Column#8, funcs:sum(0)->Column#9, funcs:count(1)->Column#10", - " └─IndexMerge 30263.46 root ", + " └─StreamAgg(Probe) 10000.00 root funcs:min(test.t1.c1)->Column#8, funcs:sum(0)->Column#9, funcs:count(1)->Column#10", + " └─IndexMerge 30263.46 root type: union", " ├─Selection(Build) 33333.33 cop[tikv] eq(test.t1.c1, test.t2.c3)", " │ └─TableRangeScan 33333333.33 cop[tikv] table:t1 range:[10,+inf], keep order:false, stats:pseudo", " ├─Selection(Build) 80000.00 cop[tikv] eq(1, test.t2.c3)", @@ -2367,7 +2367,7 @@ " │ └─TableFullScan 10000.00 cop[tikv] table:tt1 keep order:true, stats:pseudo", " └─StreamAgg(Probe) 10000.00 root funcs:min(Column#14)->Column#9, funcs:sum(Column#15)->Column#10, funcs:count(1)->Column#11", " └─Projection 11.05 root test.tt2.c_decimal, cast(isnull(test.tt2.c_decimal), decimal(20,0) BINARY)->Column#15", - " └─IndexMerge 11.05 root ", + " └─IndexMerge 11.05 root type: union", " ├─Selection(Build) 10.00 cop[tikv] eq(test.tt1.c_int, test.tt2.c_int)", " │ └─IndexRangeScan 10000.00 cop[tikv] table:tt2, index:c_decimal(c_decimal) range:[9.060000,9.060000], keep order:false, stats:pseudo", " ├─Selection(Build) 33233.33 cop[tikv] eq(test.tt1.c_int, test.tt2.c_int)", @@ -2390,7 +2390,7 @@ " │ └─TableFullScan 10000.00 cop[tikv] table:tt1 keep order:true, stats:pseudo", " └─StreamAgg(Probe) 10000.00 root funcs:max(Column#14)->Column#9, funcs:sum(Column#15)->Column#10, funcs:count(1)->Column#11", " └─Projection 17.91 root test.tt2.c_decimal, cast(isnull(test.tt2.c_decimal), decimal(20,0) BINARY)->Column#15", - " └─IndexMerge 17.91 root ", + " └─IndexMerge 17.91 root type: union", " ├─Selection(Build) 10000.00 cop[tikv] lt(7, test.tt1.c_decimal)", " │ └─TableRangeScan 10000.00 cop[tikv] table:tt2 range:[7,7], keep order:false, stats:pseudo", " ├─Selection(Build) 33333.33 cop[tikv] eq(test.tt1.c_int, test.tt2.c_int)", @@ -2413,9 +2413,9 @@ { "SQL": "explain format = 'brief' select count(*) from t31240;", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#5)->Column#4", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:count(1)->Column#5", + "StreamAgg 1.00 root funcs:count(Column#6)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(test.t31240._tidb_rowid)->Column#6", " └─TableFullScan 10000.00 batchCop[tiflash] table:t31240 keep order:false, stats:pseudo" ] }, @@ -2426,9 +2426,9 @@ { "SQL": "explain format = 'brief' select count(*) from t31240;", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#5)->Column#4", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:count(1)->Column#5", + "StreamAgg 1.00 root funcs:count(Column#6)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(test.t31240._tidb_rowid)->Column#6", " └─TableFullScan 10000.00 batchCop[tiflash] table:t31240 keep order:false, stats:pseudo" ] } @@ -2485,19 +2485,19 @@ { "SQL": "explain format = 'verbose' select count(*) from t3", "Plan": [ - "HashAgg_12 1.00 77.75 root funcs:count(Column#6)->Column#4", - "└─IndexReader_13 1.00 47.49 root index:HashAgg_5", - " └─HashAgg_5 1.00 680.68 cop[tikv] funcs:count(1)->Column#6", - " └─IndexFullScan_11 3.00 610.50 cop[tikv] table:t3, index:c(b) keep order:false" + "StreamAgg_20 1.00 102.69 root funcs:count(Column#9)->Column#4", + "└─IndexReader_21 1.00 52.79 root index:StreamAgg_8", + " └─StreamAgg_8 1.00 760.20 cop[tikv] funcs:count(1)->Column#9", + " └─IndexFullScan_19 3.00 610.50 cop[tikv] table:t3, index:c(b) keep order:false" ] }, { "SQL": "explain format = 'verbose' select count(*) from t2", "Plan": [ - "HashAgg_14 1.00 82.51 root funcs:count(Column#5)->Column#4", - "└─TableReader_15 1.00 52.25 root data:HashAgg_6", - " └─HashAgg_6 1.00 752.10 cop[tikv] funcs:count(1)->Column#5", - " └─TableFullScan_12 3.00 681.92 cop[tikv] table:t2 keep order:false" + "StreamAgg_26 1.00 107.45 root funcs:count(Column#7)->Column#4", + "└─TableReader_27 1.00 57.55 root data:StreamAgg_10", + " └─StreamAgg_10 1.00 831.62 cop[tikv] funcs:count(1)->Column#7", + " └─TableFullScan_24 3.00 681.92 cop[tikv] table:t2 keep order:false" ] }, { @@ -2537,7 +2537,7 @@ { "SQL": "explain format = 'verbose' select count(*) from t2 group by a", "Plan": [ - "HashAgg_8 3.00 209.09 root group by:test.t2.a, funcs:count(1)->Column#4", + "HashAgg_8 3.00 1706.09 root group by:test.t2.a, funcs:count(1)->Column#4", "└─TableReader_17 3.00 58.13 root data:TableFullScan_16", " └─TableFullScan_16 3.00 681.92 cop[tikv] table:t2 keep order:false" ] @@ -2545,37 +2545,34 @@ { "SQL": "explain format = 'verbose' select count(*) from t3 where b = 0", "Plan": [ - "HashAgg_12 1.00 45.24 root funcs:count(Column#5)->Column#4", - "└─IndexReader_13 1.00 14.98 root index:HashAgg_6", - " └─HashAgg_6 1.00 193.06 cop[tikv] funcs:count(1)->Column#5", - " └─IndexRangeScan_11 0.00 162.80 cop[tikv] table:t3, index:c(b) range:[0,0], keep order:false" + "StreamAgg_10 1.00 64.98 root funcs:count(1)->Column#4", + "└─IndexReader_15 0.00 15.08 root index:IndexRangeScan_14", + " └─IndexRangeScan_14 0.00 162.80 cop[tikv] table:t3, index:c(b) range:[0,0], keep order:false" ] }, { "SQL": "explain format = 'verbose' select /*+ use_index(t3, c) */ count(a) from t3 where b = 0", "Plan": [ - "HashAgg_13 1.00 1981.96 root funcs:count(Column#6)->Column#4", - "└─IndexLookUp_14 1.00 1951.70 root ", - " ├─IndexRangeScan_11(Build) 0.00 203.50 cop[tikv] table:t3, index:c(b) range:[0,0], keep order:false", - " └─HashAgg_7(Probe) 1.00 257.57 cop[tikv] funcs:count(test.t3.a)->Column#6", - " └─TableRowIDScan_12 0.00 227.31 cop[tikv] table:t3 keep order:false" + "StreamAgg_10 1.00 2001.63 root funcs:count(test.t3.a)->Column#4", + "└─IndexLookUp_17 0.00 1951.73 root ", + " ├─IndexRangeScan_15(Build) 0.00 203.50 cop[tikv] table:t3, index:c(b) range:[0,0], keep order:false", + " └─TableRowIDScan_16(Probe) 0.00 227.31 cop[tikv] table:t3 keep order:false" ] }, { "SQL": "explain format = 'verbose' select count(*) from t2 where a = 0", "Plan": [ - "HashAgg_17 1.00 89.83 root funcs:count(Column#5)->Column#4", - "└─TableReader_18 1.00 59.57 root data:HashAgg_7", - " └─HashAgg_7 1.00 861.88 cop[tikv] funcs:count(1)->Column#5", - " └─Selection_14 0.00 831.62 cop[tikv] eq(test.t2.a, 0)", - " └─TableFullScan_13 3.00 681.92 cop[tikv] table:t2 keep order:false" + "StreamAgg_12 1.00 109.57 root funcs:count(1)->Column#4", + "└─TableReader_21 0.00 59.67 root data:Selection_20", + " └─Selection_20 0.00 831.62 cop[tikv] eq(test.t2.a, 0)", + " └─TableFullScan_19 3.00 681.92 cop[tikv] table:t2 keep order:false" ] }, { "SQL": "explain format = 'verbose' select count(*) from t3 t join t3 on t.a = t3.b", "Plan": [ - "HashAgg_9 1.00 552.41 root funcs:count(1)->Column#7", - "└─HashJoin_22 3.00 482.23 root inner join, equal:[eq(test.t3.a, test.t3.b)]", + "StreamAgg_10 1.00 2128.93 root funcs:count(1)->Column#7", + "└─HashJoin_40 3.00 1979.23 root inner join, equal:[eq(test.t3.a, test.t3.b)]", " ├─IndexReader_28(Build) 3.00 45.23 root index:IndexFullScan_27", " │ └─IndexFullScan_27 3.00 488.40 cop[tikv] table:t3, index:c(b) keep order:false", " └─TableReader_26(Probe) 3.00 68.11 root data:Selection_25", @@ -2586,24 +2583,23 @@ { "SQL": "explain format = 'verbose' select /*+ read_from_storage(tiflash[t1, t2]) */ count(*) from t1 join t2 on t1.a = t2.a", "Plan": [ - "HashAgg_34 1.00 61928.14 root funcs:count(Column#8)->Column#7", - "└─TableReader_36 1.00 61897.88 root data:ExchangeSender_35", - " └─ExchangeSender_35 1.00 928450.64 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg_13 1.00 928450.64 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin_33 3.00 928447.20 mpp[tiflash] inner join, equal:[eq(test.t1.a, test.t2.a)]", - " ├─ExchangeReceiver_22(Build) 3.00 464290.40 mpp[tiflash] ", - " │ └─ExchangeSender_21 3.00 464146.40 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection_20 3.00 464146.40 mpp[tiflash] not(isnull(test.t1.a))", - " │ └─TableFullScan_19 3.00 464139.20 mpp[tiflash] table:t1 keep order:false", - " └─Selection_24(Probe) 3.00 464146.40 mpp[tiflash] not(isnull(test.t2.a))", - " └─TableFullScan_23 3.00 464139.20 mpp[tiflash] table:t2 keep order:false" + "StreamAgg_15 1.00 62053.22 root funcs:count(1)->Column#7", + "└─TableReader_41 3.00 61903.52 root data:ExchangeSender_40", + " └─ExchangeSender_40 3.00 928447.20 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin_37 3.00 928447.20 mpp[tiflash] inner join, equal:[eq(test.t1.a, test.t2.a)]", + " ├─ExchangeReceiver_22(Build) 3.00 464290.40 mpp[tiflash] ", + " │ └─ExchangeSender_21 3.00 464146.40 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection_20 3.00 464146.40 mpp[tiflash] not(isnull(test.t1.a))", + " │ └─TableFullScan_19 3.00 464139.20 mpp[tiflash] table:t1 keep order:false", + " └─Selection_24(Probe) 3.00 464146.40 mpp[tiflash] not(isnull(test.t2.a))", + " └─TableFullScan_23 3.00 464139.20 mpp[tiflash] table:t2 keep order:false" ] }, { "SQL": "explain format = 'verbose' select /*+ read_from_storage(tiflash[t1, t2]) */ count(*) from t1 join t2 on t1.a = t2.a join t3 on t1.b = t3.b", "Plan": [ - "HashAgg_14 1.00 70137.12 root funcs:count(1)->Column#10", - "└─HashJoin_27 3.00 70066.94 root inner join, equal:[eq(test.t1.b, test.t3.b)]", + "StreamAgg_15 1.00 71713.64 root funcs:count(1)->Column#10", + "└─HashJoin_59 3.00 71563.94 root inner join, equal:[eq(test.t1.b, test.t3.b)]", " ├─IndexReader_47(Build) 3.00 45.23 root index:IndexFullScan_46", " │ └─IndexFullScan_46 3.00 488.40 cop[tikv] table:t3, index:c(b) keep order:false", " └─TableReader_39(Probe) 3.00 69652.83 root data:ExchangeSender_38", @@ -2620,13 +2616,12 @@ { "SQL": "explain format = 'verbose' select (2) in (select /*+ read_from_storage(tiflash[t1]) */ count(*) from t1) from (select t.b < (select /*+ read_from_storage(tiflash[t2]) */ t.b from t2 limit 1 ) from t3 t) t", "Plan": [ - "HashJoin_19 3.00 160743.93 root CARTESIAN left outer semi join", - "├─Selection_38(Build) 0.80 31024.18 root eq(2, Column#18)", - "│ └─HashAgg_52 1.00 30974.28 root funcs:count(Column#31)->Column#18", - "│ └─TableReader_54 1.00 30944.02 root data:ExchangeSender_53", - "│ └─ExchangeSender_53 1.00 464142.64 mpp[tiflash] ExchangeType: PassThrough", - "│ └─HashAgg_43 1.00 464142.64 mpp[tiflash] funcs:count(1)->Column#31", - "│ └─TableFullScan_51 3.00 464139.20 mpp[tiflash] table:t1 keep order:false", + "HashJoin_19 3.00 162261.76 root CARTESIAN left outer semi join", + "├─Selection_38(Build) 0.80 31045.01 root eq(2, Column#18)", + "│ └─StreamAgg_56 1.00 30995.11 root funcs:count(Column#32)->Column#18", + "│ └─TableReader_57 1.00 30945.21 root data:StreamAgg_44", + "│ └─StreamAgg_44 1.00 464146.40 batchCop[tiflash] funcs:count(test.t1._tidb_rowid)->Column#32", + "│ └─TableFullScan_55 3.00 464139.20 batchCop[tiflash] table:t1 keep order:false", "└─Projection_20(Probe) 3.00 129648.62 root 1->Column#28", " └─Apply_22 3.00 129648.32 root CARTESIAN left outer join", " ├─IndexReader_26(Build) 3.00 53.37 root index:IndexFullScan_25", @@ -2642,8 +2637,8 @@ { "SQL": "explain format = 'verbose' select /*+ merge_join(t1), read_from_storage(tiflash[t1, t2]) */ count(*) from t1 join t2 on t1.a = t2.a", "Plan": [ - "HashAgg_11 1.00 62478.44 root funcs:count(1)->Column#7", - "└─MergeJoin_16 3.00 62408.26 root inner join, left key:test.t1.a, right key:test.t2.a", + "StreamAgg_14 1.00 62557.96 root funcs:count(1)->Column#7", + "└─MergeJoin_26 3.00 62408.26 root inner join, left key:test.t1.a, right key:test.t2.a", " ├─Sort_24(Build) 3.00 31202.63 root test.t2.a", " │ └─TableReader_23 3.00 30955.77 root data:Selection_22", " │ └─Selection_22 3.00 464146.40 cop[tiflash] not(isnull(test.t2.a))", @@ -2903,7 +2898,7 @@ { "SQL": "explain format = 'brief' select max(a) from t", "Plan": [ - "HashAgg 1.00 root funcs:max(test.t.a)->Column#3", + "StreamAgg 1.00 root funcs:max(test.t.a)->Column#3", "└─TopN 1.00 root test.t.a:desc, offset:0, count:1", " └─TableReader 1.00 root data:TopN", " └─TopN 1.00 batchCop[tiflash] test.t.a:desc, offset:0, count:1", @@ -2913,7 +2908,7 @@ { "SQL": "explain format = 'brief' select min(a) from t", "Plan": [ - "HashAgg 1.00 root funcs:min(test.t.a)->Column#3", + "StreamAgg 1.00 root funcs:min(test.t.a)->Column#3", "└─Limit 1.00 root offset:0, count:1", " └─TableReader 1.00 root data:Limit", " └─Limit 1.00 cop[tiflash] offset:0, count:1", @@ -2928,7 +2923,7 @@ { "SQL": "explain format = 'brief' select max(a) from t", "Plan": [ - "HashAgg 1.00 root funcs:max(test.t.a)->Column#3", + "StreamAgg 1.00 root funcs:max(test.t.a)->Column#3", "└─TopN 1.00 root test.t.a:desc, offset:0, count:1", " └─TableReader 1.00 root data:TopN", " └─TopN 1.00 batchCop[tiflash] test.t.a:desc, offset:0, count:1", @@ -2938,7 +2933,7 @@ { "SQL": "explain format = 'brief' select min(a) from t", "Plan": [ - "HashAgg 1.00 root funcs:min(test.t.a)->Column#3", + "StreamAgg 1.00 root funcs:min(test.t.a)->Column#3", "└─TopN 1.00 root test.t.a, offset:0, count:1", " └─TableReader 1.00 root data:TopN", " └─TopN 1.00 batchCop[tiflash] test.t.a, offset:0, count:1", @@ -2953,322 +2948,301 @@ { "SQL": "explain format = 'brief' select count(*) from fact_t, d1_t where fact_t.d1_k = d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t, d1_t, d2_t, d3_t where fact_t.d1_k = d1_t.d1_k and fact_t.d2_k = d2_t.d2_k and fact_t.d3_k = d3_t.d3_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#18)->Column#17", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#18", - " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.fact_t.d3_k, test.d3_t.d3_k)]", + "StreamAgg 1.00 root funcs:count(1)->Column#17", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.fact_t.d3_k, test.d3_t.d3_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d3_t.d3_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d3_t keep order:false", + " └─HashJoin(Probe) 8.00 mpp[tiflash] inner join, equal:[eq(test.fact_t.d2_k, test.d2_t.d2_k)]", " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d3_t.d3_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d3_t keep order:false", - " └─HashJoin(Probe) 8.00 mpp[tiflash] inner join, equal:[eq(test.fact_t.d2_k, test.d2_t.d2_k)]", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d2_t.d2_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d2_t keep order:false", + " └─HashJoin(Probe) 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)]", " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d2_t.d2_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d2_t keep order:false", - " └─HashJoin(Probe) 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k)), not(isnull(test.fact_t.d2_k)), not(isnull(test.fact_t.d3_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k)), not(isnull(test.fact_t.d2_k)), not(isnull(test.fact_t.d3_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t, d1_t where fact_t.d1_k = d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t left join d1_t on fact_t.d1_k = d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] left outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] left outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t right join d1_t on fact_t.d1_k = d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] right outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", - " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", - " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] right outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", + " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", + " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t join d1_t on fact_t.d1_k = d1_t.d1_k and fact_t.col1 > d1_t.value", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)], other cond:gt(test.fact_t.col1, test.d1_t.value)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.d1_t.d1_k, test.fact_t.d1_k)], other cond:gt(test.fact_t.col1, test.d1_t.value)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t left join d1_t on fact_t.d1_k = d1_t.d1_k and fact_t.col1 > 10", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] left outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], left cond:[gt(test.fact_t.col1, 10)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] left outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], left cond:[gt(test.fact_t.col1, 10)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t left join d1_t on fact_t.d1_k = d1_t.d1_k and fact_t.col2 > 10 and fact_t.col1 > d1_t.value", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] left outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], left cond:[gt(test.fact_t.col2, 10)], other cond:gt(test.fact_t.col1, test.d1_t.value)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] left outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], left cond:[gt(test.fact_t.col2, 10)], other cond:gt(test.fact_t.col1, test.d1_t.value)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t right join d1_t on fact_t.d1_k = d1_t.d1_k and d1_t.value > 10", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] right outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], right cond:gt(test.d1_t.value, 10)", - " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", - " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", - " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] right outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], right cond:gt(test.d1_t.value, 10)", + " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", + " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", + " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t right join d1_t on fact_t.d1_k = d1_t.d1_k and d1_t.value > 10 and fact_t.col1 > d1_t.value", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 8.00 mpp[tiflash] right outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], right cond:gt(test.d1_t.value, 10), other cond:gt(test.fact_t.col1, test.d1_t.value)", - " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", - " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", - " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", - " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] right outer join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], right cond:gt(test.d1_t.value, 10), other cond:gt(test.fact_t.col1, test.d1_t.value)", + " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", + " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", + " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", + " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where exists (select 1 from d1_t where d1_k = fact_t.d1_k)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 6.40 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 6.40 root data:ExchangeSender", + " └─ExchangeSender 6.40 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 6.40 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where exists (select 1 from d1_t where d1_k = fact_t.d1_k and value > fact_t.col1)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 6.40 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 6.40 root data:ExchangeSender", + " └─ExchangeSender 6.40 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 6.40 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where exists (select /*+ SEMI_JOIN_REWRITE() */ 1 from d1_t where d1_k = fact_t.d1_k)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#17)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#17", - " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Projection 2.00 mpp[tiflash] test.d1_t.d1_k", - " │ └─HashAgg 2.00 mpp[tiflash] group by:test.d1_t.d1_k, funcs:firstrow(test.d1_t.d1_k)->test.d1_t.d1_k", - " │ └─ExchangeReceiver 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", - " │ └─HashAgg 2.00 mpp[tiflash] group by:test.d1_t.d1_k, ", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 8.00 root data:ExchangeSender", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 8.00 mpp[tiflash] inner join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Projection 2.00 mpp[tiflash] test.d1_t.d1_k", + " │ └─HashAgg 2.00 mpp[tiflash] group by:test.d1_t.d1_k, funcs:firstrow(test.d1_t.d1_k)->test.d1_t.d1_k", + " │ └─ExchangeReceiver 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where exists (select /*+ SEMI_JOIN_REWRITE() */ 1 from d1_t where d1_k = fact_t.d1_k and value > fact_t.col1)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 6.40 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 6.40 root data:ExchangeSender", + " └─ExchangeSender 6.40 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 6.40 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where not exists (select 1 from d1_t where d1_k = fact_t.d1_k)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 6.40 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 6.40 root data:ExchangeSender", + " └─ExchangeSender 6.40 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 6.40 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where not exists (select 1 from d1_t where d1_k = fact_t.d1_k and value > fact_t.col1)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 6.40 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 6.40 root data:ExchangeSender", + " └─ExchangeSender 6.40 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 6.40 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t join d1_t on fact_t.d1_k > d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 16.00 mpp[tiflash] CARTESIAN inner join, other cond:gt(test.fact_t.d1_k, test.d1_t.d1_k)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 16.00 root data:ExchangeSender", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 16.00 mpp[tiflash] CARTESIAN inner join, other cond:gt(test.fact_t.d1_k, test.d1_t.d1_k)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─Selection(Probe) 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t left join d1_t on fact_t.d1_k > d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 16.00 mpp[tiflash] CARTESIAN left outer join, other cond:gt(test.fact_t.d1_k, test.d1_t.d1_k)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 16.00 root data:ExchangeSender", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 16.00 mpp[tiflash] CARTESIAN left outer join, other cond:gt(test.fact_t.d1_k, test.d1_t.d1_k)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 2.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t right join d1_t on fact_t.d1_k > d1_t.d1_k", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 16.00 mpp[tiflash] CARTESIAN right outer join, other cond:gt(test.fact_t.d1_k, test.d1_t.d1_k)", - " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", - " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", - " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 16.00 root data:ExchangeSender", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 16.00 mpp[tiflash] CARTESIAN right outer join, other cond:gt(test.fact_t.d1_k, test.d1_t.d1_k)", + " ├─ExchangeReceiver(Build) 8.00 mpp[tiflash] ", + " │ └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 8.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " │ └─TableFullScan 8.00 mpp[tiflash] table:fact_t keep order:false", + " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:d1_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where d1_k not in (select d1_k from d1_t)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#12)->Column#11", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", - " └─HashJoin 6.40 mpp[tiflash] CARTESIAN anti semi join, other cond:eq(test.fact_t.d1_k, test.d1_t.d1_k)", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", - " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#11", + "└─TableReader 6.40 root data:ExchangeSender", + " └─ExchangeSender 6.40 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 6.40 mpp[tiflash] CARTESIAN anti semi join, other cond:eq(test.fact_t.d1_k, test.d1_t.d1_k)", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─TableFullScan 2.00 mpp[tiflash] table:d1_t keep order:false", + " └─TableFullScan(Probe) 8.00 mpp[tiflash] table:fact_t keep order:false" ] } ] @@ -3517,31 +3491,29 @@ { "SQL": "explain format = 'brief' select count(*) from a left join b on a.id = b.id", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#8)->Column#7", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin 2.00 mpp[tiflash] left outer join, equal:[eq(test.a.id, test.b.id)]", - " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", - " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", - " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", - " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:a keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#7", + "└─TableReader 2.00 root data:ExchangeSender", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 2.00 mpp[tiflash] left outer join, equal:[eq(test.a.id, test.b.id)]", + " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", + " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", + " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", + " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:a keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from b right join a on a.id = b.id", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#8)->Column#7", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin 2.00 mpp[tiflash] right outer join, equal:[eq(test.b.id, test.a.id)]", - " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", - " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: Broadcast", - " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", - " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", - " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:a keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#7", + "└─TableReader 2.00 root data:ExchangeSender", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 2.00 mpp[tiflash] right outer join, equal:[eq(test.b.id, test.a.id)]", + " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", + " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", + " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", + " └─TableFullScan(Probe) 2.00 mpp[tiflash] table:a keep order:false" ] } ] @@ -3552,35 +3524,33 @@ { "SQL": "explain format = 'brief' select count(*) from a left join b on a.id = b.id", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#8)->Column#7", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin 2.00 mpp[tiflash] left outer join, equal:[eq(test.a.id, test.b.id)]", - " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", - " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", - " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", - " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", - " └─ExchangeReceiver(Probe) 2.00 mpp[tiflash] ", - " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", - " └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#7", + "└─TableReader 2.00 root data:ExchangeSender", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 2.00 mpp[tiflash] left outer join, equal:[eq(test.a.id, test.b.id)]", + " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", + " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", + " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", + " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", + " └─ExchangeReceiver(Probe) 2.00 mpp[tiflash] ", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", + " └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from b right join a on a.id = b.id", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#8)->Column#7", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin 2.00 mpp[tiflash] right outer join, equal:[eq(test.b.id, test.a.id)]", - " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", - " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", - " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", - " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", - " └─ExchangeReceiver(Probe) 2.00 mpp[tiflash] ", - " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", - " └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#7", + "└─TableReader 2.00 root data:ExchangeSender", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 2.00 mpp[tiflash] right outer join, equal:[eq(test.b.id, test.a.id)]", + " ├─ExchangeReceiver(Build) 3.00 mpp[tiflash] ", + " │ └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", + " │ └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", + " │ └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false", + " └─ExchangeReceiver(Probe) 2.00 mpp[tiflash] ", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", + " └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false" ] } ] @@ -3591,35 +3561,33 @@ { "SQL": "explain format = 'brief' select count(*) from a left join b on a.id = b.id", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#8)->Column#7", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin 2.00 mpp[tiflash] left outer join, equal:[eq(test.a.id, test.b.id)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", - " │ └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false", - " └─ExchangeReceiver(Probe) 3.00 mpp[tiflash] ", - " └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", - " └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", - " └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#7", + "└─TableReader 2.00 root data:ExchangeSender", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 2.00 mpp[tiflash] left outer join, equal:[eq(test.a.id, test.b.id)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", + " │ └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false", + " └─ExchangeReceiver(Probe) 3.00 mpp[tiflash] ", + " └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", + " └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", + " └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from b right join a on a.id = b.id", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#8)->Column#7", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", - " └─HashJoin 2.00 mpp[tiflash] right outer join, equal:[eq(test.b.id, test.a.id)]", - " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", - " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", - " │ └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false", - " └─ExchangeReceiver(Probe) 3.00 mpp[tiflash] ", - " └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", - " └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", - " └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#7", + "└─TableReader 2.00 root data:ExchangeSender", + " └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 2.00 mpp[tiflash] right outer join, equal:[eq(test.b.id, test.a.id)]", + " ├─ExchangeReceiver(Build) 2.00 mpp[tiflash] ", + " │ └─ExchangeSender 2.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.a.id, collate: binary]", + " │ └─TableFullScan 2.00 mpp[tiflash] table:a keep order:false", + " └─ExchangeReceiver(Probe) 3.00 mpp[tiflash] ", + " └─ExchangeSender 3.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.b.id, collate: binary]", + " └─Selection 3.00 mpp[tiflash] not(isnull(test.b.id))", + " └─TableFullScan 3.00 mpp[tiflash] table:b keep order:false" ] } ] @@ -3871,69 +3839,65 @@ { "SQL": "explain format = 'brief' select count(*) from fact_t where exists (select 1 from d1_t where d1_k = fact_t.d1_k)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 12.80 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", - " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", - " │ └─Selection 4.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", - " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", - " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", - " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", - " └─Selection 16.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 12.80 root data:ExchangeSender", + " └─ExchangeSender 12.80 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 12.80 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", + " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", + " │ └─Selection 4.00 mpp[tiflash] not(isnull(test.d1_t.d1_k))", + " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", + " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", + " └─Selection 16.00 mpp[tiflash] not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where exists (select 1 from d1_t where d1_k = fact_t.d1_k and value > fact_t.col1)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 12.80 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", - " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", - " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", - " │ └─Selection 4.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", - " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", - " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", - " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", - " └─Selection 16.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", - " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 12.80 root data:ExchangeSender", + " └─ExchangeSender 12.80 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 12.80 mpp[tiflash] semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", + " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", + " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", + " │ └─Selection 4.00 mpp[tiflash] not(isnull(test.d1_t.d1_k)), not(isnull(test.d1_t.value))", + " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", + " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", + " └─Selection 16.00 mpp[tiflash] not(isnull(test.fact_t.col1)), not(isnull(test.fact_t.d1_k))", + " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where not exists (select 1 from d1_t where d1_k = fact_t.d1_k)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 12.80 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", - " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", - " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", - " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", - " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", - " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", - " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 12.80 root data:ExchangeSender", + " └─ExchangeSender 12.80 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 12.80 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)]", + " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", + " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", + " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", + " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", + " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" ] }, { "SQL": "explain format = 'brief' select count(*) from fact_t where not exists (select 1 from d1_t where d1_k = fact_t.d1_k and value > fact_t.col1)", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#13)->Column#12", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#13", - " └─HashJoin 12.80 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", - " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", - " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", - " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", - " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", - " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", - " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" + "StreamAgg 1.00 root funcs:count(1)->Column#12", + "└─TableReader 12.80 root data:ExchangeSender", + " └─ExchangeSender 12.80 mpp[tiflash] ExchangeType: PassThrough", + " └─HashJoin 12.80 mpp[tiflash] anti semi join, equal:[eq(test.fact_t.d1_k, test.d1_t.d1_k)], other cond:gt(test.d1_t.value, test.fact_t.col1)", + " ├─ExchangeReceiver(Build) 4.00 mpp[tiflash] ", + " │ └─ExchangeSender 4.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.d1_t.d1_k, collate: binary]", + " │ └─TableFullScan 4.00 mpp[tiflash] table:d1_t keep order:false", + " └─ExchangeReceiver(Probe) 16.00 mpp[tiflash] ", + " └─ExchangeSender 16.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.fact_t.d1_k, collate: binary]", + " └─TableFullScan 16.00 mpp[tiflash] table:fact_t keep order:false" ] } ] @@ -3992,18 +3956,17 @@ "TableReader 1.00 root data:ExchangeSender", "└─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", " └─Projection 1.00 mpp[tiflash] Column#9, test.t2.v1, test.t2.v2", - " └─HashAgg 1.00 mpp[tiflash] group by:test.t2.v1, test.t2.v2, funcs:sum(Column#16)->Column#9, funcs:firstrow(test.t2.v1)->test.t2.v1, funcs:firstrow(test.t2.v2)->test.t2.v2", + " └─HashAgg 1.00 mpp[tiflash] group by:test.t2.v1, test.t2.v2, funcs:count(1)->Column#9, funcs:firstrow(test.t2.v1)->test.t2.v1, funcs:firstrow(test.t2.v2)->test.t2.v2", " └─ExchangeReceiver 1.00 mpp[tiflash] ", " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.t2.v1, collate: binary], [name: test.t2.v2, collate: binary]", - " └─HashAgg 1.00 mpp[tiflash] group by:test.t2.v1, test.t2.v2, funcs:count(1)->Column#16", - " └─HashJoin 1.00 mpp[tiflash] left outer join, equal:[eq(test.t3.v1, test.t2.v1) eq(test.t3.v2, test.t2.v2)]", - " ├─ExchangeReceiver(Build) 1.00 mpp[tiflash] ", - " │ └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.t3.v1, collate: binary], [name: test.t3.v2, collate: binary]", - " │ └─TableFullScan 1.00 mpp[tiflash] table:t3 keep order:false", - " └─ExchangeReceiver(Probe) 8.00 mpp[tiflash] ", - " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.t2.v1, collate: binary], [name: test.t2.v2, collate: binary]", - " └─Selection 8.00 mpp[tiflash] not(isnull(test.t2.v1)), not(isnull(test.t2.v2))", - " └─TableFullScan 8.00 mpp[tiflash] table:t2 keep order:false" + " └─HashJoin 1.00 mpp[tiflash] left outer join, equal:[eq(test.t3.v1, test.t2.v1) eq(test.t3.v2, test.t2.v2)]", + " ├─ExchangeReceiver(Build) 1.00 mpp[tiflash] ", + " │ └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.t3.v1, collate: binary], [name: test.t3.v2, collate: binary]", + " │ └─TableFullScan 1.00 mpp[tiflash] table:t3 keep order:false", + " └─ExchangeReceiver(Probe) 8.00 mpp[tiflash] ", + " └─ExchangeSender 8.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.t2.v1, collate: binary], [name: test.t2.v2, collate: binary]", + " └─Selection 8.00 mpp[tiflash] not(isnull(test.t2.v1)), not(isnull(test.t2.v2))", + " └─TableFullScan 8.00 mpp[tiflash] table:t2 keep order:false" ] } ] @@ -4236,9 +4199,9 @@ { "SQL": "desc format = 'brief' select /*+ read_from_storage(tiflash[t]) */ sum(a) from t", "Plan": [ - "HashAgg 1.00 root funcs:sum(Column#5)->Column#4", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:sum(Column#7)->Column#5", + "StreamAgg 1.00 root funcs:sum(Column#6)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:sum(Column#7)->Column#6", " └─Projection 10000.00 batchCop[tiflash] cast(test.t.a, decimal(10,0) BINARY)->Column#7", " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ], @@ -4247,9 +4210,9 @@ { "SQL": "desc format = 'brief' select /*+ read_from_storage(tiflash[t]) */ sum(a+1) from t", "Plan": [ - "HashAgg 1.00 root funcs:sum(Column#5)->Column#4", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:sum(Column#7)->Column#5", + "StreamAgg 1.00 root funcs:sum(Column#6)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:sum(Column#7)->Column#6", " └─Projection 10000.00 batchCop[tiflash] cast(plus(test.t.a, 1), decimal(20,0) BINARY)->Column#7", " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ], @@ -4258,9 +4221,9 @@ { "SQL": "desc format = 'brief' select /*+ read_from_storage(tiflash[t]) */ sum(isnull(a)) from t", "Plan": [ - "HashAgg 1.00 root funcs:sum(Column#5)->Column#4", - "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:sum(Column#7)->Column#5", + "StreamAgg 1.00 root funcs:sum(Column#6)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:sum(Column#7)->Column#6", " └─Projection 10000.00 batchCop[tiflash] cast(isnull(test.t.a), decimal(20,0) BINARY)->Column#7", " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ], @@ -4603,28 +4566,30 @@ "Warn": null }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_1 .@sel_2), merge_join(t1@qb_v1_2) */ * from v2;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_2 .@sel_2), merge_join(t1@qb_v1_2) */ * from v2;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#24)]", "├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#24", "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#23)]", "│ ├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#23", - "│ │ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#22)]", - "│ │ ├─HashAgg(Build) 7992.00 root group by:test.t2.a, funcs:count(1)->Column#22", - "│ │ │ └─HashJoin 12487.50 root inner join, equal:[eq(test.t1.b, test.t2.b)]", - "│ │ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ │ └─TableReader(Probe) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t2.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", - "│ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ │ └─MergeJoin 12475.01 root inner join, left key:test.t1.b, right key:test.t.b", + "│ │ ├─Sort(Build) 9980.01 root test.t.b", + "│ │ │ └─HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#22)]", + "│ │ │ ├─HashAgg(Build) 7992.00 root group by:test.t2.a, funcs:count(1)->Column#22", + "│ │ │ │ └─HashJoin 12487.50 root inner join, equal:[eq(test.t1.b, test.t2.b)]", + "│ │ │ │ ├─TableReader(Build) 9990.00 root data:Selection", + "│ │ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + "│ │ │ │ └─TableReader(Probe) 9990.00 root data:Selection", + "│ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t2.b))", + "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ │ └─TableReader(Probe) 9980.01 root data:Selection", + "│ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ │ └─Sort(Probe) 9990.00 root test.t1.b", + "│ │ └─TableReader 9990.00 root data:Selection", + "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", @@ -4639,35 +4604,40 @@ "Warn": null }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_1 .@sel_2), merge_join(t1@qb_v1_2), stream_agg(@qb_v1_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_1 .@sel_1), merge_join(t@qb_v1_1) */ * from v2;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_2 .@sel_2), merge_join(t1@qb_v1_2), stream_agg(@qb_v1_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_2 .@sel_1), merge_join(t@qb_v1_1) */ * from v2;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#24)]", "├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#24", - "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#23)]", - "│ ├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#23", - "│ │ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#22)]", - "│ │ ├─HashAgg(Build) 7992.00 root group by:test.t2.a, funcs:count(1)->Column#22", - "│ │ │ └─HashJoin 12487.50 root inner join, equal:[eq(test.t1.b, test.t2.b)]", - "│ │ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ │ └─TableReader(Probe) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t2.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", - "│ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", - "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", - "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ └─TableReader(Probe) 9980.01 root data:Selection", - "│ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", - "│ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t1.b, test.t.b)]", + "│ ├─MergeJoin(Build) 9980.01 root inner join, left key:test.t.a, right key:Column#23", + "│ │ ├─Sort(Build) 7984.01 root Column#23", + "│ │ │ └─StreamAgg 7984.01 root group by:test.t.a, funcs:count(1)->Column#23", + "│ │ │ └─Sort 12475.01 root test.t.a", + "│ │ │ └─MergeJoin 12475.01 root inner join, left key:test.t1.b, right key:test.t.b", + "│ │ │ ├─Sort(Build) 9980.01 root test.t.b", + "│ │ │ │ └─HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#22)]", + "│ │ │ │ ├─HashAgg(Build) 7992.00 root group by:test.t2.a, funcs:count(1)->Column#22", + "│ │ │ │ │ └─HashJoin 12487.50 root inner join, equal:[eq(test.t1.b, test.t2.b)]", + "│ │ │ │ │ ├─TableReader(Build) 9990.00 root data:Selection", + "│ │ │ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ │ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + "│ │ │ │ │ └─TableReader(Probe) 9990.00 root data:Selection", + "│ │ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t2.b))", + "│ │ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ │ │ └─TableReader(Probe) 9980.01 root data:Selection", + "│ │ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", + "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ │ │ └─Sort(Probe) 9990.00 root test.t1.b", + "│ │ │ └─TableReader 9990.00 root data:Selection", + "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + "│ │ └─Sort(Probe) 9980.01 root test.t.a", + "│ │ └─TableReader 9980.01 root data:Selection", + "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ └─TableReader(Probe) 9990.00 root data:Selection", + "│ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" @@ -4892,7 +4862,9 @@ " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], - "Warn": null + "Warn": [ + "The qb_name hint qb_v1_2 is unused, please check whether the table list in the qb_name hint qb_v1_2 is correct" + ] }, { "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v@sel_1 .@sel_2), merge_join(t1@qb_v1_2) */ * from v2;", @@ -4932,7 +4904,9 @@ " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], - "Warn": null + "Warn": [ + "The qb_name hint qb_v1_2 is unused, please check whether the table list in the qb_name hint qb_v1_2 is correct" + ] }, { "SQL": "explain format = 'brief' select /*+ qb_name(qb_v2_2, vv@sel_1 .@sel_2), merge_join(t1@qb_v2_2) */ * from v2 vv;", @@ -5014,7 +4988,9 @@ " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], - "Warn": null + "Warn": [ + "The qb_name hint qb_v2_2 is unused, please check whether the table list in the qb_name hint qb_v2_2 is correct" + ] }, { "SQL": "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2), merge_join(t1@qb_v_2) */ * from v) t;", @@ -5037,36 +5013,34 @@ " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], "Warn": [ - "The qb_name hint for view only supports to be defined in the first query block", - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name" + "The qb_name hint qb_v_2 is unused, please check whether the table list in the qb_name hint qb_v_2 is correct" ] }, { - "SQL": "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v@sel_1 .@sel1), merge_join(t@qb_v_1) */ * from v) t;", + "SQL": "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v.@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v@sel_1 .@sel1), merge_join(t@qb_v_1) */ * from v) t;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#13)]", - "├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#13", - "│ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", - "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", + "├─StreamAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#13", + "│ └─Sort 15593.77 root test.t2.a", + "│ └─HashJoin 15593.77 root inner join, equal:[eq(test.t3.a, test.t2.a)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ └─TableReader(Probe) 9980.01 root data:Selection", - "│ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", + "│ └─MergeJoin(Probe) 12475.01 root inner join, left key:test.t1.b, right key:test.t2.b", + "│ ├─Sort(Build) 9980.01 root test.t2.b", + "│ │ └─TableReader 9980.01 root data:Selection", + "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ └─Sort(Probe) 9990.00 root test.t1.b", + "│ └─TableReader 9990.00 root data:Selection", + "│ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], "Warn": [ - "The qb_name hint for view only supports to be defined in the first query block", - "The qb_name hint for view only supports to be defined in the first query block", - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name", - "Hint stream_agg(@`qb_v_2`) is ignored due to unknown query block name", - "Hint merge_join(`t`@`qb_v_1`) is ignored due to unknown query block name" + "The qb_name hint qb_v_1 is unused, please check whether the table list in the qb_name hint qb_v_1 is correct" ] }, { @@ -5099,28 +5073,30 @@ " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], "Warn": [ - "The qb_name hint for view only supports to be defined in the first query block", - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name" + "The qb_name hint qb_v_2 is unused, please check whether the table list in the qb_name hint qb_v_2 is correct" ] }, { - "SQL": "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v1@sel_1 . v@sel_2 .@sel_1), merge_join(t@qb_v_1) */ * from v1) t;", + "SQL": "explain format = 'brief' select * from (select /*+ qb_name(qb_v_2, v1.v@sel_2 .@sel_2), merge_join(t1@qb_v_2), stream_agg(@qb_v_2), qb_name(qb_v_1, v1@sel_1 . v@sel_2 .@sel_1), merge_join(t@qb_v_1) */ * from v1) t;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#20)]", "├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#20", "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#19)]", - "│ ├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#19", - "│ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", + "│ ├─StreamAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#19", + "│ │ └─Sort 15593.77 root test.t2.a", + "│ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t3.a, test.t2.a)]", "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", + "│ │ └─MergeJoin(Probe) 12475.01 root inner join, left key:test.t1.b, right key:test.t2.b", + "│ │ ├─Sort(Build) 9980.01 root test.t2.b", + "│ │ │ └─TableReader 9980.01 root data:Selection", + "│ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ └─Sort(Probe) 9990.00 root test.t1.b", + "│ │ └─TableReader 9990.00 root data:Selection", + "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", @@ -5133,81 +5109,80 @@ " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], "Warn": [ - "The qb_name hint for view only supports to be defined in the first query block", - "The qb_name hint for view only supports to be defined in the first query block", - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name", - "Hint stream_agg(@`qb_v_2`) is ignored due to unknown query block name", - "Hint merge_join(`t`@`qb_v_1`) is ignored due to unknown query block name" + "The qb_name hint qb_v_1 is unused, please check whether the table list in the qb_name hint qb_v_1 is correct" ] }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v) t;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_2 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v) t;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#13)]", "├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#13", - "│ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", + "│ └─HashJoin 15593.77 root inner join, equal:[eq(test.t3.a, test.t2.a)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", "│ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", - "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ └─TableReader(Probe) 9980.01 root data:Selection", - "│ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ └─MergeJoin(Probe) 12475.01 root inner join, left key:test.t1.b, right key:test.t2.b", + "│ ├─Sort(Build) 9980.01 root test.t2.b", + "│ │ └─TableReader 9980.01 root data:Selection", + "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ └─Sort(Probe) 9990.00 root test.t1.b", + "│ └─TableReader 9990.00 root data:Selection", + "│ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], - "Warn": [ - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name" - ] + "Warn": null }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_1 .@sel_2), qb_name(qb_v_1, v@sel_1 .@sel1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v) t;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v@sel_2 .@sel_2), qb_name(qb_v_1, v@sel_2 .@sel1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v) t;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#13)]", - "├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#13", - "│ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", - "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", + "├─StreamAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#13", + "│ └─Sort 15593.77 root test.t2.a", + "│ └─HashJoin 15593.77 root inner join, equal:[eq(test.t3.a, test.t2.a)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ └─TableReader(Probe) 9980.01 root data:Selection", - "│ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", + "│ └─MergeJoin(Probe) 12475.01 root inner join, left key:test.t1.b, right key:test.t2.b", + "│ ├─Sort(Build) 9980.01 root test.t2.b", + "│ │ └─TableReader 9980.01 root data:Selection", + "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ └─Sort(Probe) 9990.00 root test.t1.b", + "│ └─TableReader 9990.00 root data:Selection", + "│ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], "Warn": [ - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name", - "Hint stream_agg(@`qb_v_2`) is ignored due to unknown query block name", - "Hint merge_join(`t`@`qb_v_1`) is ignored due to unknown query block name" + "The qb_name hint qb_v_1 is unused, please check whether the table list in the qb_name hint qb_v_1 is correct" ] }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v1) t;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_2 . v@sel_2 .@sel_2) */ * from (select /*+ merge_join(t1@qb_v_2) */ * from v1) t;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#20)]", "├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#20", "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#19)]", "│ ├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#19", - "│ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", + "│ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t3.a, test.t2.a)]", "│ │ ├─TableReader(Build) 9990.00 root data:Selection", "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ └─MergeJoin(Probe) 12475.01 root inner join, left key:test.t1.b, right key:test.t2.b", + "│ │ ├─Sort(Build) 9980.01 root test.t2.b", + "│ │ │ └─TableReader 9980.01 root data:Selection", + "│ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ └─Sort(Probe) 9990.00 root test.t1.b", + "│ │ └─TableReader 9990.00 root data:Selection", + "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", @@ -5219,72 +5194,73 @@ " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], - "Warn": [ - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name" - ] + "Warn": null }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_1 . v@sel_2 .@sel_2), qb_name(qb_v_1, v1@sel_1 . v@sel_2 .@sel_1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v1) t;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v_2, v1@sel_2 . v@sel_2 .@sel_2), qb_name(qb_v_1, v1@sel_2 . v@sel_2 .@sel_1) */ * from (select /*+ merge_join(t1@qb_v_2), stream_agg(@qb_v_2), merge_join(t@qb_v_1) */ * from v1) t;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#20)]", "├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#20", - "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#19)]", - "│ ├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#19", - "│ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", - "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", - "│ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ └─TableReader(Probe) 9980.01 root data:Selection", - "│ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", - "│ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t1.b, test.t.b)]", + "│ ├─MergeJoin(Build) 9980.01 root inner join, left key:test.t.a, right key:Column#19", + "│ │ ├─Sort(Build) 7984.01 root Column#19", + "│ │ │ └─StreamAgg 7984.01 root group by:test.t2.a, funcs:count(1)->Column#19", + "│ │ │ └─Sort 15593.77 root test.t2.a", + "│ │ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t3.a, test.t2.a)]", + "│ │ │ ├─TableReader(Build) 9990.00 root data:Selection", + "│ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", + "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", + "│ │ │ └─MergeJoin(Probe) 12475.01 root inner join, left key:test.t1.b, right key:test.t2.b", + "│ │ │ ├─Sort(Build) 9980.01 root test.t2.b", + "│ │ │ │ └─TableReader 9980.01 root data:Selection", + "│ │ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ │ └─Sort(Probe) 9990.00 root test.t1.b", + "│ │ │ └─TableReader 9990.00 root data:Selection", + "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + "│ │ └─Sort(Probe) 9980.01 root test.t.a", + "│ │ └─TableReader 9980.01 root data:Selection", + "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ └─TableReader(Probe) 9990.00 root data:Selection", + "│ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tikv] not(isnull(test.t.a))", " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" ], - "Warn": [ - "Hint merge_join(`t1`@`qb_v_2`) is ignored due to unknown query block name", - "Hint stream_agg(@`qb_v_2`) is ignored due to unknown query block name", - "Hint merge_join(`t`@`qb_v_1`) is ignored due to unknown query block name" - ] + "Warn": null }, { - "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2@sel_1 . v1@sel_1 .@sel_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_1 .@sel_1), merge_join(t1@qb_v1_2, t@qb_v1_1) */ * from v2;", + "SQL": "explain format = 'brief' select /*+ qb_name(qb_v1_2, v2. v1@sel_2 .@sel_2), qb_name(qb_v1_1, v2@sel_1 . v1@sel_2 .@sel_1), merge_join(t1@qb_v1_2, t@qb_v1_1), merge_join(t1@qb_v1_2) */ * from v2;", "Plan": [ "HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#27)]", "├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#27", "│ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#26)]", "│ ├─HashAgg(Build) 7984.01 root group by:test.t.a, funcs:count(1)->Column#26", - "│ │ └─HashJoin 12475.01 root inner join, equal:[eq(test.t.a, Column#25)]", - "│ │ ├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#25", - "│ │ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", - "│ │ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", - "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", - "│ │ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", - "│ │ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", - "│ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", - "│ │ ├─TableReader(Build) 9990.00 root data:Selection", - "│ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", - "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - "│ │ └─TableReader(Probe) 9980.01 root data:Selection", - "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", - "│ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ │ └─MergeJoin 12475.01 root inner join, left key:test.t1.b, right key:test.t.b", + "│ │ ├─Sort(Build) 9980.01 root test.t.b", + "│ │ │ └─HashJoin 9980.01 root inner join, equal:[eq(test.t.a, Column#25)]", + "│ │ │ ├─HashAgg(Build) 7984.01 root group by:test.t2.a, funcs:count(1)->Column#25", + "│ │ │ │ └─HashJoin 15593.77 root inner join, equal:[eq(test.t2.a, test.t3.a)]", + "│ │ │ │ ├─TableReader(Build) 9990.00 root data:Selection", + "│ │ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t3.a))", + "│ │ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t3 keep order:false, stats:pseudo", + "│ │ │ │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t2.b, test.t1.b)]", + "│ │ │ │ ├─TableReader(Build) 9990.00 root data:Selection", + "│ │ │ │ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + "│ │ │ │ └─TableReader(Probe) 9980.01 root data:Selection", + "│ │ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t2.a)), not(isnull(test.t2.b))", + "│ │ │ │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + "│ │ │ └─TableReader(Probe) 9980.01 root data:Selection", + "│ │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t.a)), not(isnull(test.t.b))", + "│ │ │ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "│ │ └─Sort(Probe) 9990.00 root test.t1.b", + "│ │ └─TableReader 9990.00 root data:Selection", + "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", + "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", "│ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t.b, test.t1.b)]", "│ ├─TableReader(Build) 9990.00 root data:Selection", "│ │ └─Selection 9990.00 cop[tikv] not(isnull(test.t1.b))", @@ -5640,6 +5616,51 @@ "[planner:1815]Join hints are conflict, you can only specify one type of join", "[planner:1815]Optimizer aggregation hints are conflicted" ] + }, + { + "SQL": "explain with d1 as (\n select a from (\n select a from (\n select /*+ qb_name(qb, v4) use_index(t4@qb, idx_a) */ a from v4 where a < 10\n ) as t0 where a < 9\n ) as t1 where a < 8\n), d2 as (select /*+ qb_name(qb2, v4) use_index(t4@qb2, idx_b) */ a from v4 where b < 10)\n\nselect * from (select * from d1) as t0 join (select * from d2) as t1;", + "Plan": [ + "HashJoin_41 6944.44 root CARTESIAN inner join", + "├─IndexLookUp_50(Build) 83.33 root ", + "│ ├─IndexRangeScan_47(Build) 250.00 cop[tikv] table:t4, index:idx_b(b) range:(3,10), keep order:false, stats:pseudo", + "│ └─Selection_49(Probe) 83.33 cop[tikv] gt(test.t4.a, 2)", + "│ └─TableRowIDScan_48 250.00 cop[tikv] table:t4 keep order:false, stats:pseudo", + "└─IndexLookUp_46(Probe) 83.33 root ", + " ├─IndexRangeScan_43(Build) 250.00 cop[tikv] table:t4, index:idx_a(a) range:(2,8), keep order:false, stats:pseudo", + " └─Selection_45(Probe) 83.33 cop[tikv] gt(test.t4.b, 3)", + " └─TableRowIDScan_44 250.00 cop[tikv] table:t4 keep order:false, stats:pseudo" + ], + "Warn": null + }, + { + "SQL": "explain with d1 as (\n select a from (\n select a from (\n select a from v4 where a < 10\n ) as t0 where a < 9\n ) as t1 where a < 8\n), d2 as (select a from v4 where b < 10)\n\nselect /*+ qb_name(qb, v4@sel_4) use_index(t4@qb, idx_a) qb_name(qb2, v4@sel_5) use_index(t4@qb, idx_b) */ * from (select * from d1) as t0 join (select * from d2) as t1;", + "Plan": [ + "HashJoin_41 6944.44 root CARTESIAN inner join", + "├─TableReader_53(Build) 83.33 root data:Selection_52", + "│ └─Selection_52 83.33 cop[tikv] gt(test.t4.a, 2), gt(test.t4.b, 3), lt(test.t4.b, 10)", + "│ └─TableFullScan_51 10000.00 cop[tikv] table:t4 keep order:false, stats:pseudo", + "└─IndexLookUp_46(Probe) 83.33 root ", + " ├─IndexRangeScan_43(Build) 250.00 cop[tikv] table:t4, index:idx_a(a) range:(2,8), keep order:false, stats:pseudo", + " └─Selection_45(Probe) 83.33 cop[tikv] gt(test.t4.b, 3)", + " └─TableRowIDScan_44 250.00 cop[tikv] table:t4 keep order:false, stats:pseudo" + ], + "Warn": null + }, + { + "SQL": "explain with d1 as (\n select a from (\n select a from (\n select /*+ qb_name(qb, v5) use_index(t4@qb, idx_a) */ a from v4 where a < 10\n ) as t0 where a < 9\n ) as t1 where a < 8\n), d2 as (select /*+ qb_name(qb2, v4) use_index(t4@qb2, idx_b) */ a from v4 where b < 10)\n\nselect * from (select * from d1) as t0 join (select * from d2) as t1;", + "Plan": [ + "HashJoin_41 6944.44 root CARTESIAN inner join", + "├─IndexLookUp_57(Build) 83.33 root ", + "│ ├─IndexRangeScan_54(Build) 250.00 cop[tikv] table:t4, index:idx_b(b) range:(3,10), keep order:false, stats:pseudo", + "│ └─Selection_56(Probe) 83.33 cop[tikv] gt(test.t4.a, 2)", + "│ └─TableRowIDScan_55 250.00 cop[tikv] table:t4 keep order:false, stats:pseudo", + "└─TableReader_45(Probe) 83.33 root data:Selection_44", + " └─Selection_44 83.33 cop[tikv] gt(test.t4.a, 2), gt(test.t4.b, 3), lt(test.t4.a, 10), lt(test.t4.a, 8), lt(test.t4.a, 9)", + " └─TableFullScan_43 10000.00 cop[tikv] table:t4 keep order:false, stats:pseudo" + ], + "Warn": [ + "The qb_name hint qb is unused, please check whether the table list in the qb_name hint qb is correct" + ] } ] }, @@ -6045,7 +6066,7 @@ { "SQL": "explain format = 'brief' select /*+ qb_name(qb_v4, v4), use_index_merge(t5@qb_v4, idx_a, idx_b) */ * from v4;", "Plan": [ - "IndexMerge 5548.89 root ", + "IndexMerge 5548.89 root type: union", "├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t5, index:idx_a(a) range:(1,+inf], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t5, index:idx_b(b) range:[-inf,2), keep order:false, stats:pseudo", "└─TableRowIDScan(Probe) 5548.89 cop[tikv] table:t5 keep order:false, stats:pseudo" @@ -6055,7 +6076,7 @@ { "SQL": "explain format = 'brief' select /*+ qb_name(qb_v4, v4), use_index_merge(@qb_v4 t5, idx_b, idx_a) */ * from v4;", "Plan": [ - "IndexMerge 5548.89 root ", + "IndexMerge 5548.89 root type: union", "├─IndexRangeScan(Build) 3333.33 cop[tikv] table:t5, index:idx_a(a) range:(1,+inf], keep order:false, stats:pseudo", "├─IndexRangeScan(Build) 3323.33 cop[tikv] table:t5, index:idx_b(b) range:[-inf,2), keep order:false, stats:pseudo", "└─TableRowIDScan(Probe) 5548.89 cop[tikv] table:t5 keep order:false, stats:pseudo" @@ -6096,9 +6117,9 @@ " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", " └─MaxOneRow(Probe) 10000.00 root ", - " └─HashAgg 10000.00 root funcs:sum(Column#8)->Column#7", - " └─TableReader 10000.00 root data:HashAgg", - " └─HashAgg 10000.00 cop[tikv] funcs:sum(test.t2.a)->Column#8", + " └─StreamAgg 10000.00 root funcs:sum(Column#9)->Column#7", + " └─TableReader 10000.00 root data:StreamAgg", + " └─StreamAgg 10000.00 cop[tikv] funcs:sum(test.t2.a)->Column#9", " └─Selection 100000.00 cop[tikv] eq(test.t2.b, test.t1.b)", " └─TableFullScan 100000000.00 cop[tikv] table:t2 keep order:false, stats:pseudo" ], @@ -6151,12 +6172,11 @@ { "SQL": "explain format = 'brief' select /*+ qb_name(qb_v9, v9), AGG_TO_COP(@qb_v9) */ * from v9;", "Plan": [ - "HashAgg 1.00 root funcs:sum(Column#6)->Column#4", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:sum(Column#9)->Column#6", - " └─Projection 10000.00 mpp[tiflash] cast(test.t.a, decimal(10,0) BINARY)->Column#9", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:sum(Column#7)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:sum(Column#9)->Column#7", + " └─Projection 10000.00 batchCop[tiflash] cast(test.t.a, decimal(10,0) BINARY)->Column#9", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ], "Warn": null }, @@ -6692,7 +6712,7 @@ "HashAgg 1.00 root funcs:count(Column#16)->Column#14", "└─TableReader 1.00 root data:ExchangeSender", " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#16", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t._tidb_rowid)->Column#16", " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" ] }, @@ -6710,33 +6730,30 @@ { "SQL": "desc format = 'brief' select /*+ stream_agg()*/ count(b) from (select id + 1 as b from t)A", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#18)->Column#14", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(Column#19)->Column#18", - " └─Projection 10000.00 mpp[tiflash] plus(test.t.id, 1)->Column#19", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:count(Column#16)->Column#14", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(Column#19)->Column#16", + " └─Projection 10000.00 batchCop[tiflash] plus(test.t.id, 1)->Column#19", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { "SQL": "desc format = 'brief' select /*+ stream_agg()*/ count(*) from (select id + 1 as b from t)A", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#17)->Column#14", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#17", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:count(Column#15)->Column#14", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(test.t._tidb_rowid)->Column#15", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { "SQL": "desc format = 'brief' select /*+ stream_agg()*/ sum(b) from (select id + 1 as b from t)A", "Plan": [ - "HashAgg 1.00 root funcs:sum(Column#18)->Column#14", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:sum(Column#19)->Column#18", - " └─Projection 10000.00 mpp[tiflash] cast(plus(test.t.id, 1), decimal(20,0) BINARY)->Column#19", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:sum(Column#16)->Column#14", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:sum(Column#19)->Column#16", + " └─Projection 10000.00 batchCop[tiflash] cast(plus(test.t.id, 1), decimal(20,0) BINARY)->Column#19", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { @@ -6867,7 +6884,7 @@ "Plan": [ "HashAgg 1.00 root funcs:count(Column#7)->Column#6", "└─TableReader 1.00 root data:HashAgg", - " └─HashAgg 1.00 batchCop[tiflash] funcs:count(1)->Column#7", + " └─HashAgg 1.00 batchCop[tiflash] funcs:count(test.t._tidb_rowid)->Column#7", " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, @@ -6896,7 +6913,7 @@ "Plan": [ "StreamAgg 1.00 root funcs:count(Column#7)->Column#6", "└─TableReader 1.00 root data:StreamAgg", - " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(1)->Column#7", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(test.t._tidb_rowid)->Column#7", " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, @@ -7028,7 +7045,7 @@ "HashAgg 1.00 root funcs:count(Column#8)->Column#6", "└─TableReader 1.00 root data:ExchangeSender", " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#8", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t._tidb_rowid)->Column#8", " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" ] }, @@ -7046,33 +7063,30 @@ { "SQL": "desc format = 'brief' select /*+ stream_agg()*/ count(b) from (select id + 1 as b from t)A", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#10)->Column#6", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(Column#11)->Column#10", - " └─Projection 10000.00 mpp[tiflash] plus(test.t.id, 1)->Column#11", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:count(Column#8)->Column#6", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(Column#11)->Column#8", + " └─Projection 10000.00 batchCop[tiflash] plus(test.t.id, 1)->Column#11", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { "SQL": "desc format = 'brief' select /*+ stream_agg()*/ count(*) from (select id + 1 as b from t)A", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#9)->Column#6", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#9", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:count(Column#7)->Column#6", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(test.t._tidb_rowid)->Column#7", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { "SQL": "desc format = 'brief' select /*+ stream_agg()*/ sum(b) from (select id + 1 as b from t)A", "Plan": [ - "HashAgg 1.00 root funcs:sum(Column#10)->Column#6", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:sum(Column#11)->Column#10", - " └─Projection 10000.00 mpp[tiflash] cast(plus(test.t.id, 1), decimal(20,0) BINARY)->Column#11", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:sum(Column#8)->Column#6", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:sum(Column#11)->Column#8", + " └─Projection 10000.00 batchCop[tiflash] cast(plus(test.t.id, 1), decimal(20,0) BINARY)->Column#11", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { @@ -7295,7 +7309,7 @@ { "SQL": "explain format = 'brief' select count(*) from (select a , b from t where false union all select a , c from t1 where false) tt", "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#11", + "StreamAgg 1.00 root funcs:count(1)->Column#11", "└─Union 0.00 root ", " ├─Projection 0.00 root test.t.a, cast(test.t.b, double BINARY)->Column#10", " │ └─TableDual 0.00 root rows:0", @@ -7527,7 +7541,7 @@ "HashAgg 1.00 root funcs:count(Column#7)->Column#5", "└─TableReader 1.00 root data:ExchangeSender", " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#7", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t._tidb_rowid)->Column#7", " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" ] }, @@ -7545,11 +7559,10 @@ { "SQL": "desc format = 'brief' select count(*) from t", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#6)->Column#4", - "└─TableReader 1.00 root data:ExchangeSender", - " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#6", - " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + "StreamAgg 1.00 root funcs:count(Column#7)->Column#4", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 batchCop[tiflash] funcs:count(test.t._tidb_rowid)->Column#7", + " └─TableFullScan 10000.00 batchCop[tiflash] table:t keep order:false, stats:pseudo" ] }, { @@ -7606,7 +7619,7 @@ "├─HashAgg(Build) 1.00 root funcs:count(Column#11)->Column#7", "│ └─TableReader 1.00 root data:ExchangeSender", "│ └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - "│ └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#11", + "│ └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t._tidb_rowid)->Column#11", "│ └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tiflash] not(isnull(test.t.id))", @@ -7953,7 +7966,7 @@ "├─HashAgg(Build) 1.00 root funcs:count(Column#10)->Column#7", "│ └─TableReader 1.00 root data:ExchangeSender", "│ └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", - "│ └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#10", + "│ └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t._tidb_rowid)->Column#10", "│ └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo", "└─TableReader(Probe) 9990.00 root data:Selection", " └─Selection 9990.00 cop[tiflash] not(isnull(test.t.id))", @@ -8076,7 +8089,7 @@ { "SQL": "desc format = 'brief' select count(*) from (select t.id, t.value v1 from t join t t1 on t.id = t1.id order by t.value limit 20) v group by v.v1", "Plan": [ - "HashAgg 20.00 root group by:test.t.value, funcs:count(1)->Column#7", + "StreamAgg 20.00 root group by:test.t.value, funcs:count(1)->Column#7", "└─TopN 20.00 root test.t.value, offset:0, count:20", " └─TableReader 20.00 root data:ExchangeSender", " └─ExchangeSender 20.00 mpp[tiflash] ExchangeType: PassThrough", @@ -8147,7 +8160,7 @@ { "SQL": "desc format='brief' select /*+ use_index_merge(t) */ * from t where a =1 or (b=1 and b+2>1)", "Plan": [ - "IndexMerge 8.00 root ", + "IndexMerge 8.00 root type: union", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false", "├─Selection(Build) 1.00 cop[tikv] 1", "│ └─IndexRangeScan 1.00 cop[tikv] table:t, index:b(b) range:[1,1], keep order:false", @@ -8158,7 +8171,7 @@ { "SQL": "desc format='brief' select /*+ use_index_merge(t) */ * from t where a =1 or (b=1 and length(b)=1)", "Plan": [ - "IndexMerge 8.00 root ", + "IndexMerge 8.00 root type: union", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false", "├─Selection(Build) 1.00 cop[tikv] 1", "│ └─IndexRangeScan 1.00 cop[tikv] table:t, index:b(b) range:[1,1], keep order:false", @@ -8169,7 +8182,7 @@ { "SQL": "desc format='brief' select /*+ use_index_merge(t) */ * from t where (a=1 and length(a)=1) or (b=1 and length(b)=1)", "Plan": [ - "IndexMerge 8.00 root ", + "IndexMerge 8.00 root type: union", "├─Selection(Build) 1.00 cop[tikv] 1", "│ └─IndexRangeScan 1.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false", "├─Selection(Build) 1.00 cop[tikv] 1", @@ -8181,7 +8194,7 @@ { "SQL": "desc format='brief' select /*+ use_index_merge(t) */ * from t where (a=1 and length(b)=1) or (b=1 and length(a)=1)", "Plan": [ - "IndexMerge 0.29 root ", + "IndexMerge 0.29 root type: union", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:a(a) range:[1,1], keep order:false", "├─IndexRangeScan(Build) 1.00 cop[tikv] table:t, index:b(b) range:[1,1], keep order:false", "└─Selection(Probe) 0.29 cop[tikv] or(and(eq(test.t.a, 1), eq(length(cast(test.t.b, var_string(20))), 1)), and(eq(test.t.b, 1), eq(length(cast(test.t.a, var_string(20))), 1)))", @@ -9527,9 +9540,9 @@ { "SQL": "select count(1) from t1 where c1 = '0xfff' and c2 is not null", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#6)->Column#5", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#6", + "StreamAgg 1.00 root funcs:count(Column#7)->Column#5", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#7", " └─IndexRangeScan 99.90 cop[tikv] table:t1, index:idx2(c1, c2) range:[\"0xfff\" -inf,\"0xfff\" +inf], keep order:false, stats:pseudo" ], "Result": [ @@ -9563,9 +9576,9 @@ { "SQL": "select count(1) from t1 where c1 >= '0xfff' and c2 is null", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#6)->Column#5", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#6", + "StreamAgg 1.00 root funcs:count(Column#7)->Column#5", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#7", " └─Selection 3.33 cop[tikv] isnull(test.t1.c2)", " └─IndexRangeScan 3333.33 cop[tikv] table:t1, index:idx2(c1, c2) range:[\"0xfff\",+inf], keep order:false, stats:pseudo" ], @@ -9576,12 +9589,11 @@ { "SQL": "select count(1) from t1 where c1 = '0xfff' and (c2 + 1) is not null", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#9)->Column#5", - "└─IndexLookUp 1.00 root ", + "StreamAgg 1.00 root funcs:count(1)->Column#5", + "└─IndexLookUp 8.00 root ", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:idx1(c1) range:[\"0xfff\",\"0xfff\"], keep order:false, stats:pseudo", - " └─HashAgg(Probe) 1.00 cop[tikv] funcs:count(1)->Column#9", - " └─Selection 8.00 cop[tikv] not(isnull(plus(cast(test.t1.c2, double BINARY), 1)))", - " └─TableRowIDScan 10.00 cop[tikv] table:t1 keep order:false, stats:pseudo" + " └─Selection(Probe) 8.00 cop[tikv] not(isnull(plus(cast(test.t1.c2, double BINARY), 1)))", + " └─TableRowIDScan 10.00 cop[tikv] table:t1 keep order:false, stats:pseudo" ], "Result": [ "3" @@ -9590,12 +9602,11 @@ { "SQL": "select count(1) from t1 where c1 = '0xfff' and (c2 + 1) is null", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#9)->Column#5", - "└─IndexLookUp 1.00 root ", + "StreamAgg 1.00 root funcs:count(1)->Column#5", + "└─IndexLookUp 8.00 root ", " ├─IndexRangeScan(Build) 10.00 cop[tikv] table:t1, index:idx1(c1) range:[\"0xfff\",\"0xfff\"], keep order:false, stats:pseudo", - " └─HashAgg(Probe) 1.00 cop[tikv] funcs:count(1)->Column#9", - " └─Selection 8.00 cop[tikv] isnull(plus(cast(test.t1.c2, double BINARY), 1))", - " └─TableRowIDScan 10.00 cop[tikv] table:t1 keep order:false, stats:pseudo" + " └─Selection(Probe) 8.00 cop[tikv] isnull(plus(cast(test.t1.c2, double BINARY), 1))", + " └─TableRowIDScan 10.00 cop[tikv] table:t1 keep order:false, stats:pseudo" ], "Result": [ "1" @@ -9670,9 +9681,9 @@ { "SQL": "select count(1) from t2 use index(idx) where b is null", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#5)->Column#4", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#5", + "StreamAgg 1.00 root funcs:count(Column#6)->Column#4", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#6", " └─IndexRangeScan 10.00 cop[tikv] table:t2, index:idx(b) range:[NULL,NULL], keep order:false, stats:pseudo" ], "Result": [ diff --git a/planner/core/testdata/join_reorder_suite_out.json b/planner/core/testdata/join_reorder_suite_out.json index 7289fbd043d00..e2a6c562726d4 100644 --- a/planner/core/testdata/join_reorder_suite_out.json +++ b/planner/core/testdata/join_reorder_suite_out.json @@ -6296,8 +6296,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -6429,7 +6429,7 @@ "SQL": "select /*+ straight_join() */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -6915,8 +6915,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -6935,8 +6935,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -6957,8 +6957,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -6979,8 +6979,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -7002,8 +7002,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -7024,8 +7024,8 @@ "Plan": [ "Projection 1.00 root test.t1.a, Column#14", "└─Apply 1.00 root CARTESIAN left outer join", - " ├─HashAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", - " │ └─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + " ├─StreamAgg(Build) 1.00 root funcs:min(test.t1.a)->Column#10, funcs:firstrow(test.t1.a)->test.t1.a", + " │ └─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " │ ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " │ └─IndexReader(Probe) 3.75 root index:Selection", @@ -7046,14 +7046,13 @@ "SQL": "select /*+ leading(t4, t3@sel_2) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a = (select max(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "HashJoin 4.69 root inner join, equal:[eq(test.t1.b, test.t4.b)]", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "│ ├─IndexJoin(Build) 3.00 root inner join, inner:IndexLookUp, outer key:Column#13, inner key:test.t1.a, equal cond:eq(Column#13, test.t1.a), eq(test.t3.b, test.t1.b)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "│ ├─IndexHashJoin(Build) 3.00 root inner join, inner:IndexLookUp, outer key:Column#13, inner key:test.t1.a, equal cond:eq(Column#13, test.t1.a), eq(test.t3.b, test.t1.b)", "│ │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(Column#20)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - "│ │ │ └─TableReader 3.00 root data:HashAgg", - "│ │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:max(test.t3.a)->Column#20", - "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + "│ │ │ └─TableReader 3.00 root data:Selection", + "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", "│ │ └─IndexLookUp(Probe) 3.00 root ", "│ │ ├─Selection(Build) 3.00 cop[tikv] not(isnull(test.t1.a))", "│ │ │ └─IndexRangeScan 3.01 cop[tikv] table:t1, index:a(a) range: decided by [eq(test.t1.a, Column#13)], keep order:false, stats:pseudo", @@ -7076,14 +7075,13 @@ "SQL": "select /*+ leading(t4) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a = (select max(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "Projection 4.69 root test.t1.a, test.t1.b, test.t2.a, test.t2.b, test.t4.a, test.t4.b", - "└─IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "└─IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", " ├─HashJoin(Build) 3.75 root inner join, equal:[eq(test.t1.b, test.t3.b) eq(test.t1.a, Column#13)]", " │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - " │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(Column#18)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - " │ │ └─TableReader 3.00 root data:HashAgg", - " │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:max(test.t3.a)->Column#18", - " │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - " │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + " │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + " │ │ └─TableReader 3.00 root data:Selection", + " │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + " │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", " │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t4.b, test.t1.b)]", " │ ├─TableReader(Build) 9980.01 root data:Selection", " │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t1.a)), not(isnull(test.t1.b))", @@ -7102,14 +7100,13 @@ "SQL": "select /*+ leading(t3@sel_2) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a = (select max(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "HashJoin 4.69 root inner join, equal:[eq(test.t1.b, test.t4.b)]", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "│ ├─IndexJoin(Build) 3.00 root inner join, inner:IndexLookUp, outer key:Column#13, inner key:test.t1.a, equal cond:eq(Column#13, test.t1.a), eq(test.t3.b, test.t1.b)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "│ ├─IndexHashJoin(Build) 3.00 root inner join, inner:IndexLookUp, outer key:Column#13, inner key:test.t1.a, equal cond:eq(Column#13, test.t1.a), eq(test.t3.b, test.t1.b)", "│ │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(Column#20)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - "│ │ │ └─TableReader 3.00 root data:HashAgg", - "│ │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:max(test.t3.a)->Column#20", - "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + "│ │ │ └─TableReader 3.00 root data:Selection", + "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", "│ │ └─IndexLookUp(Probe) 3.00 root ", "│ │ ├─Selection(Build) 3.00 cop[tikv] not(isnull(test.t1.a))", "│ │ │ └─IndexRangeScan 3.01 cop[tikv] table:t1, index:a(a) range: decided by [eq(test.t1.a, Column#13)], keep order:false, stats:pseudo", @@ -7131,14 +7128,13 @@ "SQL": "select /*+ leading(t3@sel_2, t2) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a = (select max(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "HashJoin 4.69 root inner join, equal:[eq(test.t1.b, test.t4.b)]", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "│ ├─IndexJoin(Build) 3.00 root inner join, inner:IndexLookUp, outer key:Column#13, inner key:test.t1.a, equal cond:eq(Column#13, test.t1.a), eq(test.t3.b, test.t1.b)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "│ ├─IndexHashJoin(Build) 3.00 root inner join, inner:IndexLookUp, outer key:Column#13, inner key:test.t1.a, equal cond:eq(Column#13, test.t1.a), eq(test.t3.b, test.t1.b)", "│ │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(Column#20)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - "│ │ │ └─TableReader 3.00 root data:HashAgg", - "│ │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:max(test.t3.a)->Column#20", - "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:max(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + "│ │ │ └─TableReader 3.00 root data:Selection", + "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", "│ │ └─IndexLookUp(Probe) 3.00 root ", "│ │ ├─Selection(Build) 3.00 cop[tikv] not(isnull(test.t1.a))", "│ │ │ └─IndexRangeScan 3.01 cop[tikv] table:t1, index:a(a) range: decided by [eq(test.t1.a, Column#13)], keep order:false, stats:pseudo", @@ -7161,14 +7157,13 @@ "SQL": "select /*+ leading(t4, t3@sel_2) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a > (select min(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "HashJoin 4.69 root inner join, equal:[eq(test.t1.b, test.t4.b)]", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", "│ ├─HashJoin(Build) 3.00 root inner join, equal:[eq(test.t3.b, test.t1.b)], other cond:gt(test.t1.a, Column#13)", "│ │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(Column#17)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - "│ │ │ └─TableReader 3.00 root data:HashAgg", - "│ │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:min(test.t3.a)->Column#17", - "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + "│ │ │ └─TableReader 3.00 root data:Selection", + "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", "│ │ └─TableReader(Probe) 9980.01 root data:Selection", "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t1.a)), not(isnull(test.t1.b))", "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", @@ -7189,14 +7184,13 @@ "SQL": "select /*+ leading(t4) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a > (select min(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "Projection 4.69 root test.t1.a, test.t1.b, test.t2.a, test.t2.b, test.t4.a, test.t4.b", - "└─IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "└─IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", " ├─HashJoin(Build) 3.75 root inner join, equal:[eq(test.t1.b, test.t3.b)], other cond:gt(test.t1.a, Column#13)", " │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - " │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(Column#18)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - " │ │ └─TableReader 3.00 root data:HashAgg", - " │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:min(test.t3.a)->Column#18", - " │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - " │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + " │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + " │ │ └─TableReader 3.00 root data:Selection", + " │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + " │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", " │ └─HashJoin(Probe) 12475.01 root inner join, equal:[eq(test.t4.b, test.t1.b)]", " │ ├─TableReader(Build) 9980.01 root data:Selection", " │ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t1.a)), not(isnull(test.t1.b))", @@ -7215,14 +7209,13 @@ "SQL": "select /*+ leading(t3@sel_2) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a > (select min(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "HashJoin 4.69 root inner join, equal:[eq(test.t1.b, test.t4.b)]", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", "│ ├─HashJoin(Build) 3.00 root inner join, equal:[eq(test.t3.b, test.t1.b)], other cond:gt(test.t1.a, Column#13)", "│ │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(Column#17)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - "│ │ │ └─TableReader 3.00 root data:HashAgg", - "│ │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:min(test.t3.a)->Column#17", - "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + "│ │ │ └─TableReader 3.00 root data:Selection", + "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", "│ │ └─TableReader(Probe) 9980.01 root data:Selection", "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t1.a)), not(isnull(test.t1.b))", "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", @@ -7242,14 +7235,13 @@ "SQL": "select /*+ leading(t3@sel_2, t2) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a > (select min(t3.a) from t3 where t1.b = t3.b)", "Plan": [ "HashJoin 4.69 root inner join, equal:[eq(test.t1.b, test.t4.b)]", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", "│ ├─HashJoin(Build) 3.00 root inner join, equal:[eq(test.t3.b, test.t1.b)], other cond:gt(test.t1.a, Column#13)", "│ │ ├─Selection(Build) 2.40 root not(isnull(Column#13))", - "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(Column#17)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", - "│ │ │ └─TableReader 3.00 root data:HashAgg", - "│ │ │ └─HashAgg 3.00 cop[tikv] group by:test.t3.b, funcs:min(test.t3.a)->Column#17", - "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", - "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", + "│ │ │ └─HashAgg 3.00 root group by:test.t3.b, funcs:min(test.t3.a)->Column#13, funcs:firstrow(test.t3.b)->test.t3.b", + "│ │ │ └─TableReader 3.00 root data:Selection", + "│ │ │ └─Selection 3.00 cop[tikv] not(isnull(test.t3.b))", + "│ │ │ └─TableFullScan 3.00 cop[tikv] table:t3 keep order:false", "│ │ └─TableReader(Probe) 9980.01 root data:Selection", "│ │ └─Selection 9980.01 cop[tikv] not(isnull(test.t1.a)), not(isnull(test.t1.b))", "│ │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", @@ -7270,7 +7262,7 @@ "SQL": "select /*+ leading(t4) */ * from t1 join t2 on t1.a=t2.a join t4 on t1.b = t4.b where t1.a in (select t3.a from t3)", "Plan": [ "Projection 5.86 root test.t1.a, test.t1.b, test.t2.a, test.t2.b, test.t4.a, test.t4.b", - "└─IndexJoin 5.86 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "└─IndexHashJoin 5.86 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", " ├─HashJoin(Build) 4.69 root inner join, equal:[eq(test.t1.a, test.t3.a)]", " │ ├─StreamAgg(Build) 3.00 root group by:test.t3.a, funcs:firstrow(test.t3.a)->test.t3.a", " │ │ └─IndexReader 3.00 root index:StreamAgg", @@ -7293,8 +7285,8 @@ { "SQL": "select /*+ leading(t3@sel_2) */ * from t1 join t2 on t1.a=t2.a where t1.a in (select t3.a from t3)", "Plan": [ - "IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", "│ ├─StreamAgg(Build) 3.00 root group by:test.t3.a, funcs:firstrow(test.t3.a)->test.t3.a", "│ │ └─IndexReader 3.00 root index:StreamAgg", "│ │ └─StreamAgg 3.00 cop[tikv] group by:test.t3.a, ", @@ -7313,8 +7305,8 @@ { "SQL": "select /*+ leading(t2, t3@sel_2) */ * from t1 join t2 on t1.a=t2.a where t1.a in (select t3.a from t3)", "Plan": [ - "IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", "│ ├─StreamAgg(Build) 3.00 root group by:test.t3.a, funcs:firstrow(test.t3.a)->test.t3.a", "│ │ └─IndexReader 3.00 root index:StreamAgg", "│ │ └─StreamAgg 3.00 cop[tikv] group by:test.t3.a, ", @@ -7335,8 +7327,8 @@ { "SQL": "select /*+ leading(t1, t3@sel_2) */ * from t1 join t2 on t1.a=t2.a where t1.a in (select t3.a from t3)", "Plan": [ - "IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", "│ ├─StreamAgg(Build) 3.00 root group by:test.t3.a, funcs:firstrow(test.t3.a)->test.t3.a", "│ │ └─IndexReader 3.00 root index:StreamAgg", "│ │ └─StreamAgg 3.00 cop[tikv] group by:test.t3.a, ", @@ -7357,8 +7349,8 @@ { "SQL": "select /*+ leading(t3@sel_2, t2) */ * from t1 join t2 on t1.a=t2.a where t1.a in (select t3.a from t3)", "Plan": [ - "IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", "│ ├─StreamAgg(Build) 3.00 root group by:test.t3.a, funcs:firstrow(test.t3.a)->test.t3.a", "│ │ └─IndexReader 3.00 root index:StreamAgg", "│ │ └─StreamAgg 3.00 cop[tikv] group by:test.t3.a, ", @@ -7379,8 +7371,8 @@ { "SQL": "select /*+ leading(t3@sel_2, t1) */ * from t1 join t2 on t1.a=t2.a where t1.a in (select t3.a from t3)", "Plan": [ - "IndexJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", - "├─IndexJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "IndexHashJoin 4.69 root inner join, inner:IndexLookUp, outer key:test.t1.a, inner key:test.t2.a, equal cond:eq(test.t1.a, test.t2.a)", + "├─IndexHashJoin(Build) 3.75 root inner join, inner:IndexLookUp, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", "│ ├─StreamAgg(Build) 3.00 root group by:test.t3.a, funcs:firstrow(test.t3.a)->test.t3.a", "│ │ └─IndexReader 3.00 root index:StreamAgg", "│ │ └─StreamAgg 3.00 cop[tikv] group by:test.t3.a, ", @@ -7726,7 +7718,7 @@ "SQL": "select /*+ leading(t1) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -7739,7 +7731,7 @@ "SQL": "select /*+ leading(t1, t2@sel_2) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -7755,7 +7747,7 @@ "SQL": "select /*+ leading(t1, t3) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -7768,7 +7760,7 @@ "SQL": "select /*+ leading(t2@sel_2, t1) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -7784,7 +7776,7 @@ "SQL": "select /*+ leading(t2@sel_2, t3) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -7800,7 +7792,7 @@ "SQL": "select /*+ leading(t1, t2@sel_2) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", @@ -7816,7 +7808,7 @@ "SQL": "select /*+ leading(t3, t2@sel_2) */ t1.a, (select min(t2.a) from t2) from t1 join t3 on t1.a = t3.a;", "Plan": [ "Projection 3.75 root test.t1.a, ->Column#14", - "└─IndexJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", + "└─IndexHashJoin 3.75 root inner join, inner:IndexReader, outer key:test.t3.a, inner key:test.t1.a, equal cond:eq(test.t3.a, test.t1.a)", " ├─IndexReader(Build) 3.00 root index:IndexFullScan", " │ └─IndexFullScan 3.00 cop[tikv] table:t3, index:a(a) keep order:false", " └─IndexReader(Probe) 3.75 root index:Selection", diff --git a/planner/core/testdata/json_plan_suite_in.json b/planner/core/testdata/json_plan_suite_in.json new file mode 100644 index 0000000000000..9d006cc16396b --- /dev/null +++ b/planner/core/testdata/json_plan_suite_in.json @@ -0,0 +1,12 @@ +[ + { + "name": "TestJSONPlanInExplain", + "cases": [ + "explain format = tidb_json update t2 set id = 1 where id =2", + "explain format = tidb_json insert into t1 values(1)", + "explain format = tidb_json select count(*) from t1", + "explain format = tidb_json select * from t1", + "explain analyze format = tidb_json select * from t1, t2 where t1.id = t2.id" + ] + } +] diff --git a/planner/core/testdata/json_plan_suite_out.json b/planner/core/testdata/json_plan_suite_out.json new file mode 100644 index 0000000000000..10ba3c93ad7fb --- /dev/null +++ b/planner/core/testdata/json_plan_suite_out.json @@ -0,0 +1,165 @@ +[ + { + "Name": "TestJSONPlanInExplain", + "Cases": [ + { + "SQL": "explain format = tidb_json update t2 set id = 1 where id =2", + "JSONPlan": [ + { + "id": "Update_4", + "estRows": "N/A", + "taskType": "root", + "operatorInfo": "N/A", + "subOperators": [ + { + "id": "IndexReader_7", + "estRows": "10.00", + "taskType": "root", + "operatorInfo": "index:IndexRangeScan_6", + "subOperators": [ + { + "id": "IndexRangeScan_6", + "estRows": "10.00", + "taskType": "cop[tikv]", + "accessObject": "table:t2, index:id(id)", + "operatorInfo": "range:[2,2], keep order:false, stats:pseudo" + } + ] + } + ] + } + ] + }, + { + "SQL": "explain format = tidb_json insert into t1 values(1)", + "JSONPlan": [ + { + "id": "Insert_1", + "estRows": "N/A", + "taskType": "root", + "operatorInfo": "N/A" + } + ] + }, + { + "SQL": "explain format = tidb_json select count(*) from t1", + "JSONPlan": [ + { + "id": "HashAgg_12", + "estRows": "1.00", + "taskType": "root", + "operatorInfo": "funcs:count(Column#5)->Column#3", + "subOperators": [ + { + "id": "TableReader_13", + "estRows": "1.00", + "taskType": "root", + "operatorInfo": "data:HashAgg_5", + "subOperators": [ + { + "id": "HashAgg_5", + "estRows": "1.00", + "taskType": "cop[tikv]", + "operatorInfo": "funcs:count(test.t1._tidb_rowid)->Column#5", + "subOperators": [ + { + "id": "TableFullScan_10", + "estRows": "10000.00", + "taskType": "cop[tikv]", + "accessObject": "table:t1", + "operatorInfo": "keep order:false, stats:pseudo" + } + ] + } + ] + } + ] + } + ] + }, + { + "SQL": "explain format = tidb_json select * from t1", + "JSONPlan": [ + { + "id": "IndexReader_7", + "estRows": "10000.00", + "taskType": "root", + "operatorInfo": "index:IndexFullScan_6", + "subOperators": [ + { + "id": "IndexFullScan_6", + "estRows": "10000.00", + "taskType": "cop[tikv]", + "accessObject": "table:t1, index:id(id)", + "operatorInfo": "keep order:false, stats:pseudo" + } + ] + } + ] + }, + { + "SQL": "explain analyze format = tidb_json select * from t1, t2 where t1.id = t2.id", + "JSONPlan": [ + { + "id": "MergeJoin_8", + "estRows": "12487.50", + "actRows": "0", + "taskType": "root", + "executeInfo": "time:3.5ms, loops:1", + "operatorInfo": "inner join, left key:test.t1.id, right key:test.t2.id", + "memoryInfo": "760 Bytes", + "diskInfo": "0 Bytes", + "subOperators": [ + { + "id": "IndexReader_36(Build)", + "estRows": "9990.00", + "actRows": "0", + "taskType": "root", + "executeInfo": "time:3.47ms, loops:1, cop_task: {num: 1, max: 3.38ms, proc_keys: 0, tot_proc: 3ms, rpc_num: 1, rpc_time: 3.34ms, copr_cache_hit_ratio: 0.00, distsql_concurrency: 15}", + "operatorInfo": "index:IndexFullScan_35", + "memoryInfo": "171 Bytes", + "diskInfo": "N/A", + "subOperators": [ + { + "id": "IndexFullScan_35", + "estRows": "9990.00", + "actRows": "0", + "taskType": "cop[tikv]", + "accessObject": "table:t2, index:id(id)", + "executeInfo": "tikv_task:{time:3.3ms, loops:0}", + "operatorInfo": "keep order:true, stats:pseudo", + "memoryInfo": "N/A", + "diskInfo": "N/A" + } + ] + }, + { + "id": "IndexReader_34(Probe)", + "estRows": "9990.00", + "actRows": "0", + "taskType": "root", + "executeInfo": "time:14µs, loops:1, cop_task: {num: 1, max: 772.9µs, proc_keys: 0, rpc_num: 1, rpc_time: 735.7µs, copr_cache_hit_ratio: 0.00, distsql_concurrency: 15}", + "operatorInfo": "index:IndexFullScan_33", + "memoryInfo": "166 Bytes", + "diskInfo": "N/A", + "subOperators": [ + { + "id": "IndexFullScan_33", + "estRows": "9990.00", + "actRows": "0", + "taskType": "cop[tikv]", + "accessObject": "table:t1, index:id(id)", + "executeInfo": "tikv_task:{time:168.4µs, loops:0}", + "operatorInfo": "keep order:true, stats:pseudo", + "memoryInfo": "N/A", + "diskInfo": "N/A" + } + ] + } + ] + } + ] + } + ] + } +] diff --git a/planner/core/testdata/partition_pruner_out.json b/planner/core/testdata/partition_pruner_out.json index 7b454564bece9..e4647840aa220 100644 --- a/planner/core/testdata/partition_pruner_out.json +++ b/planner/core/testdata/partition_pruner_out.json @@ -802,7 +802,7 @@ "1" ], "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─HashJoin 4.00 root inner join, equal:[eq(test_partition.t6.b, test_partition.t5.b)]", " ├─IndexReader(Build) 4.00 root partition:p0,p1 index:Selection", " │ └─Selection 4.00 cop[tikv] not(isnull(test_partition.t5.b))", @@ -818,7 +818,7 @@ "1" ], "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─IndexJoin 4.00 root inner join, inner:IndexReader, outer key:test_partition.t6.b, inner key:test_partition.t5.b, equal cond:eq(test_partition.t6.b, test_partition.t5.b)", " ├─IndexReader(Build) 4.00 root partition:p0 index:Selection", " │ └─Selection 4.00 cop[tikv] not(isnull(test_partition.t6.b))", @@ -834,7 +834,7 @@ "1" ], "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─IndexHashJoin 4.00 root inner join, inner:IndexReader, outer key:test_partition.t6.b, inner key:test_partition.t5.b, equal cond:eq(test_partition.t6.b, test_partition.t5.b)", " ├─IndexReader(Build) 4.00 root partition:p0 index:Selection", " │ └─Selection 4.00 cop[tikv] not(isnull(test_partition.t6.b))", @@ -847,9 +847,9 @@ { "SQL": "select * from t7 where a is null or a > 0 order by a;", "Result": [ - "", "1", - "2" + "2", + "" ], "Plan": [ "Sort 3343.33 root test_partition.t7.a", @@ -866,8 +866,8 @@ { "SQL": "select * from t1 order by id,a", "Result": [ - " 10 ", "1 1 1", + "10 10 10", "2 2 2", "3 3 3", "4 4 4", @@ -876,7 +876,7 @@ "7 7 7", "8 8 8", "9 9 9", - "10 10 10" + " 10 " ], "Plan": [ "Sort 10000.00 root test_partition.t1.id, test_partition.t1.a", @@ -934,16 +934,16 @@ "2" ], "Plan": [ - "HashAgg 1.00 root funcs:count(Column#6)->Column#5", - "└─TableReader 1.00 root partition:p0 data:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#6", + "StreamAgg 1.00 root funcs:count(Column#7)->Column#5", + "└─TableReader 1.00 root partition:p0 data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#7", " └─Selection 19.99 cop[tikv] or(eq(test_partition.t1.a, 1), eq(test_partition.t1.b, 2))", " └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo" ], "IndexPlan": [ - "HashAgg 1.00 root funcs:count(Column#7)->Column#5", - "└─IndexReader 1.00 root partition:p0 index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#7", + "StreamAgg 1.00 root funcs:count(Column#10)->Column#5", + "└─IndexReader 1.00 root partition:p0 index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#10", " └─Selection 19.99 cop[tikv] or(eq(test_partition_1.t1.a, 1), eq(test_partition_1.t1.b, 2))", " └─IndexFullScan 10000.00 cop[tikv] table:t1, index:a(a, b, id) keep order:false, stats:pseudo" ] @@ -1341,8 +1341,8 @@ { "SQL": "select * from t1 where a = 1 or true order by id,a", "Result": [ - " 10 ", "1 1 1", + "10 10 10", "2 2 2", "3 3 3", "4 4 4", @@ -1351,7 +1351,7 @@ "7 7 7", "8 8 8", "9 9 9", - "10 10 10" + " 10 " ], "Plan": [ "Sort 10000.00 root test_partition.t1.id, test_partition.t1.a", @@ -1646,7 +1646,7 @@ ], "IndexPlan": [ "Sort 199.80 root test_partition_1.t1.a", - "└─IndexJoin 199.80 root inner join, inner:IndexReader, outer key:test_partition_1.t2.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t2.b, test_partition_1.t1.a)", + "└─IndexHashJoin 199.80 root inner join, inner:IndexReader, outer key:test_partition_1.t2.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t2.b, test_partition_1.t1.a)", " ├─HashAgg(Build) 159.84 root group by:test_partition_1.t2.b, funcs:firstrow(test_partition_1.t2.b)->test_partition_1.t2.b", " │ └─IndexReader 159.84 root partition:p0 index:HashAgg", " │ └─HashAgg 159.84 cop[tikv] group by:test_partition_1.t2.b, ", @@ -1676,7 +1676,7 @@ ], "IndexPlan": [ "Sort 199.80 root test_partition_1.t1.a", - "└─IndexJoin 199.80 root inner join, inner:IndexReader, outer key:test_partition_1.t1.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t1.b, test_partition_1.t1.a)", + "└─IndexHashJoin 199.80 root inner join, inner:IndexReader, outer key:test_partition_1.t1.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t1.b, test_partition_1.t1.a)", " ├─HashAgg(Build) 159.84 root group by:test_partition_1.t1.b, funcs:firstrow(test_partition_1.t1.b)->test_partition_1.t1.b", " │ └─IndexReader 159.84 root partition:p0 index:HashAgg", " │ └─HashAgg 159.84 cop[tikv] group by:test_partition_1.t1.b, ", @@ -1877,7 +1877,7 @@ " └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo" ], "IndexPlan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─IndexHashJoin 0.41 root inner join, inner:IndexReader, outer key:test_partition_1.t2.b, inner key:test_partition_1.t1.b, equal cond:eq(test_partition_1.t2.b, test_partition_1.t1.b)", " ├─IndexReader(Build) 0.80 root partition:p0 index:Selection", " │ └─Selection 0.80 cop[tikv] not(isnull(test_partition_1.t2.b))", @@ -1973,13 +1973,13 @@ "SQL": "select * from t1 where a < 3 or b > 4", "Result": [ "1 1 1", + "10 10 10", "2 2 2", "5 5 5", "6 6 6", "7 7 7", "8 8 8", - "9 9 9", - "10 10 10" + "9 9 9" ], "Plan": [ "TableReader 5548.89 root partition:p0,p1 data:Selection", @@ -2059,11 +2059,11 @@ "SQL": "select * from t1 where (a<=1 and b<=1) or (a >=6 and b>=6)", "Result": [ "1 1 1", + "10 10 10", "6 6 6", "7 7 7", "8 8 8", - "9 9 9", - "10 10 10" + "9 9 9" ], "Plan": [ "TableReader 2092.85 root partition:p0,p1 data:Selection", @@ -2080,6 +2080,7 @@ "SQL": "select * from t1 where a <= 100 and b <= 100", "Result": [ "1 1 1", + "10 10 10", "2 2 2", "3 3 3", "4 4 4", @@ -2087,8 +2088,7 @@ "6 6 6", "7 7 7", "8 8 8", - "9 9 9", - "10 10 10" + "9 9 9" ], "Plan": [ "TableReader 1104.45 root partition:p0,p1 data:Selection", @@ -2126,10 +2126,10 @@ { "SQL": "select * from t1 left join t2 on true where (t1.a <=1 or t1.a <= 3 and (t1.b >=3 and t1.b <= 5)) and (t2.a >= 6 and t2.a <= 8) and t2.b>=7 and t2.id>=7 order by t1.id,t1.a", "Result": [ - "1 1 1 8 8 8", "1 1 1 7 7 7", - "3 3 3 8 8 8", - "3 3 3 7 7 7" + "1 1 1 8 8 8", + "3 3 3 7 7 7", + "3 3 3 8 8 8" ], "Plan": [ "Sort 93855.70 root test_partition.t1.id, test_partition.t1.a", @@ -2326,8 +2326,8 @@ { "SQL": "select * from t1 where a = 3 or true order by id,a", "Result": [ - " 10 ", "1 1 1", + "10 10 10", "2 2 2", "3 3 3", "4 4 4", @@ -2336,7 +2336,7 @@ "7 7 7", "8 8 8", "9 9 9", - "10 10 10" + " 10 " ], "Plan": [ "Sort 10000.00 root test_partition.t1.id, test_partition.t1.a", @@ -2463,6 +2463,7 @@ "SQL": "select * from t1 where (a >= 1 and a <= 6) or (a>=3 and b >=3)", "Result": [ "1 1 1", + "10 10 10", "2 2 2", "3 3 3", "4 4 4", @@ -2470,8 +2471,7 @@ "6 6 6", "7 7 7", "8 8 8", - "9 9 9", - "10 10 10" + "9 9 9" ], "Plan": [ "TableReader 1333.33 root partition:p0,p1 data:Selection", @@ -2664,7 +2664,7 @@ ], "IndexPlan": [ "Sort 249.75 root test_partition_1.t1.a", - "└─IndexJoin 249.75 root inner join, inner:IndexReader, outer key:test_partition_1.t2.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t2.b, test_partition_1.t1.a)", + "└─IndexHashJoin 249.75 root inner join, inner:IndexReader, outer key:test_partition_1.t2.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t2.b, test_partition_1.t1.a)", " ├─HashAgg(Build) 199.80 root group by:test_partition_1.t2.b, funcs:firstrow(test_partition_1.t2.b)->test_partition_1.t2.b", " │ └─IndexReader 199.80 root partition:p0 index:HashAgg", " │ └─HashAgg 199.80 cop[tikv] group by:test_partition_1.t2.b, ", @@ -2695,7 +2695,7 @@ ], "IndexPlan": [ "Sort 249.75 root test_partition_1.t1.a", - "└─IndexJoin 249.75 root inner join, inner:IndexReader, outer key:test_partition_1.t1.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t1.b, test_partition_1.t1.a)", + "└─IndexHashJoin 249.75 root inner join, inner:IndexReader, outer key:test_partition_1.t1.b, inner key:test_partition_1.t1.a, equal cond:eq(test_partition_1.t1.b, test_partition_1.t1.a)", " ├─HashAgg(Build) 199.80 root group by:test_partition_1.t1.b, funcs:firstrow(test_partition_1.t1.b)->test_partition_1.t1.b", " │ └─IndexReader 199.80 root partition:p0 index:HashAgg", " │ └─HashAgg 199.80 cop[tikv] group by:test_partition_1.t1.b, ", @@ -2789,7 +2789,7 @@ "2" ], "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─HashJoin 7.81 root inner join, equal:[eq(test_partition.t1.b, test_partition.t2.b)]", " ├─TableReader(Build) 6.25 root partition:p0,p1 data:Selection", " │ └─Selection 6.25 cop[tikv] ge(test_partition.t2.a, 1), ge(test_partition.t2.b, 1), le(test_partition.t2.a, 6), le(test_partition.t2.b, 6), not(isnull(test_partition.t2.b))", @@ -2799,7 +2799,7 @@ " └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo" ], "IndexPlan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─HashJoin 7.81 root inner join, equal:[eq(test_partition_1.t1.b, test_partition_1.t2.b)]", " ├─IndexReader(Build) 6.25 root partition:p0,p1 index:Selection", " │ └─Selection 6.25 cop[tikv] ge(test_partition_1.t2.b, 1), le(test_partition_1.t2.b, 6), not(isnull(test_partition_1.t2.b))", @@ -2815,7 +2815,7 @@ "2" ], "Plan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─HashJoin 7.81 root inner join, equal:[eq(test_partition.t2.b, test_partition.t1.b)]", " ├─TableReader(Build) 6.25 root partition:p0,p1 data:Selection", " │ └─Selection 6.25 cop[tikv] ge(test_partition.t1.a, 1), ge(test_partition.t1.b, 1), le(test_partition.t1.a, 6), le(test_partition.t1.b, 6), not(isnull(test_partition.t1.b))", @@ -2825,7 +2825,7 @@ " └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo" ], "IndexPlan": [ - "HashAgg 1.00 root funcs:count(1)->Column#9", + "StreamAgg 1.00 root funcs:count(1)->Column#9", "└─HashJoin 7.81 root inner join, equal:[eq(test_partition_1.t2.b, test_partition_1.t1.b)]", " ├─IndexReader(Build) 6.25 root partition:p0,p1 index:Selection", " │ └─Selection 6.25 cop[tikv] ge(test_partition_1.t1.b, 1), le(test_partition_1.t1.b, 6), not(isnull(test_partition_1.t1.b))", diff --git a/planner/core/testdata/plan_normalized_suite_in.json b/planner/core/testdata/plan_normalized_suite_in.json index f79b7a1ed3733..81c65932f82a3 100644 --- a/planner/core/testdata/plan_normalized_suite_in.json +++ b/planner/core/testdata/plan_normalized_suite_in.json @@ -29,7 +29,14 @@ "select * from t3 where a=4", "select * from t3 where a=30", "select * from t4 where a=10", - "select * from t4 where a=20" + "select * from t4 where a=20", + "update t6 set id=id+1, id3=id2+1 where id = 1", + "insert into t6 values (1,1,1)", + "delete from t6", + "delete from t5 where id > 1", + "update t5 set id=id+1, id2=id2+1 where id = 1", + "update t5 set id=id+1, id2=id2+1, id3=id3+1 where id = 1", + "insert into t5 values (1,1,1) on duplicate key update id = 100, id3=100" ] }, { diff --git a/planner/core/testdata/plan_normalized_suite_out.json b/planner/core/testdata/plan_normalized_suite_out.json index 0fc4fba15e766..0f4218ba2649a 100644 --- a/planner/core/testdata/plan_normalized_suite_out.json +++ b/planner/core/testdata/plan_normalized_suite_out.json @@ -231,6 +231,52 @@ " ├─IndexRangeScan cop table:t4, partition:?, index:a(a), range:[?,?], keep order:false", " └─TableRowIDScan cop table:t4, partition:?, keep order:false" ] + }, + { + "SQL": "update t6 set id=id+1, id3=id2+1 where id = 1", + "Plan": [ + " IndexLookUp root ", + " ├─IndexRangeScan cop table:t6, index:idx_id(id), range:[?,?], keep order:false", + " └─TableRowIDScan cop table:t6, keep order:false" + ] + }, + { + "SQL": "insert into t6 values (1,1,1)", + "Plan": [ + "" + ] + }, + { + "SQL": "delete from t6", + "Plan": [ + " TableReader root ", + " └─TableFullScan cop table:t6, range:[?,?], keep order:false" + ] + }, + { + "SQL": "delete from t5 where id > 1", + "Plan": [ + " TableReader root ", + " └─TableRangeScan cop table:t5, range:[?,?], keep order:false" + ] + }, + { + "SQL": "update t5 set id=id+1, id2=id2+1 where id = 1", + "Plan": [ + " Point_Get root table:t5, handle:?" + ] + }, + { + "SQL": "update t5 set id=id+1, id2=id2+1, id3=id3+1 where id = 1", + "Plan": [ + " Point_Get root table:t5, handle:?" + ] + }, + { + "SQL": "insert into t5 values (1,1,1) on duplicate key update id = 100, id3=100", + "Plan": [ + "" + ] } ] }, diff --git a/planner/core/testdata/plan_suite_in.json b/planner/core/testdata/plan_suite_in.json index d718be8d6dfb4..c38250c802454 100644 --- a/planner/core/testdata/plan_suite_in.json +++ b/planner/core/testdata/plan_suite_in.json @@ -1094,5 +1094,37 @@ "SELECT ta.NAME FROM ta WHERE EXISTS (select /*+ no_decorrelate() */ 1 from tb where ta.code = tb.code and tb.NAME LIKE 'chad9%') AND (select /*+ no_decorrelate() */ max(id) from tc where ta.name=tc.name and tc.name like 'chad99%') > 100 and (select /*+ no_decorrelate() */ max(id) from td where ta.id=td.id and td.name like 'chad999%') > 100" ] + }, + { + "name": "TestCountStarForTikv", + "cases": [ + "select count(*) from t", + "select count(1), count(3.1415), count(0), count(null) from t -- shouldn't be rewritten", + "select count(*) from t where a=1", + "select count(*) from t_pick_row_id", + "select t.b, t.c from (select count(*) as c from t) a, t where a.c=t.a -- shouldn't be rewritten", + "select * from t out where out.a > (select count(*) from t inn where inn.a = out.b) -- shouldn't be rewritten", + "select count(*) from t t1, t t2 where t1.a=t2.e -- shouldn't be rewritten", + "select count(distinct 1) from t -- shouldn't be rewritten", + "select count(1), count(a), count(b) from t -- shouldn't be rewritten", + "select a, count(*) from t group by a -- shouldn't be rewritten", + "select sum(a) from t -- sum shouldn't be rewritten" + ] + }, + { + "name": "TestCountStarForTiFlash", + "cases": [ + "select count(*) from t", + "select count(1), count(3.1415), count(0), count(null) from t -- every count but count(null) can be rewritten", + "select count(*) from t where a=1", + "select count(*) from t_pick_row_id", + "select t.b, t.c from (select count(*) as c from t) a, t where a.c=t.a -- test recursive", + "select * from t out where out.a > (select count(*) from t inn where inn.a = out.b) -- shouldn't be rewritten for correlated sub query", + "select count(*) from t t1, t t2 where t1.a=t2.e -- shouldn't be rewritten when join under agg", + "select count(distinct 1) from t -- shouldn't be rewritten", + "select count(1), count(a), count(b) from t -- keep count(1)", + "select a, count(*) from t group by a -- shouldn't be rewritten", + "select sum(a) from t -- sum shouldn't be rewritten" + ] } ] diff --git a/planner/core/testdata/plan_suite_out.json b/planner/core/testdata/plan_suite_out.json index b4da9d119f28f..b3a7664b2b2fd 100644 --- a/planner/core/testdata/plan_suite_out.json +++ b/planner/core/testdata/plan_suite_out.json @@ -546,7 +546,7 @@ }, { "SQL": "select * from t t1 join t t2 on t1.b = t2.a order by t1.a", - "Best": "LeftHashJoin{TableReader(Table(t))->TableReader(Table(t))}(test.t.b,test.t.a)->Sort" + "Best": "IndexJoin{TableReader(Table(t))->TableReader(Table(t))}(test.t.b,test.t.a)" }, { "SQL": "select * from t t1 join t t2 on t1.b = t2.a order by t1.a limit 1", @@ -963,7 +963,7 @@ }, { "SQL": "select sum(e), avg(e + c) from t where c = 1 group by e", - "Best": "IndexReader(Index(t.c_d_e)[[1,1]]->HashAgg)->HashAgg" + "Best": "IndexReader(Index(t.c_d_e)[[1,1]])->Projection->HashAgg" }, { "SQL": "select sum(e), avg(b + c) from t where c = 1 and e = 1 group by d", @@ -1257,15 +1257,15 @@ "Cases": [ { "SQL": "select max(a) from t;", - "Best": "TableReader(Table(t)->Limit)->Limit->HashAgg" + "Best": "TableReader(Table(t)->Limit)->Limit->StreamAgg" }, { "SQL": "select min(a) from t;", - "Best": "TableReader(Table(t)->Limit)->Limit->HashAgg" + "Best": "TableReader(Table(t)->Limit)->Limit->StreamAgg" }, { "SQL": "select min(c_str) from t;", - "Best": "IndexReader(Index(t.c_d_e_str)[[-inf,+inf]]->Limit)->Limit->HashAgg" + "Best": "IndexReader(Index(t.c_d_e_str)[[-inf,+inf]]->Limit)->Limit->StreamAgg" }, { "SQL": "select max(a), b from t;", @@ -1273,23 +1273,23 @@ }, { "SQL": "select max(a+1) from t;", - "Best": "IndexReader(Index(t.f)[[NULL,+inf]]->TopN([plus(test.t.a, 1) true],0,1))->Projection->TopN([Column#40 true],0,1)->Projection->Projection->HashAgg" + "Best": "IndexReader(Index(t.f)[[NULL,+inf]]->TopN([plus(test.t.a, 1) true],0,1))->Projection->TopN([Column#40 true],0,1)->Projection->Projection->StreamAgg" }, { "SQL": "select max(a), min(a) from t;", - "Best": "LeftHashJoin{TableReader(Table(t)->Limit)->Limit->HashAgg->TableReader(Table(t)->Limit)->Limit->HashAgg}" + "Best": "RightHashJoin{TableReader(Table(t)->Limit)->Limit->StreamAgg->TableReader(Table(t)->Limit)->Limit->StreamAgg}" }, { "SQL": "select max(a), min(a) from t where a > 10", - "Best": "LeftHashJoin{TableReader(Table(t)->Limit)->Limit->HashAgg->TableReader(Table(t)->Limit)->Limit->HashAgg}" + "Best": "RightHashJoin{TableReader(Table(t)->Limit)->Limit->StreamAgg->TableReader(Table(t)->Limit)->Limit->StreamAgg}" }, { "SQL": "select max(d), min(d) from t where c = 1 and d > 10", - "Best": "LeftHashJoin{IndexReader(Index(t.c_d_e)[(1 10,1 +inf]]->Limit)->Limit->HashAgg->IndexReader(Index(t.c_d_e)[(1 10,1 +inf]]->Limit)->Limit->HashAgg}" + "Best": "LeftHashJoin{IndexReader(Index(t.c_d_e)[(1 10,1 +inf]]->Limit)->Limit->StreamAgg->IndexReader(Index(t.c_d_e)[(1 10,1 +inf]]->Limit)->Limit->StreamAgg}" }, { "SQL": "select max(a), max(c), min(f) from t", - "Best": "LeftHashJoin{LeftHashJoin{TableReader(Table(t)->Limit)->Limit->HashAgg->IndexReader(Index(t.c_d_e)[[NULL,+inf]]->Limit)->Limit->HashAgg}->IndexReader(Index(t.f)[[NULL,+inf]]->Limit)->Limit->HashAgg}" + "Best": "LeftHashJoin{RightHashJoin{TableReader(Table(t)->Limit)->Limit->StreamAgg->IndexReader(Index(t.c_d_e)[[NULL,+inf]]->Limit)->Limit->StreamAgg}->IndexReader(Index(t.f)[[NULL,+inf]]->Limit)->Limit->StreamAgg}" }, { "SQL": "select max(a), max(b) from t", @@ -1309,7 +1309,7 @@ }, { "SQL": "select max(a) from (select t1.a from t t1 join t t2 on t1.a=t2.a) t", - "Best": "MergeInnerJoin{TableReader(Table(t))->TableReader(Table(t))}(test.t.a,test.t.a)->Limit->HashAgg" + "Best": "MergeInnerJoin{TableReader(Table(t))->TableReader(Table(t))}(test.t.a,test.t.a)->Limit->StreamAgg" } ] }, @@ -1588,7 +1588,7 @@ "Cases": [ { "SQL": "select t1.a, (select count(t2.a) from t t2 where t2.g in (select t3.d from t t3 where t3.c = t1.a)) as agg_col from t t1;", - "Best": "Apply{IndexReader(Index(t.f)[[NULL,+inf]])->IndexJoin{IndexReader(Index(t.c_d_e)[[NULL,+inf]]->HashAgg)->HashAgg->IndexReader(Index(t.g)[[NULL,NULL]])}(test.t.d,test.t.g)}->HashAgg" + "Best": "Apply{IndexReader(Index(t.f)[[NULL,+inf]])->IndexHashJoin{IndexReader(Index(t.c_d_e)[[NULL,+inf]]->HashAgg)->HashAgg->IndexReader(Index(t.g)[[NULL,NULL]])}(test.t.d,test.t.g)}->HashAgg" } ] }, @@ -5935,7 +5935,7 @@ "└─Apply 10000.00 root CARTESIAN inner join", " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - " └─HashAgg(Probe) 10000.00 root funcs:max(Column#14)->Column#8, funcs:count(distinct Column#15)->Column#9, funcs:sum(Column#16)->Column#10, funcs:count(1)->Column#11", + " └─StreamAgg(Probe) 10000.00 root funcs:max(Column#14)->Column#8, funcs:count(distinct Column#15)->Column#9, funcs:sum(Column#16)->Column#10, funcs:count(1)->Column#11", " └─Projection 10000.00 root test.t2.b, test.t2.b, cast(isnull(test.t2.b), decimal(20,0) BINARY)->Column#16", " └─TableReader 10000.00 root data:TableRangeScan", " └─TableRangeScan 10000.00 cop[tikv] table:t2 range: decided by [eq(test.t2.a, test.t1.b)], keep order:false, stats:pseudo" @@ -5953,7 +5953,7 @@ "└─Apply 10000.00 root CARTESIAN inner join", " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - " └─HashAgg(Probe) 10000.00 root funcs:max(Column#14)->Column#8, funcs:count(distinct Column#15)->Column#9, funcs:sum(Column#16)->Column#10, funcs:count(1)->Column#11", + " └─StreamAgg(Probe) 10000.00 root funcs:max(Column#14)->Column#8, funcs:count(distinct Column#15)->Column#9, funcs:sum(Column#16)->Column#10, funcs:count(1)->Column#11", " └─Projection 10000.00 root test.t2.b, test.t2.b, cast(isnull(test.t2.b), decimal(20,0) BINARY)->Column#16", " └─TableReader 10000.00 root data:TableRangeScan", " └─TableRangeScan 10000.00 cop[tikv] table:t2 range: decided by [eq(test.t2.a, test.t1.b)], keep order:false, stats:pseudo" @@ -5971,7 +5971,7 @@ "└─Apply 10000.00 root CARTESIAN inner join", " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - " └─HashAgg(Probe) 10000.00 root funcs:max(Column#19)->Column#8, funcs:sum(Column#20)->Column#9, funcs:count(1)->Column#10", + " └─StreamAgg(Probe) 10000.00 root funcs:max(Column#19)->Column#8, funcs:sum(Column#20)->Column#9, funcs:count(1)->Column#10", " └─Projection 10000.00 root test.t2.b, cast(isnull(test.t2.b), decimal(20,0) BINARY)->Column#20", " └─TableReader 10000.00 root data:TableRangeScan", " └─TableRangeScan 10000.00 cop[tikv] table:t2 range: decided by [eq(test.t2.a, test.t1.b)], keep order:false, stats:pseudo" @@ -5989,7 +5989,7 @@ "└─Apply 10000.00 root CARTESIAN inner join", " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", - " └─HashAgg(Probe) 10000.00 root funcs:max(Column#19)->Column#8, funcs:sum(Column#20)->Column#9, funcs:count(1)->Column#10", + " └─StreamAgg(Probe) 10000.00 root funcs:max(Column#19)->Column#8, funcs:sum(Column#20)->Column#9, funcs:count(1)->Column#10", " └─Projection 10000.00 root test.t2.b, cast(isnull(test.t2.b), decimal(20,0) BINARY)->Column#20", " └─TableReader 10000.00 root data:TableRangeScan", " └─TableRangeScan 10000.00 cop[tikv] table:t2 range: decided by [eq(test.t2.a, test.t1.b)], keep order:false, stats:pseudo" @@ -6159,9 +6159,9 @@ " ├─TableReader(Build) 10000.00 root data:TableFullScan", " │ └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", " └─MaxOneRow(Probe) 10000.00 root ", - " └─HashAgg 10000.00 root funcs:count(Column#11)->Column#10", - " └─TableReader 10000.00 root data:HashAgg", - " └─HashAgg 10000.00 cop[tikv] funcs:count(test.t3.a)->Column#11", + " └─StreamAgg 10000.00 root funcs:count(Column#12)->Column#10", + " └─TableReader 10000.00 root data:StreamAgg", + " └─StreamAgg 10000.00 cop[tikv] funcs:count(test.t3.a)->Column#12", " └─Selection 100000.00 cop[tikv] eq(test.t3.b, test.t1.b)", " └─TableFullScan 100000000.00 cop[tikv] table:t3 keep order:false, stats:pseudo" ], @@ -6234,9 +6234,9 @@ " │ └─Selection 250.00 cop[tikv] like(test.ta.name, \"chad999%\", 92)", " │ └─TableFullScan 10000.00 cop[tikv] table:ta keep order:false, stats:pseudo", " └─MaxOneRow(Probe) 250.00 root ", - " └─HashAgg 250.00 root funcs:sum(Column#33)->Column#18", + " └─StreamAgg 250.00 root funcs:sum(Column#33)->Column#18", " └─Projection 1998.00 root cast(test.tb.code, decimal(10,0) BINARY)->Column#33", - " └─IndexJoin 1998.00 root semi join, inner:IndexLookUp, outer key:test.tb.name, inner key:test.tc.name, equal cond:eq(test.tb.name, test.tc.name)", + " └─IndexHashJoin 1998.00 root semi join, inner:IndexLookUp, outer key:test.tb.name, inner key:test.tc.name, equal cond:eq(test.tb.name, test.tc.name)", " ├─IndexLookUp(Build) 2497.50 root ", " │ ├─IndexRangeScan(Build) 2500.00 cop[tikv] table:tb, index:idx_tb_id(id) range: decided by [eq(test.ta.id, test.tb.id)], keep order:false, stats:pseudo", " │ └─Selection(Probe) 2497.50 cop[tikv] not(isnull(test.tb.name))", @@ -6280,7 +6280,7 @@ " │ └─Selection 250.00 cop[tikv] like(test.ta.name, \"chad999%\", 92)", " │ └─TableFullScan 10000.00 cop[tikv] table:ta keep order:false, stats:pseudo", " └─MaxOneRow(Probe) 250.00 root ", - " └─HashAgg 250.00 root funcs:sum(Column#22)->Column#18", + " └─StreamAgg 250.00 root funcs:sum(Column#22)->Column#18", " └─Projection 2500.00 root cast(test.tb.code, decimal(10,0) BINARY)->Column#22", " └─Apply 2500.00 root CARTESIAN semi join", " ├─IndexLookUp(Build) 2500.00 root ", @@ -6323,7 +6323,7 @@ " │ └─TableRowIDScan(Probe) 10.00 cop[tikv] table:ta keep order:false, stats:pseudo", " └─Selection(Probe) 8.00 root gt(Column#9, 900)", " └─MaxOneRow 10.00 root ", - " └─HashAgg 10.00 root funcs:max(test.tb.code)->Column#9", + " └─StreamAgg 10.00 root funcs:max(test.tb.code)->Column#9", " └─TopN 10.00 root test.tb.code:desc, offset:0, count:1", " └─IndexLookUp 10.00 root ", " ├─IndexRangeScan(Build) 100.00 cop[tikv] table:tb, index:idx_tb_id(id) range: decided by [eq(test.ta.id, test.tb.id)], keep order:false, stats:pseudo", @@ -6368,7 +6368,7 @@ "Projection 249.75 root test.ta.name", "└─Apply 249.75 root CARTESIAN inner join", " ├─Apply(Build) 249.75 root CARTESIAN inner join", - " │ ├─IndexJoin(Build) 249.75 root inner join, inner:IndexLookUp, outer key:test.tb.code, inner key:test.ta.code, equal cond:eq(test.tb.code, test.ta.code)", + " │ ├─IndexHashJoin(Build) 249.75 root inner join, inner:IndexLookUp, outer key:test.tb.code, inner key:test.ta.code, equal cond:eq(test.tb.code, test.ta.code)", " │ │ ├─HashAgg(Build) 199.80 root group by:test.tb.code, funcs:firstrow(test.tb.code)->test.tb.code", " │ │ │ └─TableReader 249.75 root data:Selection", " │ │ │ └─Selection 249.75 cop[tikv] like(test.tb.name, \"chad9%\", 92), not(isnull(test.tb.code))", @@ -6438,5 +6438,276 @@ "Warning": null } ] + }, + { + "Name": "TestCountStarForTikv", + "Cases": [ + { + "SQL": "select count(*) from t", + "Plan": [ + "StreamAgg 1.00 root funcs:count(Column#12)->Column#10", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#12", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(1), count(3.1415), count(0), count(null) from t -- shouldn't be rewritten", + "Plan": [ + "StreamAgg 1.00 root funcs:count(Column#18)->Column#10, funcs:count(Column#19)->Column#11, funcs:count(Column#20)->Column#12, funcs:count(Column#21)->Column#13", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#18, funcs:count(3.1415)->Column#19, funcs:count(0)->Column#20, funcs:count(NULL)->Column#21", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(*) from t where a=1", + "Plan": [ + "StreamAgg 1.00 root funcs:count(Column#12)->Column#10", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#12", + " └─Selection 10.00 cop[tikv] eq(test.t.a, 1)", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(*) from t_pick_row_id", + "Plan": [ + "StreamAgg 1.00 root funcs:count(Column#5)->Column#3", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#5", + " └─TableFullScan 10000.00 cop[tikv] table:t_pick_row_id keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select t.b, t.c from (select count(*) as c from t) a, t where a.c=t.a -- shouldn't be rewritten", + "Plan": [ + "HashJoin 1.25 root inner join, equal:[eq(test.t.a, Column#10)]", + "├─StreamAgg(Build) 1.00 root funcs:count(Column#21)->Column#10", + "│ └─TableReader 1.00 root data:StreamAgg", + "│ └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#21", + "│ └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo", + "└─TableReader(Probe) 10000.00 root data:TableFullScan", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select * from t out where out.a > (select count(*) from t inn where inn.a = out.b) -- shouldn't be rewritten", + "Plan": [ + "Projection 10000.00 root test.t.a, test.t.b, test.t.c, test.t.d, test.t.e, test.t.f, test.t.g, test.t.h", + "└─Apply 10000.00 root CARTESIAN inner join, other cond:gt(test.t.a, Column#19)", + " ├─TableReader(Build) 10000.00 root data:TableFullScan", + " │ └─TableFullScan 10000.00 cop[tikv] table:out keep order:false, stats:pseudo", + " └─StreamAgg(Probe) 10000.00 root funcs:count(Column#21)->Column#19", + " └─TableReader 10000.00 root data:StreamAgg", + " └─StreamAgg 10000.00 cop[tikv] funcs:count(1)->Column#21", + " └─Selection 80000000.00 cop[tikv] eq(cast(test.t.a, double BINARY), cast(test.t.b, double BINARY))", + " └─TableFullScan 100000000.00 cop[tikv] table:inn keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(*) from t t1, t t2 where t1.a=t2.e -- shouldn't be rewritten", + "Plan": [ + "HashAgg 1.00 root funcs:count(1)->Column#19", + "└─HashJoin 12500.00 root inner join, equal:[eq(test.t.a, test.t.e)]", + " ├─TableReader(Build) 10000.00 root data:TableFullScan", + " │ └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + " └─TableReader(Probe) 10000.00 root data:TableFullScan", + " └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(distinct 1) from t -- shouldn't be rewritten", + "Plan": [ + "StreamAgg 1.00 root funcs:count(distinct 1)->Column#10", + "└─TableReader 10000.00 root data:TableFullScan", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(1), count(a), count(b) from t -- shouldn't be rewritten", + "Plan": [ + "StreamAgg 1.00 root funcs:count(Column#16)->Column#10, funcs:count(Column#17)->Column#11, funcs:count(Column#18)->Column#12", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#16, funcs:count(test.t.a)->Column#17, funcs:count(test.t.b)->Column#18", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select a, count(*) from t group by a -- shouldn't be rewritten", + "Plan": [ + "Projection 8000.00 root test.t.a, Column#10", + "└─HashAgg 8000.00 root group by:test.t.a, funcs:count(1)->Column#10, funcs:firstrow(test.t.a)->test.t.a", + " └─TableReader 10000.00 root data:TableFullScan", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select sum(a) from t -- sum shouldn't be rewritten", + "Plan": [ + "StreamAgg 1.00 root funcs:sum(Column#12)->Column#10", + "└─TableReader 1.00 root data:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:sum(test.t.a)->Column#12", + " └─TableFullScan 10000.00 cop[tikv] table:t keep order:false, stats:pseudo" + ], + "Warning": null + } + ] + }, + { + "Name": "TestCountStarForTiFlash", + "Cases": [ + { + "SQL": "select count(*) from t", + "Plan": [ + "HashAgg 1.00 root funcs:count(Column#12)->Column#10", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t.d)->Column#12", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(1), count(3.1415), count(0), count(null) from t -- every count but count(null) can be rewritten", + "Plan": [ + "HashAgg 1.00 root funcs:count(Column#18)->Column#10, funcs:count(Column#19)->Column#11, funcs:count(Column#20)->Column#12, funcs:count(Column#21)->Column#13", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t.d)->Column#18, funcs:count(test.t.d)->Column#19, funcs:count(test.t.d)->Column#20, funcs:count(NULL)->Column#21", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(*) from t where a=1", + "Plan": [ + "HashAgg 1.00 root funcs:count(Column#12)->Column#10", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#12", + " └─Selection 10.00 mpp[tiflash] eq(test.t.a, 1)", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(*) from t_pick_row_id", + "Plan": [ + "HashAgg 1.00 root funcs:count(Column#5)->Column#3", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t_pick_row_id._tidb_rowid)->Column#5", + " └─TableFullScan 10000.00 mpp[tiflash] table:t_pick_row_id keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select t.b, t.c from (select count(*) as c from t) a, t where a.c=t.a -- test recursive", + "Plan": [ + "HashJoin 1.25 root inner join, equal:[eq(test.t.a, Column#10)]", + "├─HashAgg(Build) 1.00 root funcs:count(Column#22)->Column#10", + "│ └─TableReader 1.00 root data:ExchangeSender", + "│ └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + "│ └─HashAgg 1.00 mpp[tiflash] funcs:count(test.t.d)->Column#22", + "│ └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo", + "└─TableReader(Probe) 10000.00 root data:TableFullScan", + " └─TableFullScan 10000.00 cop[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select * from t out where out.a > (select count(*) from t inn where inn.a = out.b) -- shouldn't be rewritten for correlated sub query", + "Plan": [ + "Projection 10000.00 root test.t.a, test.t.b, test.t.c, test.t.d, test.t.e, test.t.f, test.t.g, test.t.h", + "└─Apply 10000.00 root CARTESIAN inner join, other cond:gt(test.t.a, Column#19)", + " ├─TableReader(Build) 10000.00 root data:TableFullScan", + " │ └─TableFullScan 10000.00 cop[tiflash] table:out keep order:false, stats:pseudo", + " └─HashAgg(Probe) 10000.00 root funcs:count(Column#21)->Column#19", + " └─TableReader 10000.00 root data:ExchangeSender", + " └─ExchangeSender 10000.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 10000.00 mpp[tiflash] funcs:count(1)->Column#21", + " └─Selection 80000000.00 mpp[tiflash] eq(cast(test.t.a, double BINARY), cast(test.t.b, double BINARY))", + " └─TableFullScan 100000000.00 mpp[tiflash] table:inn keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(*) from t t1, t t2 where t1.a=t2.e -- shouldn't be rewritten when join under agg", + "Plan": [ + "HashAgg 1.00 root funcs:count(Column#20)->Column#19", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#20", + " └─HashJoin 12500.00 mpp[tiflash] inner join, equal:[eq(test.t.a, test.t.e)]", + " ├─ExchangeReceiver(Build) 10000.00 mpp[tiflash] ", + " │ └─ExchangeSender 10000.00 mpp[tiflash] ExchangeType: Broadcast", + " │ └─TableFullScan 10000.00 mpp[tiflash] table:t1 keep order:false, stats:pseudo", + " └─TableFullScan(Probe) 10000.00 mpp[tiflash] table:t2 keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(distinct 1) from t -- shouldn't be rewritten", + "Plan": [ + "TableReader 1.00 root data:ExchangeSender", + "└─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─Projection 1.00 mpp[tiflash] Column#10", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(distinct Column#12)->Column#10", + " └─ExchangeReceiver 1.00 mpp[tiflash] ", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] group by:1, ", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select count(1), count(a), count(b) from t -- keep count(1)", + "Plan": [ + "HashAgg 1.00 root funcs:count(Column#16)->Column#10, funcs:count(Column#17)->Column#11, funcs:count(Column#18)->Column#12", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:count(1)->Column#16, funcs:count(test.t.a)->Column#17, funcs:count(test.t.b)->Column#18", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select a, count(*) from t group by a -- shouldn't be rewritten", + "Plan": [ + "TableReader 8000.00 root data:ExchangeSender", + "└─ExchangeSender 8000.00 mpp[tiflash] ExchangeType: PassThrough", + " └─Projection 8000.00 mpp[tiflash] test.t.a, Column#10", + " └─Projection 8000.00 mpp[tiflash] Column#10, test.t.a", + " └─HashAgg 8000.00 mpp[tiflash] group by:test.t.a, funcs:count(1)->Column#10, funcs:firstrow(test.t.a)->test.t.a", + " └─ExchangeReceiver 10000.00 mpp[tiflash] ", + " └─ExchangeSender 10000.00 mpp[tiflash] ExchangeType: HashPartition, Hash Cols: [name: test.t.a, collate: binary]", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + }, + { + "SQL": "select sum(a) from t -- sum shouldn't be rewritten", + "Plan": [ + "HashAgg 1.00 root funcs:sum(Column#12)->Column#10", + "└─TableReader 1.00 root data:ExchangeSender", + " └─ExchangeSender 1.00 mpp[tiflash] ExchangeType: PassThrough", + " └─HashAgg 1.00 mpp[tiflash] funcs:sum(Column#15)->Column#12", + " └─Projection 10000.00 mpp[tiflash] cast(test.t.a, decimal(10,0) BINARY)->Column#15", + " └─TableFullScan 10000.00 mpp[tiflash] table:t keep order:false, stats:pseudo" + ], + "Warning": null + } + ] } ] diff --git a/planner/core/util.go b/planner/core/util.go index 14b7df23710d6..5dc8d93d92efe 100644 --- a/planner/core/util.go +++ b/planner/core/util.go @@ -23,7 +23,6 @@ import ( "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/types" - "github.com/pingcap/tidb/util/ranger" "github.com/pingcap/tidb/util/set" "github.com/pingcap/tidb/util/size" "golang.org/x/exp/slices" @@ -396,38 +395,6 @@ func tableHasDirtyContent(ctx sessionctx.Context, tableInfo *model.TableInfo) bo return false } -func cloneExprs(exprs []expression.Expression) []expression.Expression { - cloned := make([]expression.Expression, 0, len(exprs)) - for _, e := range exprs { - cloned = append(cloned, e.Clone()) - } - return cloned -} - -func cloneCols(cols []*expression.Column) []*expression.Column { - cloned := make([]*expression.Column, 0, len(cols)) - for _, c := range cols { - cloned = append(cloned, c.Clone().(*expression.Column)) - } - return cloned -} - -func cloneColInfos(cols []*model.ColumnInfo) []*model.ColumnInfo { - cloned := make([]*model.ColumnInfo, 0, len(cols)) - for _, c := range cols { - cloned = append(cloned, c.Clone()) - } - return cloned -} - -func cloneRanges(ranges []*ranger.Range) []*ranger.Range { - cloned := make([]*ranger.Range, 0, len(ranges)) - for _, r := range ranges { - cloned = append(cloned, r.Clone()) - } - return cloned -} - func clonePhysicalPlan(plans []PhysicalPlan) ([]PhysicalPlan, error) { cloned := make([]PhysicalPlan, 0, len(plans)) for _, p := range plans { diff --git a/planner/optimize.go b/planner/optimize.go index 747dd5541596a..d5ee997057180 100644 --- a/planner/optimize.go +++ b/planner/optimize.go @@ -289,6 +289,25 @@ func Optimize(ctx context.Context, sctx sessionctx.Context, node ast.Node, is in return bestPlan, names, nil } +// OptimizeForForeignKeyCascade does optimization and creates a Plan for foreign key cascade. +// The node must be prepared first. +// Compare to Optimize, OptimizeForForeignKeyCascade only build plan by StmtNode, +// doesn't consider plan cache and plan binding, also doesn't do privilege check. +func OptimizeForForeignKeyCascade(ctx context.Context, sctx sessionctx.Context, node ast.StmtNode, is infoschema.InfoSchema) (core.Plan, error) { + builder := planBuilderPool.Get().(*core.PlanBuilder) + defer planBuilderPool.Put(builder.ResetForReuse()) + hintProcessor := &hint.BlockHintProcessor{Ctx: sctx} + builder.Init(sctx, is, hintProcessor) + p, err := builder.Build(ctx, node) + if err != nil { + return nil, err + } + if err := core.CheckTableLock(sctx, is, builder.GetVisitInfo()); err != nil { + return nil, err + } + return p, nil +} + func allowInReadOnlyMode(sctx sessionctx.Context, node ast.Node) (bool, error) { pm := privilege.GetPrivilegeManager(sctx) if pm == nil { @@ -356,6 +375,7 @@ func optimize(ctx context.Context, sctx sessionctx.Context, node ast.Node, is in // build logical plan hintProcessor := &hint.BlockHintProcessor{Ctx: sctx} node.Accept(hintProcessor) + defer hintProcessor.HandleUnusedViewHints() builder := planBuilderPool.Get().(*core.PlanBuilder) defer planBuilderPool.Put(builder.ResetForReuse()) builder.Init(sctx, is, hintProcessor) @@ -547,12 +567,14 @@ func handleEvolveTasks(ctx context.Context, sctx sessionctx.Context, br *bindinf return } charset, collation := sctx.GetSessionVars().GetCharsetInfo() + _, sqlDigestWithDB := parser.NormalizeDigest(utilparser.RestoreWithDefaultDB(stmtNode, br.Db, br.OriginalSQL)) binding := bindinfo.Binding{ BindSQL: bindSQL, Status: bindinfo.PendingVerify, Charset: charset, Collation: collation, Source: bindinfo.Evolve, + SQLDigest: sqlDigestWithDB.String(), } globalHandle := domain.GetDomain(sctx).BindHandle() globalHandle.AddEvolvePlanTask(br.OriginalSQL, br.Db, binding) diff --git a/planner/util/BUILD.bazel b/planner/util/BUILD.bazel index aae63a58c8fcb..50f4512126508 100644 --- a/planner/util/BUILD.bazel +++ b/planner/util/BUILD.bazel @@ -4,6 +4,7 @@ go_library( name = "util", srcs = [ "byitem.go", + "misc.go", "path.go", ], importpath = "github.com/pingcap/tidb/planner/util", @@ -18,6 +19,7 @@ go_library( "//util/collate", "//util/ranger", "//util/size", + "@org_golang_x_exp//slices", ], ) diff --git a/planner/util/misc.go b/planner/util/misc.go new file mode 100644 index 0000000000000..bd67cbbe17b5c --- /dev/null +++ b/planner/util/misc.go @@ -0,0 +1,61 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package util + +import ( + "github.com/pingcap/tidb/expression" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/util/ranger" +) + +// CloneExprs uses Expression.Clone to clone a slice of Expression. +func CloneExprs(exprs []expression.Expression) []expression.Expression { + cloned := make([]expression.Expression, 0, len(exprs)) + for _, e := range exprs { + cloned = append(cloned, e.Clone()) + } + return cloned +} + +// CloneCols uses (*Column).Clone to clone a slice of *Column. +func CloneCols(cols []*expression.Column) []*expression.Column { + cloned := make([]*expression.Column, 0, len(cols)) + for _, c := range cols { + if c == nil { + cloned = append(cloned, nil) + continue + } + cloned = append(cloned, c.Clone().(*expression.Column)) + } + return cloned +} + +// CloneColInfos uses (*ColumnInfo).Clone to clone a slice of *ColumnInfo. +func CloneColInfos(cols []*model.ColumnInfo) []*model.ColumnInfo { + cloned := make([]*model.ColumnInfo, 0, len(cols)) + for _, c := range cols { + cloned = append(cloned, c.Clone()) + } + return cloned +} + +// CloneRanges uses (*Range).Clone to clone a slice of *Range. +func CloneRanges(ranges []*ranger.Range) []*ranger.Range { + cloned := make([]*ranger.Range, 0, len(ranges)) + for _, r := range ranges { + cloned = append(cloned, r.Clone()) + } + return cloned +} diff --git a/planner/util/path.go b/planner/util/path.go index c283c6ffb3278..23cf19f72871c 100644 --- a/planner/util/path.go +++ b/planner/util/path.go @@ -23,6 +23,7 @@ import ( "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/collate" "github.com/pingcap/tidb/util/ranger" + "golang.org/x/exp/slices" ) // AccessPath indicates the way we access a table: by using single index, or by using multiple indexes, @@ -49,6 +50,10 @@ type AccessPath struct { // PartialIndexPaths store all index access paths. // If there are extra filters, store them in TableFilters. PartialIndexPaths []*AccessPath + // IndexMergeIsIntersection means whether it's intersection type or union type IndexMerge path. + // It's only valid for a IndexMerge path. + // Intersection type is for expressions connected by `AND` and union type is for `OR`. + IndexMergeIsIntersection bool StoreType kv.StoreType @@ -66,6 +71,41 @@ type AccessPath struct { IsUkShardIndexPath bool } +// Clone returns a deep copy of the original AccessPath. +// Note that we rely on the Expression.Clone(), (*IndexInfo).Clone() and (*Range).Clone() in this method, so there are +// some fields like FieldType are not deep-copied. +func (path *AccessPath) Clone() *AccessPath { + ret := &AccessPath{ + Index: path.Index.Clone(), + FullIdxCols: CloneCols(path.FullIdxCols), + FullIdxColLens: slices.Clone(path.FullIdxColLens), + IdxCols: CloneCols(path.IdxCols), + IdxColLens: slices.Clone(path.IdxColLens), + ConstCols: slices.Clone(path.ConstCols), + Ranges: CloneRanges(path.Ranges), + CountAfterAccess: path.CountAfterAccess, + CountAfterIndex: path.CountAfterIndex, + AccessConds: CloneExprs(path.AccessConds), + EqCondCount: path.EqCondCount, + EqOrInCondCount: path.EqOrInCondCount, + IndexFilters: CloneExprs(path.IndexFilters), + TableFilters: CloneExprs(path.TableFilters), + IndexMergeIsIntersection: path.IndexMergeIsIntersection, + PartialIndexPaths: nil, + StoreType: path.StoreType, + IsDNFCond: path.IsDNFCond, + IsIntHandlePath: path.IsIntHandlePath, + IsCommonHandlePath: path.IsCommonHandlePath, + Forced: path.Forced, + IsSingleScan: path.IsSingleScan, + IsUkShardIndexPath: path.IsUkShardIndexPath, + } + for _, partialPath := range path.PartialIndexPaths { + ret.PartialIndexPaths = append(ret.PartialIndexPaths, partialPath.Clone()) + } + return ret +} + // IsTablePath returns true if it's IntHandlePath or CommonHandlePath. func (path *AccessPath) IsTablePath() bool { return path.IsIntHandlePath || path.IsCommonHandlePath diff --git a/privilege/BUILD.bazel b/privilege/BUILD.bazel index ec4d5d50cbe89..d85b91614612e 100644 --- a/privilege/BUILD.bazel +++ b/privilege/BUILD.bazel @@ -9,6 +9,7 @@ go_library( "//parser/auth", "//parser/mysql", "//sessionctx", + "//sessionctx/variable", "//types", ], ) diff --git a/privilege/privilege.go b/privilege/privilege.go index b557ce2f1ca8b..320340e5f38d1 100644 --- a/privilege/privilege.go +++ b/privilege/privilege.go @@ -15,11 +15,10 @@ package privilege import ( - "crypto/tls" - "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/types" ) @@ -60,7 +59,7 @@ type Manager interface { // ConnectionVerification verifies user privilege for connection. // Requires exact match on user name and host name. - ConnectionVerification(user *auth.UserIdentity, authUser, authHost string, auth, salt []byte, tlsState *tls.ConnectionState) error + ConnectionVerification(user *auth.UserIdentity, authUser, authHost string, auth, salt []byte, sessionVars *variable.SessionVars) error // GetAuthWithoutVerification uses to get auth name without verification. // Requires exact match on user name and host name. @@ -91,7 +90,10 @@ type Manager interface { // IsDynamicPrivilege returns if a privilege is in the list of privileges. IsDynamicPrivilege(privNameInUpper string) bool - // Get the authentication plugin for a user + // GetAuthPluginForConnection gets the authentication plugin used in connection establishment. + GetAuthPluginForConnection(user, host string) (string, error) + + // GetAuthPlugin gets the authentication plugin for the account identified by the user and host GetAuthPlugin(user, host string) (string, error) } diff --git a/privilege/privileges/cache.go b/privilege/privileges/cache.go index 086231e4773a4..f821387e2a1b4 100644 --- a/privilege/privileges/cache.go +++ b/privilege/privileges/cache.go @@ -66,7 +66,7 @@ const ( References_priv,Alter_priv,Execute_priv,Index_priv,Create_view_priv,Show_view_priv, Create_role_priv,Drop_role_priv,Create_tmp_table_priv,Lock_tables_priv,Create_routine_priv, Alter_routine_priv,Event_priv,Shutdown_priv,Reload_priv,File_priv,Config_priv,Repl_client_priv,Repl_slave_priv, - Account_locked,Plugin,Token_issuer,User_attributes FROM mysql.user` + Account_locked,Plugin,Token_issuer,User_attributes,password_expired,password_last_changed,password_lifetime FROM mysql.user` sqlLoadGlobalGrantsTable = `SELECT HIGH_PRIORITY Host,User,Priv,With_Grant_Option FROM mysql.global_grants` ) @@ -102,6 +102,9 @@ type UserRecord struct { AuthPlugin string AuthTokenIssuer string Email string + PasswordExpired bool + PasswordLastChanged time.Time + PasswordLifeTime int64 } // NewUserRecord return a UserRecord, only use for unit test. @@ -656,15 +659,6 @@ func (p *MySQLPrivilege) decodeUserTableRow(row chunk.Row, fs []*ast.ResultField } else { value.AuthPlugin = mysql.AuthNativePassword } - case f.Column.GetType() == mysql.TypeEnum: - if row.GetEnum(i).String() != "Y" { - continue - } - priv, ok := mysql.Col2PrivType[f.ColumnAsName.O] - if !ok { - return errInvalidPrivilegeType.GenWithStack(f.ColumnAsName.O) - } - value.Privileges |= priv case f.ColumnAsName.L == "token_issuer": value.AuthTokenIssuer = row.GetString(i) case f.ColumnAsName.L == "user_attributes": @@ -683,6 +677,32 @@ func (p *MySQLPrivilege) decodeUserTableRow(row chunk.Row, fs []*ast.ResultField } value.Email = email } + case f.ColumnAsName.L == "password_expired": + if row.GetEnum(i).String() == "Y" { + value.PasswordExpired = true + } + case f.ColumnAsName.L == "password_last_changed": + t := row.GetTime(i) + gotime, err := t.GoTime(time.Local) + if err != nil { + return err + } + value.PasswordLastChanged = gotime + case f.ColumnAsName.L == "password_lifetime": + if row.IsNull(i) { + value.PasswordLifeTime = -1 + continue + } + value.PasswordLifeTime = row.GetInt64(i) + case f.Column.GetType() == mysql.TypeEnum: + if row.GetEnum(i).String() != "Y" { + continue + } + priv, ok := mysql.Col2PrivType[f.ColumnAsName.O] + if !ok { + return errInvalidPrivilegeType.GenWithStack(f.ColumnAsName.O) + } + value.Privileges |= priv default: value.assignUserOrHost(row, i, f) } diff --git a/privilege/privileges/cache_test.go b/privilege/privileges/cache_test.go index c611c80d99b16..0feefaafa6bff 100644 --- a/privilege/privileges/cache_test.go +++ b/privilege/privileges/cache_test.go @@ -17,6 +17,7 @@ package privileges_test import ( "fmt" "testing" + "time" "github.com/pingcap/tidb/parser/auth" "github.com/pingcap/tidb/parser/mysql" @@ -43,6 +44,8 @@ func TestLoadUserTable(t *testing.T) { tk.MustExec(`INSERT INTO mysql.user (Host, User, authentication_string, Update_priv, Show_db_priv, References_priv) VALUES ("%", "root11", "", "Y", "Y", "Y")`) tk.MustExec(`INSERT INTO mysql.user (Host, User, authentication_string, Create_user_priv, Index_priv, Execute_priv, Create_view_priv, Show_view_priv, Show_db_priv, Super_priv, Trigger_priv) VALUES ("%", "root111", "", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y")`) tk.MustExec(`INSERT INTO mysql.user (Host, User, user_attributes, token_issuer) VALUES ("%", "root1111", "{\"metadata\": {\"email\": \"user@pingcap.com\"}}", "")`) + tk.MustExec(`INSERT INTO mysql.user (Host, User, password_expired, password_last_changed, password_lifetime) VALUES ("%", "root2", "Y", "2022-10-10 12:00:00", 3)`) + tk.MustExec(`INSERT INTO mysql.user (Host, User, password_expired, password_last_changed) VALUES ("%", "root3", "N", "2022-10-10 12:00:00")`) p = privileges.MySQLPrivilege{} require.NoError(t, p.LoadUserTable(tk.Session())) @@ -56,6 +59,12 @@ func TestLoadUserTable(t *testing.T) { require.Equal(t, mysql.CreateUserPriv|mysql.IndexPriv|mysql.ExecutePriv|mysql.CreateViewPriv|mysql.ShowViewPriv|mysql.ShowDBPriv|mysql.SuperPriv|mysql.TriggerPriv, user[3].Privileges) require.Equal(t, "user@pingcap.com", user[4].Email) require.Equal(t, "", user[4].AuthTokenIssuer) + require.Equal(t, true, user[5].PasswordExpired) + require.Equal(t, time.Date(2022, 10, 10, 12, 0, 0, 0, time.Local), user[5].PasswordLastChanged) + require.Equal(t, int64(3), user[5].PasswordLifeTime) + require.Equal(t, false, user[6].PasswordExpired) + require.Equal(t, time.Date(2022, 10, 10, 12, 0, 0, 0, time.Local), user[6].PasswordLastChanged) + require.Equal(t, int64(-1), user[6].PasswordLifeTime) } func TestLoadGlobalPrivTable(t *testing.T) { @@ -412,12 +421,14 @@ func TestAbnormalMySQLTable(t *testing.T) { max_user_connections int(11) unsigned NOT NULL DEFAULT '0', plugin char(64) COLLATE utf8_bin DEFAULT 'mysql_native_password', authentication_string text COLLATE utf8_bin, - password_expired enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', token_issuer varchar(255), user_attributes json, + password_expired ENUM('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', + password_last_changed TIMESTAMP DEFAULT CURRENT_TIMESTAMP(), + password_lifetime SMALLINT UNSIGNED, PRIMARY KEY (Host,User) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges';`) - tk.MustExec(`INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','','N', '', 'null'); + tk.MustExec(`INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','', '', 'null', 'N', current_timestamp(), null); `) var p privileges.MySQLPrivilege require.NoError(t, p.LoadUserTable(tk.Session())) diff --git a/privilege/privileges/errors.go b/privilege/privileges/errors.go index 4b9ecd48417ca..17e028ea91251 100644 --- a/privilege/privileges/errors.go +++ b/privilege/privileges/errors.go @@ -19,11 +19,19 @@ import ( "github.com/pingcap/tidb/util/dbterror" ) +// ErrInSandBoxMode is used to indicate that the session is in sandbox mode. +type ErrInSandBoxMode struct{} + +func (e *ErrInSandBoxMode) Error() string { + return "The session will enable sandbox mode" +} + // error definitions. var ( - errInvalidPrivilegeType = dbterror.ClassPrivilege.NewStd(mysql.ErrInvalidPrivilegeType) - ErrNonexistingGrant = dbterror.ClassPrivilege.NewStd(mysql.ErrNonexistingGrant) - errLoadPrivilege = dbterror.ClassPrivilege.NewStd(mysql.ErrLoadPrivilege) - ErrAccessDenied = dbterror.ClassPrivilege.NewStd(mysql.ErrAccessDenied) - errAccountHasBeenLocked = dbterror.ClassPrivilege.NewStd(mysql.ErrAccountHasBeenLocked) + errInvalidPrivilegeType = dbterror.ClassPrivilege.NewStd(mysql.ErrInvalidPrivilegeType) + ErrNonexistingGrant = dbterror.ClassPrivilege.NewStd(mysql.ErrNonexistingGrant) + errLoadPrivilege = dbterror.ClassPrivilege.NewStd(mysql.ErrLoadPrivilege) + ErrAccessDenied = dbterror.ClassPrivilege.NewStd(mysql.ErrAccessDenied) + errAccountHasBeenLocked = dbterror.ClassPrivilege.NewStd(mysql.ErrAccountHasBeenLocked) + ErrMustChangePasswordLogin = dbterror.ClassPrivilege.NewStd(mysql.ErrMustChangePasswordLogin) ) diff --git a/privilege/privileges/privileges.go b/privilege/privileges/privileges.go index e983b81f0a976..72bbae74454ce 100644 --- a/privilege/privileges/privileges.go +++ b/privilege/privileges/privileges.go @@ -19,6 +19,7 @@ import ( "crypto/x509" "errors" "fmt" + "strconv" "strings" "sync" "time" @@ -31,6 +32,7 @@ import ( "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/privilege" "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessionctx/variable" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util" "github.com/pingcap/tidb/util/hack" @@ -250,8 +252,8 @@ func (p *UserPrivileges) GetEncodedPassword(user, host string) string { return "" } -// GetAuthPlugin gets the authentication plugin for the account identified by the user and host -func (p *UserPrivileges) GetAuthPlugin(user, host string) (string, error) { +// GetAuthPluginForConnection gets the authentication plugin used in connection establishment. +func (p *UserPrivileges) GetAuthPluginForConnection(user, host string) (string, error) { if SkipWithGrant { return mysql.AuthNativePassword, nil } @@ -276,6 +278,22 @@ func (p *UserPrivileges) GetAuthPlugin(user, host string) (string, error) { return "", errors.New("Failed to get plugin for user") } +// GetAuthPlugin gets the authentication plugin for the account identified by the user and host +func (p *UserPrivileges) GetAuthPlugin(user, host string) (string, error) { + if SkipWithGrant { + return mysql.AuthNativePassword, nil + } + mysqlPriv := p.Handle.Get() + record := mysqlPriv.connectionVerification(user, host) + if record == nil { + return "", errors.New("Failed to get user record") + } + if !p.isValidHash(record) { + return "", errors.New("Failed to get plugin for user") + } + return record.AuthPlugin, nil +} + // MatchIdentity implements the Manager interface. func (p *UserPrivileges) MatchIdentity(user, host string, skipNameResolve bool) (u string, h string, success bool) { if SkipWithGrant { @@ -355,8 +373,39 @@ func checkAuthTokenClaims(claims map[string]interface{}, record *UserRecord, tok return nil } +// CheckPasswordExpired checks whether the password has been expired. +func (*UserPrivileges) CheckPasswordExpired(sessionVars *variable.SessionVars, record *UserRecord) (bool, error) { + isSandBoxModeEnabled := variable.IsSandBoxModeEnabled.Load() + if record.PasswordExpired { + if isSandBoxModeEnabled { + return true, nil + } + return false, ErrMustChangePasswordLogin.GenWithStackByArgs() + } + if record.PasswordLifeTime != 0 { + lifeTime := record.PasswordLifeTime + if lifeTime == -1 { + pwdLifeTimeStr, err := sessionVars.GlobalVarsAccessor.GetGlobalSysVar(variable.DefaultPasswordLifetime) + if err != nil { + return false, err + } + lifeTime, err = strconv.ParseInt(pwdLifeTimeStr, 10, 64) + if err != nil { + return false, err + } + } + if lifeTime > 0 && record.PasswordLastChanged.AddDate(0, 0, int(lifeTime)).Before(time.Now()) { + if isSandBoxModeEnabled { + return true, nil + } + return false, ErrMustChangePasswordLogin.GenWithStackByArgs() + } + } + return false, nil +} + // ConnectionVerification implements the Manager interface. -func (p *UserPrivileges) ConnectionVerification(user *auth.UserIdentity, authUser, authHost string, authentication, salt []byte, tlsState *tls.ConnectionState) error { +func (p *UserPrivileges) ConnectionVerification(user *auth.UserIdentity, authUser, authHost string, authentication, salt []byte, sessionVars *variable.SessionVars) error { hasPassword := "YES" if len(authentication) == 0 { hasPassword = "NO" @@ -377,7 +426,7 @@ func (p *UserPrivileges) ConnectionVerification(user *auth.UserIdentity, authUse globalPriv := mysqlPriv.matchGlobalPriv(authUser, authHost) if globalPriv != nil { - if !p.checkSSL(globalPriv, tlsState) { + if !p.checkSSL(globalPriv, sessionVars.TLSConnectionState) { logutil.BgLogger().Error("global priv check ssl fail", zap.String("authUser", authUser), zap.String("authHost", authHost)) return ErrAccessDenied.FastGenByArgs(user.Username, user.Hostname, hasPassword) @@ -452,8 +501,16 @@ func (p *UserPrivileges) ConnectionVerification(user *auth.UserIdentity, authUse return errAccountHasBeenLocked.FastGenByArgs(user.Username, user.Hostname) } + sandBoxMode, err := p.CheckPasswordExpired(sessionVars, record) + if err != nil { + return err + } + p.user = authUser p.host = record.Host + if sandBoxMode { + return &ErrInSandBoxMode{} + } return nil } diff --git a/privilege/privileges/privileges_test.go b/privilege/privileges/privileges_test.go index 210e524385e16..4d83db171b7f6 100644 --- a/privilege/privileges/privileges_test.go +++ b/privilege/privileges/privileges_test.go @@ -25,6 +25,7 @@ import ( "os" "strings" "testing" + "time" "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/errno" @@ -2963,3 +2964,129 @@ func TestIssue37488(t *testing.T) { tk.MustQuery("select current_user()").Check(testkit.Rows("dba_test@192.168.%")) tk.MustExec("DROP TABLE IF EXISTS a;") // succ } + +func TestCheckPasswordExpired(t *testing.T) { + sessionVars := variable.NewSessionVars(nil) + sessionVars.GlobalVarsAccessor = variable.NewMockGlobalAccessor4Tests() + record := privileges.NewUserRecord("%", "root") + userPrivilege := privileges.NewUserPrivileges(privileges.NewHandle(), nil) + + record.PasswordExpired = true + _, err := userPrivilege.CheckPasswordExpired(sessionVars, &record) + require.ErrorContains(t, err, "Your password has expired. To log in you must change it using a client that supports expired passwords") + + record.PasswordExpired = false + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.DefaultPasswordLifetime, "2") + require.NoError(t, err) + // use default_password_lifetime + record.PasswordLifeTime = -1 + record.PasswordLastChanged = time.Now().AddDate(0, 0, -2) + time.Sleep(time.Second) + _, err = userPrivilege.CheckPasswordExpired(sessionVars, &record) + require.ErrorContains(t, err, "Your password has expired. To log in you must change it using a client that supports expired passwords") + record.PasswordLastChanged = time.Now().AddDate(0, 0, -1) + _, err = userPrivilege.CheckPasswordExpired(sessionVars, &record) + require.NoError(t, err) + + // never expire + record.PasswordLifeTime = 0 + record.PasswordLastChanged = time.Now().AddDate(0, 0, -10) + _, err = userPrivilege.CheckPasswordExpired(sessionVars, &record) + require.NoError(t, err) + + // expire with the specified time + record.PasswordLifeTime = 3 + record.PasswordLastChanged = time.Now().AddDate(0, 0, -3) + time.Sleep(time.Second) + _, err = userPrivilege.CheckPasswordExpired(sessionVars, &record) + require.ErrorContains(t, err, "Your password has expired. To log in you must change it using a client that supports expired passwords") + record.PasswordLastChanged = time.Now().AddDate(0, 0, -2) + _, err = userPrivilege.CheckPasswordExpired(sessionVars, &record) + require.NoError(t, err) +} + +func TestPasswordExpireWithoutSandBoxMode(t *testing.T) { + store := createStoreAndPrepareDB(t) + rootTk := testkit.NewTestKit(t, store) + rootTk.MustExec(`CREATE USER 'testuser'@'localhost' PASSWORD EXPIRE`) + + // PASSWORD EXPIRE + user := &auth.UserIdentity{Username: "testuser", Hostname: "localhost"} + tk := testkit.NewTestKit(t, store) + err := tk.Session().Auth(user, nil, nil) + require.ErrorContains(t, err, "Your password has expired") + + // PASSWORD EXPIRE NEVER + rootTk.MustExec(`ALTER USER 'testuser'@'localhost' IDENTIFIED BY '' PASSWORD EXPIRE NEVER`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + + // PASSWORD EXPIRE INTERVAL N DAY + rootTk.MustExec(`ALTER USER 'testuser'@'localhost' PASSWORD EXPIRE INTERVAL 2 DAY`) + rootTk.MustExec(`UPDATE mysql.user SET password_last_changed = (now() - INTERVAL 1 DAY) where user='testuser'`) + rootTk.MustExec(`FLUSH PRIVILEGES`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + rootTk.MustExec(`UPDATE mysql.user SET password_last_changed = (now() - INTERVAL 2 DAY) where user='testuser'`) + rootTk.MustExec(`FLUSH PRIVILEGES`) + time.Sleep(2 * time.Second) + err = tk.Session().Auth(user, nil, nil) + require.ErrorContains(t, err, "Your password has expired") + + // PASSWORD EXPIRE DEFAULT + rootTk.MustExec(`ALTER USER 'testuser'@'localhost' PASSWORD EXPIRE DEFAULT`) + rootTk.MustExec(`SET GLOBAL default_password_lifetime = 2`) + err = tk.Session().Auth(user, nil, nil) + require.ErrorContains(t, err, "Your password has expired") + rootTk.MustExec(`SET GLOBAL default_password_lifetime = 3`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) +} + +func TestPasswordExpireWithSandBoxMode(t *testing.T) { + store := createStoreAndPrepareDB(t) + rootTk := testkit.NewTestKit(t, store) + rootTk.MustExec(`CREATE USER 'testuser'@'localhost' PASSWORD EXPIRE`) + variable.IsSandBoxModeEnabled.Store(true) + + // PASSWORD EXPIRE + user := &auth.UserIdentity{Username: "testuser", Hostname: "localhost"} + tk := testkit.NewTestKit(t, store) + err := tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + require.True(t, tk.Session().InSandBoxMode()) + tk.Session().DisableSandBoxMode() + + // PASSWORD EXPIRE NEVER + rootTk.MustExec(`ALTER USER 'testuser'@'localhost' IDENTIFIED BY '' PASSWORD EXPIRE NEVER`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + require.False(t, tk.Session().InSandBoxMode()) + + // PASSWORD EXPIRE INTERVAL N DAY + rootTk.MustExec(`ALTER USER 'testuser'@'localhost' PASSWORD EXPIRE INTERVAL 2 DAY`) + rootTk.MustExec(`UPDATE mysql.user SET password_last_changed = (now() - INTERVAL 1 DAY) where user='testuser'`) + rootTk.MustExec(`FLUSH PRIVILEGES`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + require.False(t, tk.Session().InSandBoxMode()) + rootTk.MustExec(`UPDATE mysql.user SET password_last_changed = (now() - INTERVAL 2 DAY) where user='testuser'`) + rootTk.MustExec(`FLUSH PRIVILEGES`) + time.Sleep(2 * time.Second) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + require.True(t, tk.Session().InSandBoxMode()) + tk.Session().DisableSandBoxMode() + + // PASSWORD EXPIRE DEFAULT + rootTk.MustExec(`ALTER USER 'testuser'@'localhost' PASSWORD EXPIRE DEFAULT`) + rootTk.MustExec(`SET GLOBAL default_password_lifetime = 2`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + require.True(t, tk.Session().InSandBoxMode()) + tk.Session().DisableSandBoxMode() + rootTk.MustExec(`SET GLOBAL default_password_lifetime = 3`) + err = tk.Session().Auth(user, nil, nil) + require.NoError(t, err) + require.False(t, tk.Session().InSandBoxMode()) +} diff --git a/roadmap.md b/roadmap.md index 92de0e67c7f34..e311b85b932a0 100644 --- a/roadmap.md +++ b/roadmap.md @@ -2,6 +2,8 @@ This roadmap brings you what's coming in the 1-year future, so you can see the new features or improvements in advance, follow the progress, learn about the key milestones on the way, and give feedback as the development work goes on. In the course of development, this roadmap is subject to change based on user needs and feedback. If you have a feature request or want to prioritize a feature, please file an issue on [GitHub](https://github.com/pingcap/tidb/issues). +✅: The feature or improvement is already available in TiDB. + > **Safe harbor statement:** > > *Any unreleased features discussed or referenced in our documents, roadmaps, blogs, websites, press releases, or public statements that are not currently available ("unreleased features") are subject to change at our discretion and may not be delivered as planned or at all. Customers acknowledge that purchase decisions are solely based on features and functions that are currently available, and that PingCAP is not obliged to deliver aforementioned unreleased features as part of the contractual agreement unless otherwise stated.* @@ -19,7 +21,7 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n Scalability & Stability - Support resource management framework. +

  • ✅ Optimize resource isolation in heavy read scenarios.
  • Optimize resource isolation in heavy (batch) write scenarios.
  • Provide resource management capability for background process.
  • Support resource management framework.
  • Provide a basic resource management and control framework to effectively control the resource squeeze of background tasks on front-end tasks (user operations), and improve cluster stability.
  • Refine resource management in the multi-service aggregation scenario.
@@ -31,13 +33,12 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n Support dynamic region size adjustment (heterogeneous) and huge region size for scenarios with fast business growth and a large amount of data. - SQL - Support the JSON function.
  • Expression index
  • Multi-value index
  • Partial index
  • -
+ SQL + Support the JSON function.
  • ✅ Expression index
  • Multi-value index
  • TiFlash supports JSON function pushdown
In business scenarios that require flexible schema definitions, the application can use JSON to store information for ODS, transaction indicators, commodities, game characters, and props. - Support cluster-level flashback. +
  • ✅ Support cluster-level flashback.
  • ✅ Support database-level flashback.
In game rollback scenarios, the flashback can be used to achieve a fast rollback of the current cluster. This solves the common problems in the gaming industry such as version errors and bugs. @@ -45,7 +46,15 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n This feature enables automatic data cleanup in limited data archiving scenarios. - Implement a DDL parallel execution framework. + Support foreign key constraints. + Supports foreign key constraints compatible with MySQL syntax, and provides DB-level referential integrity check capabilities. + + + Support non-transactional DML for insert and update operations. + + + +
  • Implement a DDL parallel execution framework.
  • Provide DDL pause/resume capability.
Implement a distributed parallel DDL execution framework, so that DDL tasks executed by only one TiDB Owner node can be coordinated and executed by all TiDB nodes in the cluster. Improve the execution speed of DDL tasks and cluster resource utilization.
By converting the execution of DDL tasks to distributed mode, this feature accelerates the execution speed of DDL tasks and improves the utilization of computing resources in the entire cluster. At present, DDL tasks that need to improve the speed include large table indexing and lossy column type modification tasks. @@ -54,14 +63,9 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n

Support INSERT INTO SELECT.

  • Easily write analysis results in TiFlash back to TiDB.
  • Provide complete ACID transactions, more convenient and reliable than general ETL solutions.
  • Set a hard limit on the threshold of intermediate result size, and report an error if the threshold is exceeded.
  • Support fully distributed transactions, and remove or relax the limit on the intermediate result size.

These features combined enable a way to materialize intermediate results. The analysis results can be easily reused, which reduces unnecessary ad-hoc queries, improves the performance of BI and other applications (by pulling results directly) and reduces system load (by avoiding duplicated computation), thereby improving the overall data pipeline efficiency and reducing costs. It will make TiFlash an online service.

- Support FastScan for TiFlash. + ✅ Support FastScan for TiFlash.
  • FastScan provides weak consistency but faster table scan capability.
  • Further optimize the join order, shuffle, and exchange algorithms to improve computing efficiency and boost performance for complex queries.
  • Add a fine-grained data sharding mechanism to optimize the COUNT(DISTINCT) function and high cardinality aggregation.

This feature improves the basic computing capability of TiFlash, and optimizes the performance and reliability of the underlying algorithms of the columnar storage and MPP engine.

- - Proxy - Support TiDB proxy. - Implement automatic load balancing so that upgrading a cluster or modifying configurations does not affect the application. After scaling out or scaling in the cluster, the application can automatically rebalance the connection without reconnecting.
In scenarios such as upgrades and configuration changes, TiDB proxy is more business-friendly. - Maintenance Support rule-based SQL blocklist. @@ -82,9 +86,13 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n - SQL tuning for HTAP workloads -
  • Provide SQL execution information from the perspective of applications.
  • Provide suggestions on optimizing SQL for TiFlash and TiKV in HTAP workloads.
-
  • Provide a dashboard that displays a SQL execution overview from the perspective of applications in HTAP workloads.
  • For one or several HTAP scenarios, provide suggestions on SQL optimization.
+ SQL tuning for HTAP workloads + Provide SQL execution information from the perspective of applications. + Provide a dashboard that displays a SQL execution overview from the perspective of applications in HTAP workloads. + + + Provide suggestions on optimizing SQL for TiFlash and TiKV in HTAP workloads. + For one or several HTAP scenarios, provide suggestions on SQL optimization. @@ -112,8 +120,8 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n Data replication to downstream systems via TiCDC - Reduce TiCDC replication latency in daily operations. - When TiKV, TiDB, PD, or TiCDC nodes are offline in a planned maintenance window, the replication latency of TiCDC can be reduced to less than 10 seconds. + Improve TiCDC scalability and reduce replication latency. + Increase TiCDC's scalability by spanning data changes for single table to multiple TiCDC nodes and reduce replication latency by removing sorting stage. Support replicating data to object storage such as S3. @@ -121,8 +129,8 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n Data migration - TiDB Lightning supports table-level and partition-level online data import. - TiDB Lightning provides comprehensive table-level and partition-level data import capabilities. + Continuous data verification during data migration. + DM supports online data verification during migration from MySQL compatible database to TiDB. @@ -138,11 +146,6 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n - - Log redaction -
  • Support data redaction in execution plans in TiDB Dashboard.
  • Enhance data redaction in TiDB-related logs.
- Redact sensitive information in execution plans and various logs to enhance the security of user data. - Password complexity check A strong password is required. @@ -154,9 +157,19 @@ This roadmap brings you what's coming in the 1-year future, so you can see the n Reduce the security risk of password cracking or leakage caused by using the same password for a long time. - Password policy management - TiDB provides a password reuse mechanism and brute-force cracking prevention capabilities. - TiDB supports password policy management to protect password security. + Password reuse policy + TiDB provides a password reuse policy. + Restrict password reuse and improve password security. + + + Password anti-brute force cracking + Accounts will be locked in case of consecutive incorrect passwords. + Lock the account under continuous wrong passwords to prevent the password from being cracked by brute force. + + + Log redaction +
  • Support data redaction in execution plans in TiDB Dashboard.
  • Enhance data redaction in TiDB-related logs.
+ Redact sensitive information in execution plans and various logs to enhance the security of user data. Column-level access control diff --git a/server/conn.go b/server/conn.go index b319679fdbf14..f5ae429b8f18b 100644 --- a/server/conn.go +++ b/server/conn.go @@ -1391,6 +1391,11 @@ func (cc *clientConn) dispatch(ctx context.Context, data []byte) error { return cc.handleChangeUser(ctx, data) // ComBinlogDump, ComTableDump, ComConnectOut, ComRegisterSlave case mysql.ComStmtPrepare: + // For issue 39132, same as ComQuery + if len(data) > 0 && data[len(data)-1] == 0 { + data = data[:len(data)-1] + dataStr = string(hack.String(data)) + } return cc.handleStmtPrepare(ctx, dataStr) case mysql.ComStmtExecute: return cc.handleStmtExecute(ctx, data) diff --git a/server/conn_test.go b/server/conn_test.go index 84db98f9e1827..fcfdc2c9b5a42 100644 --- a/server/conn_test.go +++ b/server/conn_test.go @@ -584,6 +584,33 @@ func TestDispatchClientProtocol41(t *testing.T) { testDispatch(t, inputs, mysql.ClientProtocol41) } +func TestQueryEndWithZero(t *testing.T) { + inputs := []dispatchInput{ + { + com: mysql.ComStmtPrepare, + in: append([]byte("select 1"), 0x0), + err: nil, + out: []byte{ + 0xc, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x18, + 0x0, 0x0, 0x1, 0x3, 0x64, 0x65, 0x66, 0x0, 0x0, 0x0, 0x1, 0x31, 0x1, 0x31, 0xc, 0x3f, + 0x0, 0x1, 0x0, 0x0, 0x0, 0x8, 0x81, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x2, 0xfe, + }, + }, + { + com: mysql.ComQuery, + in: append([]byte("select 1"), 0x0), + err: nil, + out: []byte{ + 0x1, 0x0, 0x0, 0x3, 0x1, 0x18, 0x0, 0x0, 0x4, 0x3, 0x64, 0x65, 0x66, 0x0, 0x0, 0x0, + 0x1, 0x31, 0x1, 0x31, 0xc, 0x3f, 0x0, 0x1, 0x0, 0x0, 0x0, 0x8, 0x81, 0x0, 0x0, 0x0, + 0x0, 0x1, 0x0, 0x0, 0x5, 0xfe, 0x2, 0x0, 0x0, 0x6, 0x1, 0x31, 0x1, 0x0, 0x0, 0x7, 0xfe, + }, + }, + } + + testDispatch(t, inputs, 0) +} + func testDispatch(t *testing.T, inputs []dispatchInput, capability uint32) { store := testkit.CreateMockStore(t) diff --git a/server/driver_tidb.go b/server/driver_tidb.go index 9c24a273b3f8c..0c329826d0683 100644 --- a/server/driver_tidb.go +++ b/server/driver_tidb.go @@ -223,10 +223,24 @@ func (tc *TiDBContext) WarningCount() uint16 { return tc.GetSessionVars().StmtCtx.WarningCount() } +func (tc *TiDBContext) checkSandBoxMode(stmt ast.StmtNode) error { + if !tc.Session.GetSessionVars().InRestrictedSQL && tc.InSandBoxMode() { + switch stmt.(type) { + case *ast.SetPwdStmt, *ast.AlterUserStmt: + default: + return errMustChangePassword.GenWithStackByArgs() + } + } + return nil +} + // ExecuteStmt implements QueryCtx interface. func (tc *TiDBContext) ExecuteStmt(ctx context.Context, stmt ast.StmtNode) (ResultSet, error) { var rs sqlexec.RecordSet var err error + if err = tc.checkSandBoxMode(stmt); err != nil { + return nil, err + } if s, ok := stmt.(*ast.NonTransactionalDMLStmt); ok { rs, err = session.HandleNonTransactionalDML(ctx, s, tc.Session) } else { diff --git a/server/http_status.go b/server/http_status.go index 5f02e1762d4ac..fef13b2c3fd2f 100644 --- a/server/http_status.go +++ b/server/http_status.go @@ -477,7 +477,9 @@ func (s *Server) startStatusServerAndRPCServer(serverMux *http.ServeMux) { logutil.BgLogger().Error("tikv store not etcd background", zap.Error(err)) break } - service := autoid.New(s.statusListener.Addr().String(), etcdAddr, store, ebd.TLSConfig()) + selfAddr := fmt.Sprintf("%s:%d", s.cfg.AdvertiseAddress, s.cfg.Status.StatusPort) + service := autoid.New(selfAddr, etcdAddr, store, ebd.TLSConfig()) + logutil.BgLogger().Info("register auto service at", zap.String("addr", selfAddr)) pb.RegisterAutoIDAllocServer(grpcServer, service) s.autoIDService = service break diff --git a/server/server.go b/server/server.go index 1b1cce5e882a5..0ad9f5270d25d 100644 --- a/server/server.go +++ b/server/server.go @@ -110,6 +110,7 @@ var ( errNewAbortingConnection = dbterror.ClassServer.NewStd(errno.ErrNewAbortingConnection) errNotSupportedAuthMode = dbterror.ClassServer.NewStd(errno.ErrNotSupportedAuthMode) errNetPacketTooLarge = dbterror.ClassServer.NewStd(errno.ErrNetPacketTooLarge) + errMustChangePassword = dbterror.ClassServer.NewStd(errno.ErrMustChangePassword) ) // DefaultCapability is the capability of the server when it is created using the default configuration. diff --git a/server/tidb_test.go b/server/tidb_test.go index fc176613768ba..e8ffadc4fcdfa 100644 --- a/server/tidb_test.go +++ b/server/tidb_test.go @@ -2781,11 +2781,11 @@ func (l *connEventLogs) check(fn func()) { fn() } -func (l *connEventLogs) waitConnDisconnected() error { +func (l *connEventLogs) waitEvent(tp extension.ConnEventTp) error { totalSleep := 0 for { l.Lock() - if l.types[len(l.types)-1] == extension.ConnDisconnected { + if l.types[len(l.types)-1] == tp { l.Unlock() return nil } @@ -2812,6 +2812,8 @@ func TestExtensionConnEvent(t *testing.T) { require.NoError(t, extension.Setup()) ts := createTidbTestSuite(t) + // createTidbTestSuite create an inner connection, so wait the previous connection closed + require.NoError(t, logs.waitEvent(extension.ConnDisconnected)) // test for login success logs.reset() @@ -2828,6 +2830,7 @@ func TestExtensionConnEvent(t *testing.T) { }() var expectedConn2 variable.ConnectionInfo + require.NoError(t, logs.waitEvent(extension.ConnHandshakeAccepted)) logs.check(func() { require.Equal(t, []extension.ConnEventTp{ extension.ConnConnected, @@ -2861,7 +2864,7 @@ func TestExtensionConnEvent(t *testing.T) { require.NoError(t, conn.Close()) require.NoError(t, db.Close()) - require.NoError(t, logs.waitConnDisconnected()) + require.NoError(t, logs.waitEvent(extension.ConnDisconnected)) logs.check(func() { require.Equal(t, 3, len(logs.infos)) require.Equal(t, 1, len(logs.infos[2].ActiveRoles)) @@ -2889,6 +2892,7 @@ func TestExtensionConnEvent(t *testing.T) { _, err = db.Conn(context.Background()) require.Error(t, err) + require.NoError(t, logs.waitEvent(extension.ConnDisconnected)) logs.check(func() { require.Equal(t, []extension.ConnEventTp{ extension.ConnConnected, @@ -2914,3 +2918,35 @@ func TestExtensionConnEvent(t *testing.T) { require.Equal(t, expectedConn2, *(logs.infos[1].ConnectionInfo)) }) } + +func TestSandBoxMode(t *testing.T) { + ts := createTidbTestSuite(t) + qctx, err := ts.tidbdrv.OpenCtx(uint64(0), 0, uint8(tmysql.DefaultCollationID), "test", nil, nil) + require.NoError(t, err) + _, err = Execute(context.Background(), qctx, "create user testuser;") + require.NoError(t, err) + qctx.Session.GetSessionVars().User = &auth.UserIdentity{Username: "testuser", AuthUsername: "testuser", AuthHostname: "%"} + + alterPwdStmts := []string{ + "set password = '1234';", + "alter user testuser identified by '1234';", + "alter user current_user() identified by '1234';", + } + + for _, alterPwdStmt := range alterPwdStmts { + require.False(t, qctx.Session.InSandBoxMode()) + _, err = Execute(context.Background(), qctx, "select 1;") + require.NoError(t, err) + + qctx.Session.EnableSandBoxMode() + require.True(t, qctx.Session.InSandBoxMode()) + _, err = Execute(context.Background(), qctx, "select 1;") + require.Error(t, err) + _, err = Execute(context.Background(), qctx, "alter user testuser identified with 'mysql_native_password';") + require.Error(t, err) + _, err = Execute(context.Background(), qctx, alterPwdStmt) + require.NoError(t, err) + _, err = Execute(context.Background(), qctx, "select 1;") + require.NoError(t, err) + } +} diff --git a/session/BUILD.bazel b/session/BUILD.bazel index 2a79502bf985e..d0d68a9142035 100644 --- a/session/BUILD.bazel +++ b/session/BUILD.bazel @@ -136,6 +136,7 @@ go_test( "//expression", "//kv", "//meta", + "//meta/autoid", "//parser/ast", "//parser/auth", "//parser/model", diff --git a/session/bootstrap.go b/session/bootstrap.go index 57660af7fa808..eb5923fa84ac2 100644 --- a/session/bootstrap.go +++ b/session/bootstrap.go @@ -37,6 +37,7 @@ import ( "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/infoschema" "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/meta" "github.com/pingcap/tidb/owner" "github.com/pingcap/tidb/parser" "github.com/pingcap/tidb/parser/auth" @@ -59,6 +60,10 @@ import ( const ( // CreateUserTable is the SQL statement creates User table in system db. + // WARNING: There are some limitations on altering the schema of mysql.user table. + // Adding columns that are nullable or have default values is permitted. + // But operations like dropping or renaming columns may break the compatibility with BR. + // REFERENCE ISSUE: https://github.com/pingcap/tidb/issues/38785 CreateUserTable = `CREATE TABLE IF NOT EXISTS mysql.user ( Host CHAR(255), User CHAR(32), @@ -97,8 +102,13 @@ const ( FILE_priv ENUM('N','Y') NOT NULL DEFAULT 'N', Config_priv ENUM('N','Y') NOT NULL DEFAULT 'N', Create_Tablespace_Priv ENUM('N','Y') NOT NULL DEFAULT 'N', + Password_reuse_history smallint unsigned DEFAULT NULL, + Password_reuse_time smallint unsigned DEFAULT NULL, User_attributes json, Token_issuer VARCHAR(255), + Password_expired ENUM('N','Y') NOT NULL DEFAULT 'N', + Password_last_changed TIMESTAMP DEFAULT CURRENT_TIMESTAMP(), + Password_lifetime SMALLINT UNSIGNED DEFAULT NULL, PRIMARY KEY (Host, User));` // CreateGlobalPrivTable is the SQL statement creates Global scope privilege table in system db. CreateGlobalPrivTable = "CREATE TABLE IF NOT EXISTS mysql.global_priv (" + @@ -264,6 +274,8 @@ const ( charset TEXT NOT NULL, collation TEXT NOT NULL, source VARCHAR(10) NOT NULL DEFAULT 'unknown', + sql_digest varchar(64), + plan_digest varchar(64), INDEX sql_index(original_sql(700),default_db(68)) COMMENT "accelerate the speed when add global binding query", INDEX time_index(update_time) COMMENT "accelerate the speed when querying with last update time" ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;` @@ -455,11 +467,45 @@ const ( count bigint(64) NOT NULL DEFAULT 0, version bigint(64) UNSIGNED NOT NULL DEFAULT 0, PRIMARY KEY (table_id));` + + // CreatePasswordHistory is a table save history passwd. + CreatePasswordHistory = `CREATE TABLE IF NOT EXISTS mysql.password_history ( + Host char(255) NOT NULL DEFAULT '', + User char(32) NOT NULL DEFAULT '', + Password_timestamp timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), + Password text, + PRIMARY KEY (Host,User,Password_timestamp ) + ) COMMENT='Password history for user accounts' ` + + // CreateTTLTableStatus is a table about TTL task schedule + CreateTTLTableStatus = `CREATE TABLE IF NOT EXISTS mysql.tidb_ttl_table_status ( + table_id bigint(64) PRIMARY KEY, + parent_table_id bigint(64), + table_statistics text DEFAULT NULL, + last_job_id varchar(64) DEFAULT NULL, + last_job_start_time timestamp NULL DEFAULT NULL, + last_job_finish_time timestamp NULL DEFAULT NULL, + last_job_ttl_expire timestamp NULL DEFAULT NULL, + last_job_summary text DEFAULT NULL, + current_job_id varchar(64) DEFAULT NULL, + current_job_owner_id varchar(64) DEFAULT NULL, + current_job_owner_addr varchar(256) DEFAULT NULL, + current_job_owner_hb_time timestamp, + current_job_start_time timestamp NULL DEFAULT NULL, + current_job_ttl_expire timestamp NULL DEFAULT NULL, + current_job_state text DEFAULT NULL, + current_job_status varchar(64) DEFAULT NULL, + current_job_status_update_time timestamp NULL DEFAULT NULL);` ) // bootstrap initiates system DB for a store. func bootstrap(s Session) { startTime := time.Now() + err := InitMDLVariableForBootstrap(s.GetStore()) + if err != nil { + logutil.BgLogger().Fatal("init metadata lock error", + zap.Error(err)) + } dom := domain.GetDomain(s) for { b, err := checkBootstrapped(s) @@ -675,11 +721,22 @@ const ( version102 = 102 // version103 adds the tables mysql.stats_table_locked version103 = 103 + // version104 add `sql_digest` and `plan_digest` to `bind_info` + version104 = 104 + // version105 insert "tidb_cost_model_version|1" to mysql.GLOBAL_VARIABLES if there is no tidb_cost_model_version. + // This will only happens when we upgrade a cluster before 6.0. + version105 = 105 + // version106 add mysql.password_history, and Password_reuse_history, Password_reuse_time into mysql.user. + version106 = 106 + // version107 add columns related to password expiration into mysql.user + version107 = 107 + // version107 adds the table tidb_ttl_table_status + version108 = 108 ) // currentBootstrapVersion is defined as a variable, so we can modify its value for testing. // please make sure this is the largest version -var currentBootstrapVersion int64 = version103 +var currentBootstrapVersion int64 = version107 // DDL owner key's expired time is ManagerSessionTTL seconds, we should wait the time and give more time to have a chance to finish it. var internalSQLTimeout = owner.ManagerSessionTTL + 15 @@ -787,6 +844,11 @@ var ( upgradeToVer101, upgradeToVer102, upgradeToVer103, + upgradeToVer104, + upgradeToVer105, + upgradeToVer106, + upgradeToVer107, + upgradeToVer108, } ) @@ -858,7 +920,7 @@ func upgrade(s Session) { if ver < version92 { useConcurrentDDL, err := checkOwnerVersion(context.Background(), domain.GetDomain(s)) if err != nil { - logutil.BgLogger().Fatal("[Upgrade] upgrade failed", zap.Error(err)) + logutil.BgLogger().Fatal("[upgrade] upgrade failed", zap.Error(err)) } if !useConcurrentDDL { // Use another variable DDLForce2Queue but not EnableConcurrentDDL since in upgrade it may set global variable, the initial step will @@ -867,12 +929,19 @@ func upgrade(s Session) { } } // Do upgrade works then update bootstrap version. - needEnableMdl := upgradeToVer99Before(s, ver) + isNull, err := InitMDLVariableForUpgrade(s.GetStore()) + if err != nil { + logutil.BgLogger().Fatal("[upgrade] init metadata lock failed", zap.Error(err)) + } + + if isNull { + upgradeToVer99Before(s) + } for _, upgrade := range bootstrapVersion { upgrade(s, ver) } - if needEnableMdl { - upgradeToVer99After(s, ver) + if isNull { + upgradeToVer99After(s) } variable.DDLForce2Queue.Store(false) @@ -899,7 +968,7 @@ func upgrade(s Session) { // It is already bootstrapped/upgraded by a higher version TiDB server. return } - logutil.BgLogger().Fatal("[Upgrade] upgrade failed", + logutil.BgLogger().Fatal("[upgrade] upgrade failed", zap.Int64("from", ver), zap.Int64("to", currentBootstrapVersion), zap.Error(err)) @@ -1553,7 +1622,8 @@ func initBindInfoTable(s Session) { } func insertBuiltinBindInfoRow(s Session) { - mustExecute(s, `INSERT HIGH_PRIORITY INTO mysql.bind_info VALUES (%?, %?, "mysql", %?, "0000-00-00 00:00:00", "0000-00-00 00:00:00", "", "", %?)`, + mustExecute(s, `INSERT HIGH_PRIORITY INTO mysql.bind_info(original_sql, bind_sql, default_db, status, create_time, update_time, charset, collation, source) + VALUES (%?, %?, "mysql", %?, "0000-00-00 00:00:00", "0000-00-00 00:00:00", "", "", %?)`, bindinfo.BuiltinPseudoSQL4BindLock, bindinfo.BuiltinPseudoSQL4BindLock, bindinfo.Builtin, bindinfo.Builtin, ) } @@ -2021,6 +2091,30 @@ func upgradeToVer98(s Session, ver int64) { doReentrantDDL(s, "ALTER TABLE mysql.user ADD COLUMN IF NOT EXISTS `Token_issuer` varchar(255)") } +func upgradeToVer99Before(s Session) { + mustExecute(s, "INSERT HIGH_PRIORITY IGNORE INTO %n.%n VALUES (%?, %?);", + mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBEnableMDL, 0) +} + +func upgradeToVer99After(s Session) { + sql := fmt.Sprintf("UPDATE HIGH_PRIORITY %[1]s.%[2]s SET VARIABLE_VALUE = %[4]d WHERE VARIABLE_NAME = '%[3]s'", + mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBEnableMDL, 1) + mustExecute(s, sql) + err := kv.RunInNewTxn(kv.WithInternalSourceType(context.Background(), kv.InternalTxnDDL), s.GetStore(), true, func(ctx context.Context, txn kv.Transaction) error { + t := meta.NewMeta(txn) + return t.SetMetadataLock(true) + }) + terror.MustNil(err) +} + +func upgradeToVer100(s Session, ver int64) { + if ver >= version100 { + return + } + valStr := strconv.Itoa(int(config.GetGlobalConfig().Performance.ServerMemoryQuota)) + importConfigOption(s, "performance.server-memory-quota", variable.TiDBServerMemoryLimit, valStr) +} + func upgradeToVer101(s Session, ver int64) { if ver >= version101 { return @@ -2042,43 +2136,58 @@ func upgradeToVer103(s Session, ver int64) { doReentrantDDL(s, CreateStatsTableLocked) } -func upgradeToVer99Before(s Session, ver int64) bool { - if ver >= version99 { - return false +func upgradeToVer104(s Session, ver int64) { + if ver >= version104 { + return + } + + doReentrantDDL(s, "ALTER TABLE mysql.bind_info ADD COLUMN IF NOT EXISTS `sql_digest` varchar(64)") + doReentrantDDL(s, "ALTER TABLE mysql.bind_info ADD COLUMN IF NOT EXISTS `plan_digest` varchar(64)") +} + +// For users that upgrade TiDB from a pre-6.0 version, we want to disable tidb cost model2 by default to keep plans unchanged. +func upgradeToVer105(s Session, ver int64) { + if ver >= version105 { + return } - // Check if tidb_enable_metadata_lock exists in mysql.GLOBAL_VARIABLES. - // If not, insert "tidb_enable_metadata_lock | 0" since concurrent DDL may not be enabled. ctx := kv.WithInternalSourceType(context.Background(), kv.InternalTxnBootstrap) rs, err := s.ExecuteInternal(ctx, "SELECT VARIABLE_VALUE FROM %n.%n WHERE VARIABLE_NAME=%?;", - mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBEnableMDL) + mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBCostModelVersion) terror.MustNil(err) req := rs.NewChunk(nil) err = rs.Next(ctx, req) terror.MustNil(err) if req.NumRows() != 0 { - return false + return } mustExecute(s, "INSERT HIGH_PRIORITY IGNORE INTO %n.%n VALUES (%?, %?);", - mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBEnableMDL, 0) - return true + mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBCostModelVersion, "1") } -func upgradeToVer99After(s Session, ver int64) { - if ver >= version99 { +func upgradeToVer106(s Session, ver int64) { + if ver >= version106 { return } - sql := fmt.Sprintf("UPDATE HIGH_PRIORITY %[1]s.%[2]s SET VARIABLE_VALUE = %[4]d WHERE VARIABLE_NAME = '%[3]s'", - mysql.SystemDB, mysql.GlobalVariablesTable, variable.TiDBEnableMDL, 1) - mustExecute(s, sql) + doReentrantDDL(s, CreatePasswordHistory) + doReentrantDDL(s, "Alter table mysql.user add COLUMN IF NOT EXISTS `Password_reuse_history` smallint unsigned DEFAULT NULL AFTER `Create_Tablespace_Priv` ") + doReentrantDDL(s, "Alter table mysql.user add COLUMN IF NOT EXISTS `Password_reuse_time` smallint unsigned DEFAULT NULL AFTER `Password_reuse_history`") } -func upgradeToVer100(s Session, ver int64) { - if ver >= version100 { +func upgradeToVer107(s Session, ver int64) { + if ver >= version107 { return } - valStr := strconv.Itoa(int(config.GetGlobalConfig().Performance.ServerMemoryQuota)) - importConfigOption(s, "performance.server-memory-quota", variable.TiDBServerMemoryLimit, valStr) + doReentrantDDL(s, "ALTER TABLE mysql.user ADD COLUMN IF NOT EXISTS `Password_expired` ENUM('N','Y') NOT NULL DEFAULT 'N',"+ + "ADD COLUMN IF NOT EXISTS `Password_last_changed` TIMESTAMP DEFAULT CURRENT_TIMESTAMP(),"+ + "ADD COLUMN IF NOT EXISTS `Password_lifetime` SMALLINT UNSIGNED DEFAULT NULL") +} + +func upgradeToVer108(s Session, ver int64) { + if ver >= version108 { + return + } + doReentrantDDL(s, CreateTTLTableStatus) } func writeOOMAction(s Session) { @@ -2116,6 +2225,8 @@ func doDDLWorks(s Session) { mustExecute(s, "CREATE DATABASE IF NOT EXISTS %n", mysql.SystemDB) // Create user table. mustExecute(s, CreateUserTable) + // Create password history. + mustExecute(s, CreatePasswordHistory) // Create privilege tables. mustExecute(s, CreateGlobalPrivTable) mustExecute(s, CreateDBPrivTable) @@ -2183,6 +2294,8 @@ func doDDLWorks(s Session) { mustExecute(s, CreatePlanReplayerTaskTable) // Create stats_meta_table_locked table mustExecute(s, CreateStatsTableLocked) + // Create tidb_ttl_table_status table + mustExecute(s, CreateTTLTableStatus) } // inTestSuite checks if we are bootstrapping in the context of tests. @@ -2203,10 +2316,14 @@ func doDMLWorks(s Session) { if err != nil { logutil.BgLogger().Fatal("failed to read current user. unable to secure bootstrap.", zap.Error(err)) } - mustExecute(s, `INSERT HIGH_PRIORITY INTO mysql.user VALUES + mustExecute(s, `INSERT HIGH_PRIORITY INTO mysql.user (Host,User,authentication_string,plugin,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,Process_priv,Grant_priv,References_priv,Alter_priv,Show_db_priv, + Super_priv,Create_tmp_table_priv,Lock_tables_priv,Execute_priv,Create_view_priv,Show_view_priv,Create_routine_priv,Alter_routine_priv,Index_priv,Create_user_priv,Event_priv,Repl_slave_priv,Repl_client_priv,Trigger_priv,Create_role_priv,Drop_role_priv,Account_locked, + Shutdown_priv,Reload_priv,FILE_priv,Config_priv,Create_Tablespace_Priv,User_attributes,Token_issuer) VALUES ("localhost", "root", %?, "auth_socket", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "N", "Y", "Y", "Y", "Y", "Y", null, "")`, u.Username) } else { - mustExecute(s, `INSERT HIGH_PRIORITY INTO mysql.user VALUES + mustExecute(s, `INSERT HIGH_PRIORITY INTO mysql.user (Host,User,authentication_string,plugin,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,Process_priv,Grant_priv,References_priv,Alter_priv,Show_db_priv, + Super_priv,Create_tmp_table_priv,Lock_tables_priv,Execute_priv,Create_view_priv,Show_view_priv,Create_routine_priv,Alter_routine_priv,Index_priv,Create_user_priv,Event_priv,Repl_slave_priv,Repl_client_priv,Trigger_priv,Create_role_priv,Drop_role_priv,Account_locked, + Shutdown_priv,Reload_priv,FILE_priv,Config_priv,Create_Tablespace_Priv,User_attributes,Token_issuer) VALUES ("%", "root", "", "mysql_native_password", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "N", "Y", "Y", "Y", "Y", "Y", null, "")`) } @@ -2269,8 +2386,6 @@ func doDMLWorks(s Session) { writeNewCollationParameter(s, config.GetGlobalConfig().NewCollationsEnabledOnFirstBootstrap) - writeDefaultExprPushDownBlacklist(s) - writeStmtSummaryVars(s) ctx := kv.WithInternalSourceType(context.Background(), kv.InternalTxnBootstrap) diff --git a/session/bootstrap_test.go b/session/bootstrap_test.go index 53076c82a0d85..f7ced237b0170 100644 --- a/session/bootstrap_test.go +++ b/session/bootstrap_test.go @@ -20,6 +20,7 @@ import ( "strconv" "strings" "testing" + "time" "github.com/pingcap/tidb/bindinfo" "github.com/pingcap/tidb/domain" @@ -55,7 +56,7 @@ func TestBootstrap(t *testing.T) { require.NotEqual(t, 0, req.NumRows()) rows := statistics.RowToDatums(req.GetRow(0), r.Fields()) - match(t, rows, `%`, "root", "", "mysql_native_password", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "N", "Y", "Y", "Y", "Y", "Y", nil, "") + match(t, rows, `%`, "root", "", "mysql_native_password", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "N", "Y", "Y", "Y", "Y", "Y", nil, nil, nil, "", "N", time.Now(), nil) r.Close() require.NoError(t, se.Auth(&auth.UserIdentity{Username: "root", Hostname: "anyhost"}, []byte(""), []byte(""))) @@ -114,6 +115,12 @@ func TestBootstrap(t *testing.T) { se, err = CreateSession4Test(store) require.NoError(t, err) doDMLWorks(se) + r = mustExec(t, se, "select * from mysql.expr_pushdown_blacklist where name = 'date_add'") + req = r.NewChunk(nil) + err = r.Next(ctx, req) + require.NoError(t, err) + require.Equal(t, 0, req.NumRows()) + se.Close() } func globalVarsCount() int64 { @@ -179,7 +186,7 @@ func TestBootstrapWithError(t *testing.T) { row := req.GetRow(0) rows := statistics.RowToDatums(row, r.Fields()) - match(t, rows, `%`, "root", "", "mysql_native_password", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "N", "Y", "Y", "Y", "Y", "Y", nil, "") + match(t, rows, `%`, "root", "", "mysql_native_password", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "Y", "N", "Y", "Y", "Y", "Y", "Y", nil, nil, nil, "", "N", time.Now(), nil) require.NoError(t, r.Close()) mustExec(t, se, "USE test") @@ -209,6 +216,9 @@ func TestBootstrapWithError(t *testing.T) { require.Equal(t, 1, row.Len()) require.Equal(t, []byte("True"), row.GetBytes(0)) require.NoError(t, r.Close()) + + // Check tidb_ttl_table_status table + mustExec(t, se, "SELECT * from mysql.tidb_ttl_table_status").Close() } // TestUpgrade tests upgrading @@ -515,6 +525,9 @@ func TestUpdateBindInfo(t *testing.T) { defer func() { require.NoError(t, store.Close()) }() defer dom.Close() se := createSessionAndSetID(t, store) + + mustExec(t, se, "alter table mysql.bind_info drop column if exists plan_digest") + mustExec(t, se, "alter table mysql.bind_info drop column if exists sql_digest") for _, bindCase := range bindCases { sql := fmt.Sprintf("insert into mysql.bind_info values('%s', '%s', '%s', 'enabled', '2021-01-04 14:50:58.257', '2021-01-04 14:50:58.257', 'utf8', 'utf8_general_ci', 'manual')", bindCase.originText, @@ -553,6 +566,9 @@ func TestUpdateDuplicateBindInfo(t *testing.T) { defer func() { require.NoError(t, store.Close()) }() defer dom.Close() se := createSessionAndSetID(t, store) + mustExec(t, se, "alter table mysql.bind_info drop column if exists plan_digest") + mustExec(t, se, "alter table mysql.bind_info drop column if exists sql_digest") + mustExec(t, se, `insert into mysql.bind_info values('select * from t', 'select /*+ use_index(t, idx_a)*/ * from t', 'test', 'enabled', '2021-01-04 14:50:58.257', '2021-01-04 14:50:58.257', 'utf8', 'utf8_general_ci', 'manual')`) // The latest one. mustExec(t, se, `insert into mysql.bind_info values('select * from test . t', 'select /*+ use_index(t, idx_b)*/ * from test.t', 'test', 'enabled', '2021-01-04 14:50:58.257', '2021-01-09 14:50:58.257', 'utf8', 'utf8_general_ci', 'manual')`) @@ -1010,6 +1026,9 @@ func TestUpgradeToVer85(t *testing.T) { defer func() { require.NoError(t, store.Close()) }() defer dom.Close() se := createSessionAndSetID(t, store) + mustExec(t, se, "alter table mysql.bind_info drop column if exists plan_digest") + mustExec(t, se, "alter table mysql.bind_info drop column if exists sql_digest") + mustExec(t, se, `insert into mysql.bind_info values('select * from t', 'select /*+ use_index(t, idx_a)*/ * from t', 'test', 'using', '2021-01-04 14:50:58.257', '2021-01-04 14:50:58.257', 'utf8', 'utf8_general_ci', 'manual')`) mustExec(t, se, `insert into mysql.bind_info values('select * from t1', 'select /*+ use_index(t1, idx_a)*/ * from t1', 'test', 'enabled', '2021-01-05 14:50:58.257', '2021-01-05 14:50:58.257', 'utf8', 'utf8_general_ci', 'manual')`) mustExec(t, se, `insert into mysql.bind_info values('select * from t2', 'select /*+ use_index(t2, idx_a)*/ * from t2', 'test', 'disabled', '2021-01-06 14:50:58.257', '2021-01-06 14:50:58.257', 'utf8', 'utf8_general_ci', 'manual')`) @@ -1113,3 +1132,146 @@ func TestTiDBOptRangeMaxSizeWhenUpgrading(t *testing.T) { require.Equal(t, 1, row.Len()) require.Equal(t, "0", row.GetString(0)) } + +func TestTiDBCostModelInNewCluster(t *testing.T) { + store, err := mockstore.NewMockStore() + require.NoError(t, err) + // Indicates we are in a new cluster. + require.Equal(t, int64(notBootstrapped), getStoreBootstrapVersion(store)) + dom, err := BootstrapSession(store) + require.NoError(t, err) + defer func() { require.NoError(t, store.Close()) }() + defer dom.Close() + se := createSessionAndSetID(t, store) + + // In a new created cluster(above 6.5+), tidb_cost_model_version is 2 by default. + mustExec(t, se, "use test;") + r := mustExec(t, se, "select @@tidb_cost_model_version;") + require.NotNil(t, r) + + ctx := context.Background() + chk := r.NewChunk(nil) + err = r.Next(ctx, chk) + require.NoError(t, err) + require.Equal(t, 1, chk.NumRows()) + row := chk.GetRow(0) + require.Equal(t, 1, row.Len()) + require.Equal(t, "2", row.GetString(0)) +} + +func TestTiDBCostModelUpgradeFrom300To650(t *testing.T) { + ctx := context.Background() + store, _ := createStoreAndBootstrap(t) + defer func() { require.NoError(t, store.Close()) }() + + // Upgrade from 3.0.0 to 6.5+. + ver300 := 33 + seV3 := createSessionAndSetID(t, store) + txn, err := store.Begin() + require.NoError(t, err) + m := meta.NewMeta(txn) + err = m.FinishBootstrap(int64(ver300)) + require.NoError(t, err) + err = txn.Commit(context.Background()) + require.NoError(t, err) + mustExec(t, seV3, fmt.Sprintf("update mysql.tidb set variable_value=%d where variable_name='tidb_server_version'", ver300)) + mustExec(t, seV3, fmt.Sprintf("delete from mysql.GLOBAL_VARIABLES where variable_name='%s'", variable.TiDBCostModelVersion)) + mustExec(t, seV3, "commit") + unsetStoreBootstrapped(store.UUID()) + ver, err := getBootstrapVersion(seV3) + require.NoError(t, err) + require.Equal(t, int64(ver300), ver) + + // We are now in 3.0.0, check TiDBCostModelVersion should not exist. + res := mustExec(t, seV3, fmt.Sprintf("select * from mysql.GLOBAL_VARIABLES where variable_name='%s'", variable.TiDBCostModelVersion)) + chk := res.NewChunk(nil) + err = res.Next(ctx, chk) + require.NoError(t, err) + require.Equal(t, 0, chk.NumRows()) + + domCurVer, err := BootstrapSession(store) + require.NoError(t, err) + defer domCurVer.Close() + seCurVer := createSessionAndSetID(t, store) + ver, err = getBootstrapVersion(seCurVer) + require.NoError(t, err) + require.Equal(t, currentBootstrapVersion, ver) + + // We are now in 6.5+, TiDBCostModelVersion should be 1. + res = mustExec(t, seCurVer, "select @@tidb_cost_model_version") + chk = res.NewChunk(nil) + err = res.Next(ctx, chk) + require.NoError(t, err) + require.Equal(t, 1, chk.NumRows()) + row := chk.GetRow(0) + require.Equal(t, 1, row.Len()) + require.Equal(t, "1", row.GetString(0)) +} + +func TestTiDBCostModelUpgradeFrom610To650(t *testing.T) { + for i := 0; i < 2; i++ { + func() { + ctx := context.Background() + store, dom := createStoreAndBootstrap(t) + defer func() { require.NoError(t, store.Close()) }() + + // upgrade from 6.1 to 6.5+. + ver61 := 91 + seV61 := createSessionAndSetID(t, store) + txn, err := store.Begin() + require.NoError(t, err) + m := meta.NewMeta(txn) + err = m.FinishBootstrap(int64(ver61)) + require.NoError(t, err) + err = txn.Commit(context.Background()) + require.NoError(t, err) + mustExec(t, seV61, fmt.Sprintf("update mysql.tidb set variable_value=%d where variable_name='tidb_server_version'", ver61)) + mustExec(t, seV61, fmt.Sprintf("update mysql.GLOBAL_VARIABLES set variable_value='%s' where variable_name='%s'", "1", variable.TiDBCostModelVersion)) + mustExec(t, seV61, "commit") + unsetStoreBootstrapped(store.UUID()) + ver, err := getBootstrapVersion(seV61) + require.NoError(t, err) + require.Equal(t, int64(ver61), ver) + + // We are now in 6.1, tidb_cost_model_version is 1. + res := mustExec(t, seV61, fmt.Sprintf("select * from mysql.GLOBAL_VARIABLES where variable_name='%s'", variable.TiDBCostModelVersion)) + chk := res.NewChunk(nil) + err = res.Next(ctx, chk) + require.NoError(t, err) + require.Equal(t, 1, chk.NumRows()) + row := chk.GetRow(0) + require.Equal(t, 2, row.Len()) + require.Equal(t, "1", row.GetString(1)) + + if i == 0 { + // For the first time, We set tidb_cost_model_version to 2. + // And after upgrade to 6.5, tidb_cost_model_version should be 2. + // For the second it should be 1. + mustExec(t, seV61, "set global tidb_cost_model_version = 2") + } + dom.Close() + // Upgrade to 6.5. + domCurVer, err := BootstrapSession(store) + require.NoError(t, err) + defer domCurVer.Close() + seCurVer := createSessionAndSetID(t, store) + ver, err = getBootstrapVersion(seCurVer) + require.NoError(t, err) + require.Equal(t, currentBootstrapVersion, ver) + + // We are now in 6.5. + res = mustExec(t, seCurVer, "select @@tidb_cost_model_version") + chk = res.NewChunk(nil) + err = res.Next(ctx, chk) + require.NoError(t, err) + require.Equal(t, 1, chk.NumRows()) + row = chk.GetRow(0) + require.Equal(t, 1, row.Len()) + if i == 0 { + require.Equal(t, "2", row.GetString(0)) + } else { + require.Equal(t, "1", row.GetString(0)) + } + }() + } +} diff --git a/session/main_test.go b/session/main_test.go index d44927580e55a..790903eb68c8a 100644 --- a/session/main_test.go +++ b/session/main_test.go @@ -129,8 +129,12 @@ func exec(se Session, sql string, args ...interface{}) (sqlexec.RecordSet, error func match(t *testing.T, row []types.Datum, expected ...interface{}) { require.Len(t, row, len(expected)) for i := range row { + if _, ok := expected[i].(time.Time); ok { + // Since password_last_changed is set to default current_timestamp, we pass this check. + continue + } got := fmt.Sprintf("%v", row[i].GetValue()) need := fmt.Sprintf("%v", expected[i]) - require.Equal(t, need, got) + require.Equal(t, need, got, i) } } diff --git a/session/nontransactional.go b/session/nontransactional.go index 779b2b7042094..83a660f827ab6 100644 --- a/session/nontransactional.go +++ b/session/nontransactional.go @@ -33,6 +33,7 @@ import ( "github.com/pingcap/tidb/parser/opcode" "github.com/pingcap/tidb/planner/core" "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/table" "github.com/pingcap/tidb/types" driver "github.com/pingcap/tidb/types/parser_driver" "github.com/pingcap/tidb/util/chunk" @@ -52,6 +53,7 @@ var ErrNonTransactionalJobFailure = dbterror.ClassSession.NewStd(errno.ErrNonTra var ( nonTransactionalDeleteCount = metrics.NonTransactionalDMLCount.With(prometheus.Labels{metrics.LblType: "delete"}) nonTransactionalInsertCount = metrics.NonTransactionalDMLCount.With(prometheus.Labels{metrics.LblType: "insert"}) + nonTransactionalUpdateCount = metrics.NonTransactionalDMLCount.With(prometheus.Labels{metrics.LblType: "update"}) ) // job: handle keys in [start, end] @@ -95,10 +97,16 @@ func HandleNonTransactionalDML(ctx context.Context, stmt *ast.NonTransactionalDM if err := checkConstraint(stmt, se); err != nil { return nil, err } - tableName, selectSQL, shardColumnInfo, err := buildSelectSQL(stmt, se) + + tableName, selectSQL, shardColumnInfo, tableSources, err := buildSelectSQL(stmt, se) if err != nil { return nil, err } + + if err := checkConstraintWithShardColumn(se, stmt, tableName, shardColumnInfo, tableSources); err != nil { + return nil, err + } + if stmt.DryRun == ast.DryRunQuery { return buildDryRunResults(stmt.DryRun, []string{selectSQL}, se.GetSessionVars().BatchSize.MaxChunkSize) } @@ -124,6 +132,60 @@ func HandleNonTransactionalDML(ctx context.Context, stmt *ast.NonTransactionalDM return buildExecuteResults(ctx, jobs, se.GetSessionVars().BatchSize.MaxChunkSize, se.GetSessionVars().EnableRedactLog) } +// we require: +// (1) in an update statement, shard column cannot be updated +// +// Note: this is not a comprehensive check. +// We do this to help user prevent some easy mistakes, at an acceptable maintenance cost. +func checkConstraintWithShardColumn(se Session, stmt *ast.NonTransactionalDMLStmt, + tableName *ast.TableName, shardColumnInfo *model.ColumnInfo, tableSources []*ast.TableSource) error { + switch s := stmt.DMLStmt.(type) { + case *ast.UpdateStmt: + if err := checkUpdateShardColumn(se, s.List, shardColumnInfo, tableName, tableSources, true); err != nil { + return err + } + case *ast.InsertStmt: + // FIXME: is it possible to happen? + // `insert into t select * from t on duplicate key update id = id + 1` will return an ambiguous column error? + if err := checkUpdateShardColumn(se, s.OnDuplicate, shardColumnInfo, tableName, tableSources, false); err != nil { + return err + } + default: + } + return nil +} + +// shard column should not be updated. +func checkUpdateShardColumn(se Session, assignments []*ast.Assignment, shardColumnInfo *model.ColumnInfo, + tableName *ast.TableName, tableSources []*ast.TableSource, isUpdate bool) error { + // if the table has alias, the alias is used in assignments, and we should use aliased name to compare + aliasedShardColumnTableName := tableName.Name.L + for _, tableSource := range tableSources { + if tableSource.Source.(*ast.TableName).Name.L == aliasedShardColumnTableName && tableSource.AsName.L != "" { + aliasedShardColumnTableName = tableSource.AsName.L + } + } + + if shardColumnInfo == nil { + return nil + } + for _, assignment := range assignments { + sameDB := (assignment.Column.Schema.L == tableName.Schema.L) || + (assignment.Column.Schema.L == "" && tableName.Schema.L == se.GetSessionVars().CurrentDB) + if !sameDB { + continue + } + sameTable := (assignment.Column.Table.L == aliasedShardColumnTableName) || (isUpdate && len(tableSources) == 1) + if !sameTable { + continue + } + if assignment.Column.Name.L == shardColumnInfo.Name.L { + return errors.New("Non-transactional DML, shard column cannot be updated") + } + } + return nil +} + func checkConstraint(stmt *ast.NonTransactionalDMLStmt, se Session) error { sessVars := se.GetSessionVars() if !(sessVars.IsAutocommit() && !sessVars.InTxn()) { @@ -143,7 +205,7 @@ func checkConstraint(stmt *ast.NonTransactionalDMLStmt, se Session) error { switch s := stmt.DMLStmt.(type) { case *ast.DeleteStmt: - if err := checkTableRef(s.TableRefs); err != nil { + if err := checkTableRef(s.TableRefs, true); err != nil { return err } if err := checkReadClauses(s.Limit, s.Order); err != nil { @@ -151,11 +213,13 @@ func checkConstraint(stmt *ast.NonTransactionalDMLStmt, se Session) error { } nonTransactionalDeleteCount.Inc() case *ast.UpdateStmt: - // TODO: check: (1) single target table (2) more... - if s.Limit != nil { - return errors.New("Non-transactional update doesn't support limit") + if err := checkTableRef(s.TableRefs, true); err != nil { + return err } - // TODO: metrics + if err := checkReadClauses(s.Limit, s.Order); err != nil { + return err + } + nonTransactionalUpdateCount.Inc() case *ast.InsertStmt: if s.Select == nil { return errors.New("Non-transactional insert supports insert select stmt only") @@ -164,31 +228,12 @@ func checkConstraint(stmt *ast.NonTransactionalDMLStmt, se Session) error { if !ok { return errors.New("Non-transactional insert doesn't support non-select source") } - if err := checkTableRef(selectStmt.From); err != nil { + if err := checkTableRef(selectStmt.From, true); err != nil { return err } if err := checkReadClauses(selectStmt.Limit, selectStmt.OrderBy); err != nil { return err } - sourceTable, ok := selectStmt.From.TableRefs.Left.(*ast.TableSource) - if !ok { - return errors.New("Non-transactional insert must have a source table") - } - sourceName, ok := sourceTable.Source.(*ast.TableName) - if !ok { - return errors.New("Non-transaction insert must have s source table") - } - targetTable, ok := s.Table.TableRefs.Left.(*ast.TableSource) - if !ok { - return errors.New("Non-transactional insert must have a target table") - } - targetName, ok := targetTable.Source.(*ast.TableName) - if !ok { - return errors.New("Non-transactional insert must have a target table") - } - if sourceName.Name.L == targetName.Name.L { - return errors.New("Non-transactional insert doesn't support self-insert") - } nonTransactionalInsertCount.Inc() default: return errors.New("Unsupported DML type for non-transactional DML") @@ -197,11 +242,11 @@ func checkConstraint(stmt *ast.NonTransactionalDMLStmt, se Session) error { return nil } -func checkTableRef(t *ast.TableRefsClause) error { +func checkTableRef(t *ast.TableRefsClause, allowMultipleTables bool) error { if t == nil || t.TableRefs == nil || t.TableRefs.Left == nil { return errors.New("table reference is nil") } - if t.TableRefs.Right != nil { + if !allowMultipleTables && t.TableRefs.Right != nil { return errors.New("Non-transactional statements don't support multiple tables") } return nil @@ -501,24 +546,30 @@ func appendNewJob(jobs []job, id int, start types.Datum, end types.Datum, size i return jobs } -func buildSelectSQL(stmt *ast.NonTransactionalDMLStmt, se Session) (*ast.TableName, string, *model.ColumnInfo, error) { +func buildSelectSQL(stmt *ast.NonTransactionalDMLStmt, se Session) ( + *ast.TableName, string, *model.ColumnInfo, []*ast.TableSource, error) { // only use the first table - tableSource, ok := stmt.DMLStmt.TableSource() + join, ok := stmt.DMLStmt.TableRefsJoin() if !ok { - return nil, "", nil, errors.New("Non-transactional DML, table source not found") + return nil, "", nil, nil, errors.New("Non-transactional DML, table source not found") } - tableName, ok := tableSource.Source.(*ast.TableName) + tableSources := make([]*ast.TableSource, 0) + tableSources, err := collectTableSourcesInJoin(join, tableSources) + if err != nil { + return nil, "", nil, nil, err + } + if len(tableSources) == 0 { + return nil, "", nil, nil, errors.New("Non-transactional DML, no tables found in table refs") + } + leftMostTableSource := tableSources[0] + leftMostTableName, ok := leftMostTableSource.Source.(*ast.TableName) if !ok { - return nil, "", nil, errors.New("Non-transactional DML, table name not found") + return nil, "", nil, nil, errors.New("Non-transactional DML, table name not found") } - // the shard column must be indexed - indexed, shardColumnInfo, err := selectShardColumn(stmt, se, tableName, tableSource.AsName) + shardColumnInfo, tableName, err := selectShardColumn(stmt, se, tableSources, leftMostTableName, leftMostTableSource) if err != nil { - return nil, "", nil, err - } - if !indexed { - return nil, "", nil, errors.Errorf("Non-transactional DML, shard column %s is not indexed", stmt.ShardColumn.Name.L) + return nil, "", nil, nil, err } var sb strings.Builder @@ -530,7 +581,7 @@ func buildSelectSQL(stmt *ast.NonTransactionalDMLStmt, se Session) (*ast.TableNa format.RestoreStringWithoutCharset, &sb), ) if err != nil { - return nil, "", nil, errors.Annotate(err, "Failed to restore where clause in non-transactional DML") + return nil, "", nil, nil, errors.Annotate(err, "Failed to restore where clause in non-transactional DML") } } else { sb.WriteString("TRUE") @@ -538,57 +589,131 @@ func buildSelectSQL(stmt *ast.NonTransactionalDMLStmt, se Session) (*ast.TableNa // assure NULL values are placed first selectSQL := fmt.Sprintf("SELECT `%s` FROM `%s`.`%s` WHERE %s ORDER BY IF(ISNULL(`%s`),0,1),`%s`", stmt.ShardColumn.Name.O, tableName.DBInfo.Name.O, tableName.Name.O, sb.String(), stmt.ShardColumn.Name.O, stmt.ShardColumn.Name.O) - return tableName, selectSQL, shardColumnInfo, nil + return tableName, selectSQL, shardColumnInfo, tableSources, nil } -// it attempts to auto-select a shard column from handle if not specified, and fills back the corresponding info in the stmt, -// making it transparent to following steps -func selectShardColumn(stmt *ast.NonTransactionalDMLStmt, se Session, tableName *ast.TableName, tableAsName model.CIStr) (indexed bool, shardColumnInfo *model.ColumnInfo, err error) { - tbl, err := domain.GetDomain(se).InfoSchema().TableByName(tableName.Schema, tableName.Name) - if err != nil { - return false, nil, err - } - tableInfo := tbl.Meta() +func selectShardColumn(stmt *ast.NonTransactionalDMLStmt, se Session, tableSources []*ast.TableSource, + leftMostTableName *ast.TableName, leftMostTableSource *ast.TableSource) ( + *model.ColumnInfo, *ast.TableName, error) { + var indexed bool + var shardColumnInfo *model.ColumnInfo + var selectedTableName *ast.TableName - var shardColumnName string - if stmt.ShardColumn == nil { - // auto-detect shard column - if tbl.Meta().PKIsHandle { - shardColumnInfo = tableInfo.GetPkColInfo() - } else if tableInfo.IsCommonHandle { - for _, index := range tableInfo.Indices { - if index.Primary { - if len(index.Columns) == 1 { - shardColumnInfo = tableInfo.Columns[index.Columns[0].Offset] - break - } - // if the clustered index contains multiple columns, we cannot automatically choose a column as the shard column - return false, nil, errors.New("Non-transactional DML, the clustered index contains multiple columns. Please specify a shard column") + if len(tableSources) == 1 { + // single table + leftMostTable, err := domain.GetDomain(se).InfoSchema().TableByName(leftMostTableName.Schema, leftMostTableName.Name) + if err != nil { + return nil, nil, err + } + selectedTableName = leftMostTableName + indexed, shardColumnInfo, err = selectShardColumnFromTheOnlyTable( + stmt, leftMostTableName, leftMostTableSource.AsName, leftMostTable) + if err != nil { + return nil, nil, err + } + } else { + // multi table join + if stmt.ShardColumn == nil { + leftMostTable, err := domain.GetDomain(se).InfoSchema().TableByName(leftMostTableName.Schema, leftMostTableName.Name) + if err != nil { + return nil, nil, err + } + selectedTableName = leftMostTableName + indexed, shardColumnInfo, err = selectShardColumnAutomatically(stmt, leftMostTable, leftMostTableName, leftMostTableSource.AsName) + if err != nil { + return nil, nil, err + } + } else if stmt.ShardColumn.Schema.L != "" && stmt.ShardColumn.Table.L != "" && stmt.ShardColumn.Name.L != "" { + specifiedDbName := stmt.ShardColumn.Schema + specifiedTableName := stmt.ShardColumn.Table + specifiedColName := stmt.ShardColumn.Name + + // the specified table must be in the join + tableInJoin := false + var chosenTableName model.CIStr + for _, tableSource := range tableSources { + tableSourceName := tableSource.Source.(*ast.TableName) + tableSourceFinalTableName := tableSource.AsName // precedence: alias name, then table name + if tableSourceFinalTableName.O == "" { + tableSourceFinalTableName = tableSourceName.Name + } + if tableSourceName.Schema.L == specifiedDbName.L && tableSourceFinalTableName.L == specifiedTableName.L { + tableInJoin = true + selectedTableName = tableSourceName + chosenTableName = tableSourceName.Name + break } } - if shardColumnInfo == nil { - return false, nil, errors.New("Non-transactional DML, the clustered index is not found") + if !tableInJoin { + return nil, nil, + errors.Errorf( + "Non-transactional DML, shard column %s.%s.%s is not in the tables involved in the join", + specifiedDbName.L, specifiedTableName.L, specifiedColName.L, + ) } - } - shardColumnName := model.ExtraHandleName.L - if shardColumnInfo != nil { - shardColumnName = shardColumnInfo.Name.L + tbl, err := domain.GetDomain(se).InfoSchema().TableByName(specifiedDbName, chosenTableName) + if err != nil { + return nil, nil, err + } + indexed, shardColumnInfo, err = selectShardColumnByGivenName(specifiedColName.L, tbl) + if err != nil { + return nil, nil, err + } + } else { + return nil, nil, errors.New( + "Non-transactional DML, shard column must be fully specified (i.e. `BATCH ON dbname.tablename.colname`) when multiple tables are involved", + ) } + } + if !indexed { + return nil, nil, errors.Errorf("Non-transactional DML, shard column %s is not indexed", stmt.ShardColumn.Name.L) + } + return shardColumnInfo, selectedTableName, nil +} - outputTableName := tableName.Name - if tableAsName.L != "" { - outputTableName = tableAsName +func collectTableSourcesInJoin(node ast.ResultSetNode, tableSources []*ast.TableSource) ([]*ast.TableSource, error) { + if node == nil { + return tableSources, nil + } + switch x := node.(type) { + case *ast.Join: + var err error + tableSources, err = collectTableSourcesInJoin(x.Left, tableSources) + if err != nil { + return nil, err } - stmt.ShardColumn = &ast.ColumnName{ - Schema: tableName.Schema, - Table: outputTableName, // so that table alias works - Name: model.NewCIStr(shardColumnName), + tableSources, err = collectTableSourcesInJoin(x.Right, tableSources) + if err != nil { + return nil, err } - return true, shardColumnInfo, nil + case *ast.TableSource: + // assert it's a table name + if _, ok := x.Source.(*ast.TableName); !ok { + return nil, errors.New("Non-transactional DML, table name not found in join") + } + tableSources = append(tableSources, x) + default: + return nil, errors.Errorf("Non-transactional DML, unknown type %T in table refs", node) } - shardColumnName = stmt.ShardColumn.Name.L + return tableSources, nil +} +// it attempts to auto-select a shard column from handle if not specified, and fills back the corresponding info in the stmt, +// making it transparent to following steps +func selectShardColumnFromTheOnlyTable(stmt *ast.NonTransactionalDMLStmt, tableName *ast.TableName, + tableAsName model.CIStr, tbl table.Table) ( + indexed bool, shardColumnInfo *model.ColumnInfo, err error) { + if stmt.ShardColumn == nil { + return selectShardColumnAutomatically(stmt, tbl, tableName, tableAsName) + } + + return selectShardColumnByGivenName(stmt.ShardColumn.Name.L, tbl) +} + +func selectShardColumnByGivenName(shardColumnName string, tbl table.Table) ( + indexed bool, shardColumnInfo *model.ColumnInfo, err error) { + tableInfo := tbl.Meta() if shardColumnName == model.ExtraHandleName.L && !tableInfo.HasClusteredIndex() { return true, nil, nil } @@ -621,6 +746,46 @@ func selectShardColumn(stmt *ast.NonTransactionalDMLStmt, se Session, tableName return indexed, shardColumnInfo, nil } +func selectShardColumnAutomatically(stmt *ast.NonTransactionalDMLStmt, tbl table.Table, + tableName *ast.TableName, tableAsName model.CIStr) (bool, *model.ColumnInfo, error) { + // auto-detect shard column + var shardColumnInfo *model.ColumnInfo + tableInfo := tbl.Meta() + if tbl.Meta().PKIsHandle { + shardColumnInfo = tableInfo.GetPkColInfo() + } else if tableInfo.IsCommonHandle { + for _, index := range tableInfo.Indices { + if index.Primary { + if len(index.Columns) == 1 { + shardColumnInfo = tableInfo.Columns[index.Columns[0].Offset] + break + } + // if the clustered index contains multiple columns, we cannot automatically choose a column as the shard column + return false, nil, errors.New("Non-transactional DML, the clustered index contains multiple columns. Please specify a shard column") + } + } + if shardColumnInfo == nil { + return false, nil, errors.New("Non-transactional DML, the clustered index is not found") + } + } + + shardColumnName := model.ExtraHandleName.L + if shardColumnInfo != nil { + shardColumnName = shardColumnInfo.Name.L + } + + outputTableName := tableName.Name + if tableAsName.L != "" { + outputTableName = tableAsName + } + stmt.ShardColumn = &ast.ColumnName{ + Schema: tableName.Schema, + Table: outputTableName, // so that table alias works + Name: model.NewCIStr(shardColumnName), + } + return true, shardColumnInfo, nil +} + func buildDryRunResults(dryRunOption int, results []string, maxChunkSize int) (sqlexec.RecordSet, error) { var fieldName string if dryRunOption == ast.DryRunSplitDml { diff --git a/session/nontransactional_test.go b/session/nontransactional_test.go index 3281cd71bd4da..9eea25e46bfbb 100644 --- a/session/nontransactional_test.go +++ b/session/nontransactional_test.go @@ -722,9 +722,7 @@ func TestNonTransactionalWithCheckConstraint(t *testing.T) { err = tk.ExecToErr("batch limit 1 insert into t select 1, 1") require.EqualError(t, err, "table reference is nil") err = tk.ExecToErr("batch limit 1 insert into t select * from (select 1, 2) tmp") - require.EqualError(t, err, "Non-transaction insert must have s source table") - err = tk.ExecToErr("batch limit 1 insert into t select * from t") - require.EqualError(t, err, "Non-transactional insert doesn't support self-insert") + require.EqualError(t, err, "Non-transactional DML, table name not found in join") } func TestNonTransactionalWithOptimizerHints(t *testing.T) { @@ -879,3 +877,138 @@ func TestNonTransactionalWithShardOnUnsupportedTypes(t *testing.T) { require.Error(t, err) tk.MustQuery("select count(*) from t2").Check(testkit.Rows("1")) } + +func TestNonTransactionalWithJoin(t *testing.T) { + // insert + // BATCH ON t2.id LIMIT 10000 insert into t1 select id, name from t2 inner join t3 on t2.id = t3.id; + // insert into t1 select id, name from t2 inner join t3 on t2.id = t3.id where t2.id between 1 and 10000 + + // replace + // BATCH ON t1.id LIMIT 10000 replace into t3 + // select * from t1 left join t2 on t1.id = t2.id; + + // update + // BATCH ON t1.id LIMIT 10000 update t1 join t2 on t1.a=t2.a set t1.a=t1.a*1000; + // update t1 join t2 on t1.a=t2.a set t1.a=t1.a*1000 where t1.id between 1 and 10000; + + // delete + // BATCH ON pa.id LIMIT 10000 DELETE pa + // FROM pets_activities pa JOIN pets p ON pa.id = p.pet_id + // WHERE p.order > :order AND p.pet_id = :pet_id + // delete pa + // from pets_activities pa join pets p on pa.id = p.pet_id + // WHERE p.order > :order AND p.pet_id = :pet_id and pa.id between 1 and 10000; + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(id int, v1 int, v2 int, unique key (id))") + tk.MustExec("create table t2(id int, v int, key i1(id))") + tk.MustExec("create table t3(id int, v int, key i1(id))") + tk.MustExec("insert into t2 values (1, 2), (2, 3), (3, 4)") + tk.MustExec("insert into t3 values (1, 4), (2, 5), (4, 6)") + + tk.MustExec("batch on test.t2.id limit 1 insert into t select t2.id, t2.v, t3.v from t2 join t3 on t2.id=t3.id") + tk.MustQuery("select * from t").Check(testkit.Rows("1 2 4", "2 3 5")) + + tk.MustContainErrMsg( + "batch on id limit 1 insert into t select t2.id, t2.v, t3.v from t2 join t3 on t2.id=t3.id", + "Non-transactional DML, shard column must be fully specified", + ) + tk.MustContainErrMsg( + "batch on test.t1.id limit 1 insert into t select t2.id, t2.v, t3.v from t2 join t3 on t2.id=t3.id", + "shard column test.t1.id is not in the tables involved in the join", + ) + + tk.MustExec("batch on test.t2.id limit 1 update t2 join t3 on t2.id=t3.id set t2.v=t2.v*100, t3.v=t3.v*200") + tk.MustQuery("select * from t2").Check(testkit.Rows("1 200", "2 300", "3 4")) + tk.MustQuery("select * from t3").Check(testkit.Rows("1 800", "2 1000", "4 6")) + + tk.MustExec("batch limit 1 delete t2 from t2 join t3 on t2.id=t3.id") + tk.MustQuery("select * from t2").Check(testkit.Rows("3 4")) + + tk.MustExec("insert into t2 values (1, 11), (2, 22)") + tk.MustExec("batch limit 1 replace into t select t2.id, t2.v, t3.v from t2 join t3 on t2.id=t3.id") + tk.MustQuery("select * from t").Check(testkit.Rows("1 11 800", "2 22 1000")) +} + +func TestAnomalousNontransactionalDML(t *testing.T) { + // some weird and error-prone behavior + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(id int, v int)") + + // self-insert, this is allowed but can be dangerous + tk.MustExec("insert into t values (1, 1)") + tk.MustExec("batch limit 1 insert into t select * from t") + tk.MustQuery("select * from t").Check(testkit.Rows("1 1", "1 1")) + tk.MustExec("drop table t") + + tk.MustExec("create table t(id int, v int, key(id))") + tk.MustExec("create table t2(id int, v int, key(id))") + tk.MustExec("insert into t values (1, 1), (2, 2), (3, 3)") + tk.MustExec("insert into t2 values (1, 1), (2, 2), (4, 4)") + + tk.MustExec("batch on test.t.id limit 1 update t join t2 on t.id=t2.id set t2.id = t2.id+1") + tk.MustQuery("select * from t2").Check(testkit.Rows("4 1", "4 2", "4 4")) +} + +func TestAlias(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(id int, v1 int, v2 int, unique key (id))") + tk.MustExec("create table t2(id int, v int, key (id))") + tk.MustExec("create table t3(id int, v int, key (id))") + tk.MustExec("insert into t values (1, 1, 1), (2, 2, 2), (3, 3, 3)") + tk.MustExec("insert into t2 values (1, 1), (2, 20), (4, 40)") + tk.MustExec("insert into t3 values (2, 21), (4, 41), (5, 50)") + tk.MustExec("update t as t1 set v1 = test.t1.id + 1") + tk.MustQuery("select * from t").Check(testkit.Rows("1 2 1", "2 3 2", "3 4 3")) + + tk.MustExec("batch on test.tt2.id limit 1 replace into t select tt2.id, tt2.v, t3.v from t2 as tt2 join t3 on tt2.id=t3.id") + tk.MustQuery("select * from t order by id").Check(testkit.Rows("1 2 1", "2 20 21", "3 4 3", "4 40 41")) +} + +func TestUpdatingShardColumn(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(id int, v int, unique key(id))") + tk.MustExec("create table t2(id int, v int, unique key(id))") + tk.MustExec("insert into t values (1, 1), (2, 2), (3, 3)") + tk.MustExec("insert into t2 values (1, 1), (2, 2), (4, 4)") + + // update stmt + tk.MustContainErrMsg("batch on id limit 1 update t set id=id+1", "Non-transactional DML, shard column cannot be updated") + // insert on dup update + tk.MustContainErrMsg("batch on id limit 1 insert into t select * from t on duplicate key update t.id=t.id+10", "Non-transactional DML, shard column cannot be updated") + // update with table alias + tk.MustContainErrMsg("batch on id limit 1 update t as t1 set t1.id=t1.id+1", "Non-transactional DML, shard column cannot be updated") + // insert on dup update with table alias + tk.MustContainErrMsg("batch on id limit 1 insert into t select * from t as t1 on duplicate key update t1.id=t1.id+10", "Non-transactional DML, shard column cannot be updated") + // update stmt, multiple table + tk.MustContainErrMsg("batch on test.t.id limit 1 update t join t2 on t.id=t2.id set t.id=t.id+1", "Non-transactional DML, shard column cannot be updated") + // update stmt, multiple table, alias + tk.MustContainErrMsg("batch on test.tt.id limit 1 update t as tt join t2 as tt2 on tt.id=tt2.id set tt.id=tt.id+10", "Non-transactional DML, shard column cannot be updated") +} + +func TestNameAmbiguity(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(id int, v1 int, v2 int, unique key (id))") + tk.MustExec("create table t2(id int, v int, key (id))") + tk.MustExec("create table t3(id int, v int, key (id))") + + tk.MustExec("create database test2") + tk.MustExec("use test2") + tk.MustExec("create table t(id int, v1 int, v2 int, unique key (id))") + tk.MustExec("create table t2(id int, v int, key (id))") + tk.MustExec("create table t3(id int, v int, key (id))") + tk.MustExec("insert into t values (1, 1, 1), (2, 2, 2)") + + tk.MustExec("use test") + tk.MustExec("batch on id limit 1 insert into t select * from test2.t") + tk.MustQuery("select * from t").Check(testkit.Rows("1 1 1", "2 2 2")) +} diff --git a/session/schema_amender_test.go b/session/schema_amender_test.go index e82faba8e6e56..565b4861a9400 100644 --- a/session/schema_amender_test.go +++ b/session/schema_amender_test.go @@ -24,6 +24,7 @@ import ( "github.com/pingcap/kvproto/pkg/kvrpcpb" "github.com/pingcap/tidb/domain" "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/meta/autoid" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/planner/core" @@ -276,7 +277,7 @@ func TestAmendCollectAndGenMutations(t *testing.T) { initTblColIdxID(oldTblMeta) // Indices[0] does not exist at the start. oldTblMeta.Indices = oldTblMeta.Indices[1:] - oldTbInfo, err := table.TableFromMeta(nil, oldTblMeta) + oldTbInfo, err := table.TableFromMeta(autoid.NewAllocators(false), oldTblMeta) require.NoError(t, err) oldTblMeta.Indices[0].State = startState oldTblMeta.Indices[2].State = endState @@ -296,7 +297,7 @@ func TestAmendCollectAndGenMutations(t *testing.T) { // The last index "c_d_e_str_prefix is dropped. newTblMeta.Indices = newTblMeta.Indices[:len(newTblMeta.Indices)-1] newTblMeta.Indices[0].Unique = false - newTblInfo, err := table.TableFromMeta(nil, newTblMeta) + newTblInfo, err := table.TableFromMeta(autoid.NewAllocators(false), newTblMeta) require.NoError(t, err) newTblMeta.Indices[0].State = endState // Indices[1] is newly created. diff --git a/session/schema_test.go b/session/schema_test.go index f312d253418f2..3ec05f5a22530 100644 --- a/session/schema_test.go +++ b/session/schema_test.go @@ -134,6 +134,7 @@ func TestRetrySchemaChangeForEmptyChange(t *testing.T) { tk1.MustExec("commit") // TODO remove this enable after fixing table delta map. + tk1.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk1.MustExec("set tidb_enable_amend_pessimistic_txn = 1") tk1.MustExec("begin pessimistic") tk2.MustExec("alter table t add k int") diff --git a/session/session.go b/session/session.go index 1b254c879ec40..c0630eed678b2 100644 --- a/session/session.go +++ b/session/session.go @@ -93,6 +93,7 @@ import ( "github.com/pingcap/tidb/util/kvcache" "github.com/pingcap/tidb/util/logutil" "github.com/pingcap/tidb/util/logutil/consistency" + "github.com/pingcap/tidb/util/memory" "github.com/pingcap/tidb/util/sem" "github.com/pingcap/tidb/util/sli" "github.com/pingcap/tidb/util/sqlexec" @@ -144,10 +145,13 @@ var ( telemetryTablePartitionAddIntervalUsage = metrics.TelemetryTablePartitionAddIntervalPartitionsCnt telemetryTablePartitionDropIntervalUsage = metrics.TelemetryTablePartitionDropIntervalPartitionsCnt telemetryExchangePartitionUsage = metrics.TelemetryExchangePartitionCnt + telemetryTableCompactPartitionUsage = metrics.TelemetryCompactPartitionCnt telemetryLockUserUsage = metrics.TelemetryAccountLockCnt.WithLabelValues("lockUser") telemetryUnlockUserUsage = metrics.TelemetryAccountLockCnt.WithLabelValues("unlockUser") telemetryCreateOrAlterUserUsage = metrics.TelemetryAccountLockCnt.WithLabelValues("createOrAlterUser") + + telemetryIndexMerge = metrics.TelemetryIndexMergeUsage ) // Session context, it is consistent with the lifecycle of a client connection. @@ -290,6 +294,8 @@ type session struct { advisoryLocks map[string]*advisoryLock extensions *extension.SessionExtensions + + sandBoxMode bool } var parserPool = &sync.Pool{New: func() interface{} { return parser.New() }} @@ -569,6 +575,7 @@ func (s *session) FieldList(tableName string) ([]*ast.ResultField, error) { return fields, nil } +// TxnInfo returns a pointer to a *copy* of the internal TxnInfo, thus is *read only* func (s *session) TxnInfo() *txninfo.TxnInfo { s.txn.mu.RLock() // Copy on read to get a snapshot, this API shouldn't be frequently called. @@ -702,6 +709,7 @@ func (s *session) doCommit(ctx context.Context) error { if tables := sessVars.TxnCtx.TemporaryTables; len(tables) > 0 { s.txn.SetOption(kv.KVFilter, temporaryTableKVFilter(tables)) } + s.txn.SetOption(kv.TxnSource, sessVars.CDCWriteSource) if tables := sessVars.TxnCtx.CachedTables; len(tables) > 0 { c := cachedTableRenewLease{tables: tables} now := time.Now() @@ -1585,6 +1593,7 @@ func (s *session) SetProcessInfo(sql string, t time.Time, command byte, maxExecu Info: sql, CurTxnStartTS: curTxnStartTS, StmtCtx: s.sessionVars.StmtCtx, + RefCountOfStmtCtx: &s.sessionVars.RefCountOfStmtCtx, MemTracker: s.sessionVars.MemTracker, DiskTracker: s.sessionVars.DiskTracker, StatsInfo: plannercore.GetStatsInfo, @@ -1864,6 +1873,21 @@ func (s *session) SetExtensions(extensions *extension.SessionExtensions) { s.extensions = extensions } +// InSandBoxMode indicates that this session is in sandbox mode +func (s *session) InSandBoxMode() bool { + return s.sandBoxMode +} + +// EnableSandBoxMode enable the sandbox mode. +func (s *session) EnableSandBoxMode() { + s.sandBoxMode = true +} + +// DisableSandBoxMode enable the sandbox mode. +func (s *session) DisableSandBoxMode() { + s.sandBoxMode = false +} + // ParseWithParams4Test wrapper (s *session) ParseWithParams for test func ParseWithParams4Test(ctx context.Context, s Session, sql string, args ...interface{}) (ast.StmtNode, error) { @@ -2446,7 +2470,6 @@ func (s *session) PrepareStmt(sql string) (stmtID uint32, paramCount int, fields } ctx := context.Background() - inTxn := s.GetSessionVars().InTxn() // NewPrepareExec may need startTS to build the executor, for example prepare statement has subquery in int. // So we have to call PrepareTxnCtx here. if err = s.PrepareTxnCtx(ctx); err != nil { @@ -2463,13 +2486,12 @@ func (s *session) PrepareStmt(sql string) (stmtID uint32, paramCount int, fields } prepareExec := executor.NewPrepareExec(s, sql) err = prepareExec.Next(ctx, nil) + // Rollback even if err is nil. + s.rollbackOnError(ctx) + if err != nil { return } - if !inTxn { - // We could start a transaction to build the prepare executor before, we should rollback it here. - s.RollbackTxn(ctx) - } return prepareExec.ID, prepareExec.ParamCount, prepareExec.Fields, nil } @@ -2506,6 +2528,7 @@ func (s *session) Txn(active bool) (kv.Transaction, error) { return &s.txn, nil } _, err := sessiontxn.GetTxnManager(s).ActivateTxn() + s.SetMemoryFootprintChangeHook() return &s.txn, err } @@ -2578,7 +2601,7 @@ func (s *session) GetSessionVars() *variable.SessionVars { func (s *session) AuthPluginForUser(user *auth.UserIdentity) (string, error) { pm := privilege.GetPrivilegeManager(s) - authplugin, err := pm.GetAuthPlugin(user.Username, user.Hostname) + authplugin, err := pm.GetAuthPluginForConnection(user.Username, user.Hostname) if err != nil { return "", err } @@ -2598,8 +2621,14 @@ func (s *session) Auth(user *auth.UserIdentity, authentication, salt []byte) err if err != nil { return privileges.ErrAccessDenied.FastGenByArgs(user.Username, user.Hostname, hasPassword) } - if err = pm.ConnectionVerification(user, authUser.Username, authUser.Hostname, authentication, salt, s.sessionVars.TLSConnectionState); err != nil { - return err + if err := pm.ConnectionVerification(user, authUser.Username, authUser.Hostname, authentication, salt, s.sessionVars); err != nil { + switch err.(type) { + case *privileges.ErrInSandBoxMode: + // Enter sandbox mode, only execute statement for resetting password. + s.EnableSandBoxMode() + default: + return err + } } user.AuthUsername = authUser.Username user.AuthHostname = authUser.Hostname @@ -2848,6 +2877,67 @@ func InitMDLTable(store kv.Storage) error { }) } +// InitMDLVariableForBootstrap initializes the metadata lock variable. +func InitMDLVariableForBootstrap(store kv.Storage) error { + initValue := variable.DefTiDBEnableConcurrentDDL + err := kv.RunInNewTxn(kv.WithInternalSourceType(context.Background(), kv.InternalTxnDDL), store, true, func(ctx context.Context, txn kv.Transaction) error { + t := meta.NewMeta(txn) + return t.SetMetadataLock(initValue) + }) + if err != nil { + return err + } + variable.EnableMDL.Store(initValue) + return nil +} + +// InitMDLVariableForUpgrade initializes the metadata lock variable. +func InitMDLVariableForUpgrade(store kv.Storage) (bool, error) { + isNull := false + enable := false + var err error + err = kv.RunInNewTxn(kv.WithInternalSourceType(context.Background(), kv.InternalTxnDDL), store, true, func(ctx context.Context, txn kv.Transaction) error { + t := meta.NewMeta(txn) + enable, isNull, err = t.GetMetadataLock() + if err != nil { + return err + } + return nil + }) + if isNull || !enable { + variable.EnableMDL.Store(false) + } else { + variable.EnableMDL.Store(true) + } + return isNull, err +} + +// InitMDLVariable initializes the metadata lock variable. +func InitMDLVariable(store kv.Storage) error { + isNull := false + enable := false + var err error + err = kv.RunInNewTxn(kv.WithInternalSourceType(context.Background(), kv.InternalTxnDDL), store, true, func(ctx context.Context, txn kv.Transaction) error { + t := meta.NewMeta(txn) + enable, isNull, err = t.GetMetadataLock() + if err != nil { + return err + } + if isNull { + // Workaround for version: nightly-2022-11-07 to nightly-2022-11-17. + enable = true + logutil.BgLogger().Warn("metadata lock is null") + err = t.SetMetadataLock(true) + if err != nil { + return err + } + } + return nil + }) + variable.EnableMDL.Store(enable) + return err +} + // BootstrapSession runs the first time when the TiDB server start. func BootstrapSession(store kv.Storage) (*domain.Domain, error) { ctx := kv.WithInternalSourceType(context.Background(), kv.InternalTxnBootstrap) @@ -2874,11 +2964,16 @@ func BootstrapSession(store kv.Storage) (*domain.Domain, error) { runInBootstrapSession(store, bootstrap) } else if ver < currentBootstrapVersion { runInBootstrapSession(store, upgrade) + } else { + err = InitMDLVariable(store) + if err != nil { + return nil, err + } } analyzeConcurrencyQuota := int(config.GetGlobalConfig().Performance.AnalyzePartitionConcurrencyQuota) concurrency := int(config.GetGlobalConfig().Performance.StatsLoadConcurrency) - ses, err := createSessions(store, 9) + ses, err := createSessions(store, 10) if err != nil { return nil, err } @@ -2958,6 +3053,9 @@ func BootstrapSession(store kv.Storage) (*domain.Domain, error) { // setup dumpFileGcChecker dom.SetupDumpFileGCChecker(ses[8]) dom.DumpFileGcCheckerLoop() + // setup historical stats worker + dom.SetupHistoricalStatsWorker(ses[9]) + dom.StartHistoricalStatsWorker() // A sub context for update table stats, and other contexts for concurrent stats loading. cnt := 1 + concurrency @@ -3072,7 +3170,7 @@ func createSessionWithOpt(store kv.Storage, opt *Opt) (*session, error) { s.sessionVars.BinlogClient = binloginfo.GetPumpsClient() s.txn.init() - sessionBindHandle := bindinfo.NewSessionBindHandle(parser.New()) + sessionBindHandle := bindinfo.NewSessionBindHandle() s.SetValue(bindinfo.SessionBindInfoKeyType, sessionBindHandle) s.SetSessionStatesHandler(sessionstates.StateBinding, sessionBindHandle) return s, nil @@ -3518,6 +3616,10 @@ func (s *session) updateTelemetryMetric(es *executor.ExecStmt) { telemetryCTEUsageNotCTE.Inc() } + if ti.UseIndexMerge { + telemetryIndexMerge.Inc() + } + if ti.UseMultiSchemaChange { telemetryMultiSchemaChangeUsage.Inc() } @@ -3568,6 +3670,9 @@ func (s *session) updateTelemetryMetric(es *executor.ExecStmt) { if ti.PartitionTelemetry.UseDropIntervalPartition { telemetryTablePartitionDropIntervalUsage.Inc() } + if ti.PartitionTelemetry.UseCompactTablePartition { + telemetryTableCompactPartitionUsage.Inc() + } } if ti.AccountLockTelemetry != nil { @@ -3599,6 +3704,25 @@ func (s *session) GetStmtStats() *stmtstats.StatementStats { return s.stmtStats } +// SetMemoryFootprintChangeHook sets the hook that is called when the memdb changes its size. +// Call this after s.txn becomes valid, since TxnInfo is initialized when the txn becomes valid. +func (s *session) SetMemoryFootprintChangeHook() { + if config.GetGlobalConfig().Performance.TxnTotalSizeLimit != config.DefTxnTotalSizeLimit { + // if the user manually specifies the config, don't involve the new memory tracker mechanism, let the old config + // work as before. + return + } + hook := func(mem uint64) { + if s.sessionVars.MemDBFootprint == nil { + tracker := memory.NewTracker(memory.LabelForMemDB, -1) + tracker.AttachTo(s.sessionVars.MemTracker) + s.sessionVars.MemDBFootprint = tracker + } + s.sessionVars.MemDBFootprint.ReplaceBytesUsed(int64(mem)) + } + s.txn.SetMemoryFootprintChangeHook(hook) +} + // EncodeSessionStates implements SessionStatesHandler.EncodeSessionStates interface. func (s *session) EncodeSessionStates(ctx context.Context, sctx sessionctx.Context, sessionStates *sessionstates.SessionStates) error { // Transaction status is hard to encode, so we do not support it. diff --git a/session/session_test/session_test.go b/session/session_test/session_test.go index c0c37cf3296a8..60b265b3caa6a 100644 --- a/session/session_test/session_test.go +++ b/session/session_test/session_test.go @@ -1574,8 +1574,8 @@ func TestKVVars(t *testing.T) { require.Nil(t, failpoint.Enable("tikvclient/probeSetVars", `return(true)`)) tk.MustExec("select * from kvvars where a = 1") require.Nil(t, failpoint.Disable("tikvclient/probeSetVars")) - require.True(t, transaction.SetSuccess) - transaction.SetSuccess = false + require.True(t, transaction.SetSuccess.Load()) + transaction.SetSuccess.Store(false) } func TestTxnRetryErrMsg(t *testing.T) { diff --git a/session/testdata/clustered_index_suite_out.json b/session/testdata/clustered_index_suite_out.json index dd0f1f630b9fc..e7bc6f0cc52e7 100644 --- a/session/testdata/clustered_index_suite_out.json +++ b/session/testdata/clustered_index_suite_out.json @@ -15,9 +15,9 @@ { "SQL": "select count(1) from t1 use index(idx1) where c2 = 'cd'", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#5)->Column#4", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#5", + "StreamAgg 1.00 root funcs:count(Column#6)->Column#4", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#6", " └─Selection 10.00 cop[tikv] eq(test.t1.c2, \"cd\")", " └─IndexRangeScan 10.00 cop[tikv] table:t1, index:idx1(c2) range:[\"c\",\"c\"], keep order:false, stats:pseudo" ], @@ -38,9 +38,9 @@ { "SQL": "select count(1) from t2 use index(idx1) where c2 = 'cd'", "Plan": [ - "HashAgg 1.00 root funcs:count(Column#6)->Column#4", - "└─IndexReader 1.00 root index:HashAgg", - " └─HashAgg 1.00 cop[tikv] funcs:count(1)->Column#6", + "StreamAgg 1.00 root funcs:count(Column#9)->Column#4", + "└─IndexReader 1.00 root index:StreamAgg", + " └─StreamAgg 1.00 cop[tikv] funcs:count(1)->Column#9", " └─Selection 10.00 cop[tikv] eq(test.t2.c2, \"cd\")", " └─IndexFullScan 10000.00 cop[tikv] table:t2, index:idx1(c1, c2) keep order:false, stats:pseudo" ], diff --git a/session/txn.go b/session/txn.go index 18464073da2d1..85f77f8078679 100644 --- a/session/txn.go +++ b/session/txn.go @@ -151,7 +151,6 @@ func (txn *LazyTxn) cleanupStmtBuf() { txn.mu.Lock() defer txn.mu.Unlock() txn.mu.TxnInfo.EntriesCount = uint64(txn.Transaction.Len()) - txn.mu.TxnInfo.EntriesSize = uint64(txn.Transaction.Size()) } // resetTxnInfo resets the transaction info. @@ -159,8 +158,7 @@ func (txn *LazyTxn) cleanupStmtBuf() { func (txn *LazyTxn) resetTxnInfo( startTS uint64, state txninfo.TxnRunningState, - entriesCount, - entriesSize uint64, + entriesCount uint64, currentSQLDigest string, allSQLDigests []string, ) { @@ -178,7 +176,7 @@ func (txn *LazyTxn) resetTxnInfo( txninfo.TxnStatusEnteringCounter(state).Inc() txn.mu.TxnInfo.LastStateChangeTime = time.Now() txn.mu.TxnInfo.EntriesCount = entriesCount - txn.mu.TxnInfo.EntriesSize = entriesSize + txn.mu.TxnInfo.CurrentSQLDigest = currentSQLDigest txn.mu.TxnInfo.AllSQLDigests = allSQLDigests } @@ -191,6 +189,22 @@ func (txn *LazyTxn) Size() int { return txn.Transaction.Size() } +// Mem implements the MemBuffer interface. +func (txn *LazyTxn) Mem() uint64 { + if txn.Transaction == nil { + return 0 + } + return txn.Transaction.Mem() +} + +// SetMemoryFootprintChangeHook sets the hook to be called when the memory footprint of this transaction changes. +func (txn *LazyTxn) SetMemoryFootprintChangeHook(hook func(uint64)) { + if txn.Transaction == nil { + return + } + txn.Transaction.SetMemoryFootprintChangeHook(hook) +} + // Valid implements the kv.Transaction interface. func (txn *LazyTxn) Valid() bool { return txn.Transaction != nil && txn.Transaction.Valid() @@ -275,7 +289,6 @@ func (txn *LazyTxn) changePendingToValid(ctx context.Context) error { t.StartTS(), txninfo.TxnIdle, uint64(txn.Transaction.Len()), - uint64(txn.Transaction.Size()), txn.mu.TxnInfo.CurrentSQLDigest, txn.mu.TxnInfo.AllSQLDigests) @@ -433,7 +446,6 @@ func (txn *LazyTxn) LockKeys(ctx context.Context, lockCtx *kv.LockCtx, keys ...k txn.updateState(originState) txn.mu.TxnInfo.BlockStartTime.Valid = false txn.mu.TxnInfo.EntriesCount = uint64(txn.Transaction.Len()) - txn.mu.TxnInfo.EntriesSize = uint64(txn.Transaction.Size()) return err } diff --git a/session/txninfo/txn_info.go b/session/txninfo/txn_info.go index 640e16474b4bd..31e4d338eb623 100644 --- a/session/txninfo/txn_info.go +++ b/session/txninfo/txn_info.go @@ -161,8 +161,6 @@ type TxnInfo struct { } // How many entries are in MemDB EntriesCount uint64 - // MemDB used memory - EntriesSize uint64 // The following fields will be filled in `session` instead of `LazyTxn` @@ -208,9 +206,6 @@ var columnValueGetterMap = map[string]func(*TxnInfo) types.Datum{ MemBufferKeysStr: func(info *TxnInfo) types.Datum { return types.NewDatum(info.EntriesCount) }, - MemBufferBytesStr: func(info *TxnInfo) types.Datum { - return types.NewDatum(info.EntriesSize) - }, SessionIDStr: func(info *TxnInfo) types.Datum { return types.NewDatum(info.ConnectionID) }, diff --git a/sessionctx/context.go b/sessionctx/context.go index f51bdedef8948..f39d3a82a8f38 100644 --- a/sessionctx/context.go +++ b/sessionctx/context.go @@ -182,6 +182,13 @@ type Context interface { ReleaseAllAdvisoryLocks() int // GetExtensions returns the `*extension.SessionExtensions` object GetExtensions() *extension.SessionExtensions + // InSandBoxMode indicates that this Session is in sandbox mode + // Ref about sandbox mode: https://dev.mysql.com/doc/refman/8.0/en/expired-password-handling.html + InSandBoxMode() bool + // EnableSandBoxMode enable the sandbox mode of this Session + EnableSandBoxMode() + // DisableSandBoxMode enable the sandbox mode of this Session + DisableSandBoxMode() } // TxnFuture is an interface where implementations have a kv.Transaction field and after diff --git a/sessionctx/stmtctx/stmtctx.go b/sessionctx/stmtctx/stmtctx.go index a02090e490c32..ec30fcb5fee35 100644 --- a/sessionctx/stmtctx/stmtctx.go +++ b/sessionctx/stmtctx/stmtctx.go @@ -101,6 +101,42 @@ func (warn *SQLWarn) UnmarshalJSON(data []byte) error { return nil } +// ReferenceCount indicates the reference count of StmtCtx. +type ReferenceCount int32 + +const ( + // ReferenceCountIsFrozen indicates the current StmtCtx is resetting, it'll refuse all the access from other sessions. + ReferenceCountIsFrozen int32 = -1 + // ReferenceCountNoReference indicates the current StmtCtx is not accessed by other sessions. + ReferenceCountNoReference int32 = 0 +) + +// TryIncrease tries to increase the reference count. +// There is a small chance that TryIncrease returns true while TryFreeze and +// UnFreeze are invoked successfully during the execution of TryIncrease. +func (rf *ReferenceCount) TryIncrease() bool { + refCnt := atomic.LoadInt32((*int32)(rf)) + for ; refCnt != ReferenceCountIsFrozen && !atomic.CompareAndSwapInt32((*int32)(rf), refCnt, refCnt+1); refCnt = atomic.LoadInt32((*int32)(rf)) { + } + return refCnt != ReferenceCountIsFrozen +} + +// Decrease decreases the reference count. +func (rf *ReferenceCount) Decrease() { + for refCnt := atomic.LoadInt32((*int32)(rf)); !atomic.CompareAndSwapInt32((*int32)(rf), refCnt, refCnt-1); refCnt = atomic.LoadInt32((*int32)(rf)) { + } +} + +// TryFreeze tries to freeze the StmtCtx to frozen before resetting the old StmtCtx. +func (rf *ReferenceCount) TryFreeze() bool { + return atomic.LoadInt32((*int32)(rf)) == ReferenceCountNoReference && atomic.CompareAndSwapInt32((*int32)(rf), ReferenceCountNoReference, ReferenceCountIsFrozen) +} + +// UnFreeze unfreeze the frozen StmtCtx thus the other session can access this StmtCtx. +func (rf *ReferenceCount) UnFreeze() { + atomic.StoreInt32((*int32)(rf), ReferenceCountNoReference) +} + // StatementContext contains variables for a statement. // It should be reset before executing a statement. type StatementContext struct { @@ -177,7 +213,7 @@ type StatementContext struct { warnings []SQLWarn errorCount uint16 execDetails execdetails.ExecDetails - allExecDetails []*execdetails.ExecDetails + allExecDetails []*execdetails.DetailsNeedP90 } // PrevAffectedRows is the affected-rows value(DDL is 0, DML is the number of affected rows). PrevAffectedRows int64 @@ -297,8 +333,6 @@ type StatementContext struct { NeededItems []model.TableItemID // ResultCh to receive stats loading results ResultCh chan StatsLoadResult - // Fallback indicates if the planner uses full-loaded stats or fallback all to pseudo/simple. - Fallback bool // LoadStartTime is to record the load start time to calculate latency LoadStartTime time.Time } @@ -829,7 +863,7 @@ func (sc *StatementContext) resetMuForRetry() { sc.mu.errorCount = 0 sc.mu.warnings = nil sc.mu.execDetails = execdetails.ExecDetails{} - sc.mu.allExecDetails = make([]*execdetails.ExecDetails, 0, 4) + sc.mu.allExecDetails = make([]*execdetails.DetailsNeedP90, 0, 4) } // ResetForRetry resets the changed states during execution. @@ -853,7 +887,13 @@ func (sc *StatementContext) MergeExecDetails(details *execdetails.ExecDetails, c sc.mu.execDetails.RequestCount++ sc.MergeScanDetail(details.ScanDetail) sc.MergeTimeDetail(details.TimeDetail) - sc.mu.allExecDetails = append(sc.mu.allExecDetails, details) + sc.mu.allExecDetails = append(sc.mu.allExecDetails, + &execdetails.DetailsNeedP90{ + BackoffSleep: details.BackoffSleep, + BackoffTimes: details.BackoffTimes, + CalleeAddress: details.CalleeAddress, + TimeDetail: details.TimeDetail, + }) } if commitDetails != nil { if sc.mu.execDetails.CommitDetail == nil { @@ -972,14 +1012,14 @@ func (sc *StatementContext) CopTasksDetails() *CopTasksDetails { d.AvgProcessTime = sc.mu.execDetails.TimeDetail.ProcessTime / time.Duration(n) d.AvgWaitTime = sc.mu.execDetails.TimeDetail.WaitTime / time.Duration(n) - slices.SortFunc(sc.mu.allExecDetails, func(i, j *execdetails.ExecDetails) bool { + slices.SortFunc(sc.mu.allExecDetails, func(i, j *execdetails.DetailsNeedP90) bool { return i.TimeDetail.ProcessTime < j.TimeDetail.ProcessTime }) d.P90ProcessTime = sc.mu.allExecDetails[n*9/10].TimeDetail.ProcessTime d.MaxProcessTime = sc.mu.allExecDetails[n-1].TimeDetail.ProcessTime d.MaxProcessAddress = sc.mu.allExecDetails[n-1].CalleeAddress - slices.SortFunc(sc.mu.allExecDetails, func(i, j *execdetails.ExecDetails) bool { + slices.SortFunc(sc.mu.allExecDetails, func(i, j *execdetails.DetailsNeedP90) bool { return i.TimeDetail.WaitTime < j.TimeDetail.WaitTime }) d.P90WaitTime = sc.mu.allExecDetails[n*9/10].TimeDetail.WaitTime @@ -1053,6 +1093,9 @@ func (sc *StatementContext) RecordRangeFallback(rangeMaxSize int64) { // If range fallback happens, it means ether the query is unreasonable(for example, several long IN lists) or tidb_opt_range_max_size is too small // and the generated plan is probably suboptimal. In that case we don't put it into plan cache. sc.SkipPlanCache = true + if sc.UseCache { + sc.AppendWarning(errors.Errorf("skip plan-cache: in-list is too long")) + } if !sc.RangeFallback { sc.AppendWarning(errors.Errorf("Memory capacity of %v bytes for 'tidb_opt_range_max_size' exceeded when building ranges. Less accurate ranges such as full range are chosen", rangeMaxSize)) sc.RangeFallback = true diff --git a/sessionctx/stmtctx/stmtctx_test.go b/sessionctx/stmtctx/stmtctx_test.go index cc21b3e4812c7..67520c36e7b80 100644 --- a/sessionctx/stmtctx/stmtctx_test.go +++ b/sessionctx/stmtctx/stmtctx_test.go @@ -36,12 +36,14 @@ func TestCopTasksDetails(t *testing.T) { backoffs := []string{"tikvRPC", "pdRPC", "regionMiss"} for i := 0; i < 100; i++ { d := &execdetails.ExecDetails{ - CalleeAddress: fmt.Sprintf("%v", i+1), - BackoffSleep: make(map[string]time.Duration), - BackoffTimes: make(map[string]int), - TimeDetail: util.TimeDetail{ - ProcessTime: time.Second * time.Duration(i+1), - WaitTime: time.Millisecond * time.Duration(i+1), + DetailsNeedP90: execdetails.DetailsNeedP90{ + CalleeAddress: fmt.Sprintf("%v", i+1), + BackoffSleep: make(map[string]time.Duration), + BackoffTimes: make(map[string]int), + TimeDetail: util.TimeDetail{ + ProcessTime: time.Second * time.Duration(i+1), + WaitTime: time.Millisecond * time.Duration(i+1), + }, }, } for _, backoff := range backoffs { diff --git a/sessionctx/variable/BUILD.bazel b/sessionctx/variable/BUILD.bazel index 7c6bcd5330e25..17ff6a6bc482c 100644 --- a/sessionctx/variable/BUILD.bazel +++ b/sessionctx/variable/BUILD.bazel @@ -100,6 +100,7 @@ go_test( "//types", "//util/chunk", "//util/execdetails", + "//util/gctuner", "//util/memory", "//util/mock", "@com_github_pingcap_failpoint//:failpoint", diff --git a/sessionctx/variable/error.go b/sessionctx/variable/error.go index 60928932f0f06..f760cba8bfcd5 100644 --- a/sessionctx/variable/error.go +++ b/sessionctx/variable/error.go @@ -39,6 +39,7 @@ var ( errLocalVariable = dbterror.ClassVariable.NewStd(mysql.ErrLocalVariable) errValueNotSupportedWhen = dbterror.ClassVariable.NewStdErr(mysql.ErrNotSupportedYet, pmysql.Message("%s = OFF is not supported when %s = ON", nil)) ErrStmtNotFound = dbterror.ClassOptimizer.NewStd(mysql.ErrPreparedStmtNotFound) + ErrNotValidPassword = dbterror.ClassExecutor.NewStd(mysql.ErrNotValidPassword) // ErrFunctionsNoopImpl is an error to say the behavior is protected by the tidb_enable_noop_functions sysvar. // This is copied from expression.ErrFunctionsNoopImpl to prevent circular dependencies. // It needs to be public for tests. diff --git a/sessionctx/variable/noop.go b/sessionctx/variable/noop.go index 398ea09f3ec92..4ef61971d9c2c 100644 --- a/sessionctx/variable/noop.go +++ b/sessionctx/variable/noop.go @@ -58,8 +58,6 @@ var noopSysVars = []*SysVar{ {Scope: ScopeGlobal | ScopeSession, Name: BigTables, Value: Off, Type: TypeBool}, {Scope: ScopeNone, Name: "skip_external_locking", Value: "1"}, {Scope: ScopeNone, Name: "innodb_sync_array_size", Value: "1"}, - {Scope: ScopeGlobal, Name: ValidatePasswordCheckUserName, Value: Off, Type: TypeBool}, - {Scope: ScopeGlobal, Name: ValidatePasswordNumberCount, Value: "1", Type: TypeUnsigned, MinValue: 0, MaxValue: math.MaxUint64}, {Scope: ScopeSession, Name: "gtid_next", Value: ""}, {Scope: ScopeGlobal, Name: "ndb_show_foreign_key_mock_tables", Value: ""}, {Scope: ScopeNone, Name: "multi_range_count", Value: "256"}, @@ -170,11 +168,10 @@ var noopSysVars = []*SysVar{ {Scope: ScopeGlobal | ScopeSession, Name: MaxUserConnections, Value: "0", Type: TypeUnsigned, MinValue: 0, MaxValue: 4294967295}, {Scope: ScopeNone, Name: "performance_schema_max_thread_classes", Value: "50"}, {Scope: ScopeGlobal, Name: "innodb_api_trx_level", Value: "0"}, - {Scope: ScopeNone, Name: "disconnect_on_expired_password", Value: "1"}, {Scope: ScopeNone, Name: "performance_schema_max_file_classes", Value: "50"}, {Scope: ScopeGlobal, Name: "expire_logs_days", Value: "0"}, {Scope: ScopeGlobal | ScopeSession, Name: BinlogRowQueryLogEvents, Value: Off, Type: TypeBool}, - {Scope: ScopeGlobal, Name: "default_password_lifetime", Value: ""}, + {Scope: ScopeGlobal, Name: DefaultPasswordLifetime, Value: "0", Type: TypeInt, MinValue: 0, MaxValue: math.MaxUint16}, {Scope: ScopeNone, Name: "pid_file", Value: "/usr/local/mysql/data/localhost.pid"}, {Scope: ScopeNone, Name: "innodb_undo_tablespaces", Value: "0"}, {Scope: ScopeGlobal, Name: InnodbStatusOutputLocks, Value: Off, Type: TypeBool, AutoConvertNegativeBool: true}, @@ -463,7 +460,6 @@ var noopSysVars = []*SysVar{ {Scope: ScopeGlobal | ScopeSession, Name: "eq_range_index_dive_limit", Value: "200", IsHintUpdatable: true}, {Scope: ScopeNone, Name: "performance_schema_events_stages_history_size", Value: "10"}, {Scope: ScopeGlobal | ScopeSession, Name: "ndb_join_pushdown", Value: ""}, - {Scope: ScopeGlobal, Name: "validate_password_special_char_count", Value: "1"}, {Scope: ScopeNone, Name: "performance_schema_max_thread_instances", Value: "402"}, {Scope: ScopeGlobal | ScopeSession, Name: "ndbinfo_show_hidden", Value: ""}, {Scope: ScopeGlobal | ScopeSession, Name: "net_read_timeout", Value: "30"}, @@ -472,7 +468,6 @@ var noopSysVars = []*SysVar{ {Scope: ScopeGlobal, Name: "sync_relay_log_info", Value: "10000"}, {Scope: ScopeGlobal | ScopeSession, Name: "optimizer_trace_limit", Value: "1"}, {Scope: ScopeNone, Name: "innodb_ft_max_token_size", Value: "84"}, - {Scope: ScopeGlobal, Name: ValidatePasswordLength, Value: "8", Type: TypeUnsigned, MinValue: 0, MaxValue: math.MaxUint64}, {Scope: ScopeGlobal, Name: "ndb_log_binlog_index", Value: ""}, {Scope: ScopeGlobal, Name: "innodb_api_bk_commit_interval", Value: "5"}, {Scope: ScopeNone, Name: "innodb_undo_directory", Value: "."}, diff --git a/sessionctx/variable/session.go b/sessionctx/variable/session.go index b8fbcf54848e1..13871301d29c5 100644 --- a/sessionctx/variable/session.go +++ b/sessionctx/variable/session.go @@ -742,6 +742,11 @@ type SessionVars struct { // StmtCtx holds variables for current executing statement. StmtCtx *stmtctx.StatementContext + // RefCountOfStmtCtx indicates the reference count of StmtCtx. When the + // StmtCtx is accessed by other sessions, e.g. oom-alarm-handler/expensive-query-handler, add one first. + // Note: this variable should be accessed and updated by atomic operations. + RefCountOfStmtCtx stmtctx.ReferenceCount + // AllowAggPushDown can be set to false to forbid aggregation push down. AllowAggPushDown bool @@ -1041,6 +1046,10 @@ type SessionVars struct { // MetricSchemaStep indicates the step when query metric schema. MetricSchemaStep int64 + + // CDCWriteSource indicates the following data is written by TiCDC if it is not 0. + CDCWriteSource uint64 + // MetricSchemaRangeDuration indicates the step when query metric schema. MetricSchemaRangeDuration int64 @@ -1290,8 +1299,10 @@ type SessionVars struct { HookContext // MemTracker indicates the memory tracker of current session. - MemTracker *memory.Tracker - DiskTracker *memory.Tracker + MemTracker *memory.Tracker + // MemDBDBFootprint tracks the memory footprint of memdb, and is attached to `MemTracker` + MemDBFootprint *memory.Tracker + DiskTracker *memory.Tracker // OptPrefixIndexSingleScan indicates whether to do some optimizations to avoid double scan for prefix index. // When set to true, `col is (not) null`(`col` is index prefix column) is regarded as index filter rather than table filter. @@ -1308,6 +1319,9 @@ type SessionVars struct { // EnablePlanReplayerCapture indicates whether enabled plan replayer capture EnablePlanReplayerCapture bool + + // StoreBatchSize indicates the batch size limit of store batch, set this field to 0 to disable store batch. + StoreBatchSize int } // GetNewChunkWithCapacity Attempt to request memory from the chunk pool @@ -1383,7 +1397,12 @@ func (s *SessionVars) InitStatementContext() *stmtctx.StatementContext { if sc == s.StmtCtx { sc = &s.cachedStmtCtx[1] } - *sc = stmtctx.StatementContext{} + if s.RefCountOfStmtCtx.TryFreeze() { + *sc = stmtctx.StatementContext{} + s.RefCountOfStmtCtx.UnFreeze() + } else { + sc = &stmtctx.StatementContext{} + } return sc } @@ -1660,18 +1679,19 @@ func NewSessionVars(hctx HookContext) *SessionVars { } vars.KVVars = tikvstore.NewVariables(&vars.Killed) vars.Concurrency = Concurrency{ - indexLookupConcurrency: DefIndexLookupConcurrency, - indexSerialScanConcurrency: DefIndexSerialScanConcurrency, - indexLookupJoinConcurrency: DefIndexLookupJoinConcurrency, - hashJoinConcurrency: DefTiDBHashJoinConcurrency, - projectionConcurrency: DefTiDBProjectionConcurrency, - distSQLScanConcurrency: DefDistSQLScanConcurrency, - hashAggPartialConcurrency: DefTiDBHashAggPartialConcurrency, - hashAggFinalConcurrency: DefTiDBHashAggFinalConcurrency, - windowConcurrency: DefTiDBWindowConcurrency, - mergeJoinConcurrency: DefTiDBMergeJoinConcurrency, - streamAggConcurrency: DefTiDBStreamAggConcurrency, - ExecutorConcurrency: DefExecutorConcurrency, + indexLookupConcurrency: DefIndexLookupConcurrency, + indexSerialScanConcurrency: DefIndexSerialScanConcurrency, + indexLookupJoinConcurrency: DefIndexLookupJoinConcurrency, + hashJoinConcurrency: DefTiDBHashJoinConcurrency, + projectionConcurrency: DefTiDBProjectionConcurrency, + distSQLScanConcurrency: DefDistSQLScanConcurrency, + hashAggPartialConcurrency: DefTiDBHashAggPartialConcurrency, + hashAggFinalConcurrency: DefTiDBHashAggFinalConcurrency, + windowConcurrency: DefTiDBWindowConcurrency, + mergeJoinConcurrency: DefTiDBMergeJoinConcurrency, + streamAggConcurrency: DefTiDBStreamAggConcurrency, + indexMergeIntersectionConcurrency: DefTiDBIndexMergeIntersectionConcurrency, + ExecutorConcurrency: DefExecutorConcurrency, } vars.MemQuota = MemQuota{ MemQuotaQuery: DefTiDBMemQuotaQuery, @@ -2386,6 +2406,10 @@ type Concurrency struct { // streamAggConcurrency is deprecated, use ExecutorConcurrency instead. streamAggConcurrency int + // indexMergeIntersectionConcurrency is the number of indexMergeProcessWorker + // Only meaningful for dynamic pruned partition table. + indexMergeIntersectionConcurrency int + // indexSerialScanConcurrency is the number of concurrent index serial scan worker. indexSerialScanConcurrency int @@ -2446,6 +2470,11 @@ func (c *Concurrency) SetStreamAggConcurrency(n int) { c.streamAggConcurrency = n } +// SetIndexMergeIntersectionConcurrency set the number of concurrent intersection process worker. +func (c *Concurrency) SetIndexMergeIntersectionConcurrency(n int) { + c.indexMergeIntersectionConcurrency = n +} + // SetIndexSerialScanConcurrency set the number of concurrent index serial scan worker. func (c *Concurrency) SetIndexSerialScanConcurrency(n int) { c.indexSerialScanConcurrency = n @@ -2528,6 +2557,14 @@ func (c *Concurrency) StreamAggConcurrency() int { return c.ExecutorConcurrency } +// IndexMergeIntersectionConcurrency return the number of concurrent process worker. +func (c *Concurrency) IndexMergeIntersectionConcurrency() int { + if c.indexMergeIntersectionConcurrency != ConcurrencyUnset { + return c.indexMergeIntersectionConcurrency + } + return c.ExecutorConcurrency +} + // IndexSerialScanConcurrency return the number of concurrent index serial scan worker. // This option is not sync with ExecutorConcurrency since it's used by Analyze table. func (c *Concurrency) IndexSerialScanConcurrency() int { diff --git a/sessionctx/variable/session_test.go b/sessionctx/variable/session_test.go index 92049902618c2..732ce4ad606cf 100644 --- a/sessionctx/variable/session_test.go +++ b/sessionctx/variable/session_test.go @@ -164,9 +164,11 @@ func TestSlowLogFormat(t *testing.T) { ProcessedKeys: 20001, TotalKeys: 10000, }, - TimeDetail: util.TimeDetail{ - ProcessTime: time.Second * time.Duration(2), - WaitTime: time.Minute, + DetailsNeedP90: execdetails.DetailsNeedP90{ + TimeDetail: util.TimeDetail{ + ProcessTime: time.Second * time.Duration(2), + WaitTime: time.Minute, + }, }, } statsInfos := make(map[string]uint64) diff --git a/sessionctx/variable/sysvar.go b/sessionctx/variable/sysvar.go index d73885663d957..b11af728bc5c2 100644 --- a/sessionctx/variable/sysvar.go +++ b/sessionctx/variable/sysvar.go @@ -300,6 +300,10 @@ var defaultSysVars = []*SysVar{ s.MetricSchemaStep = TidbOptInt64(val, DefTiDBMetricSchemaStep) return nil }}, + {Scope: ScopeSession, Name: TiDBCDCWriteSource, Value: "0", Type: TypeInt, MinValue: 0, MaxValue: 15, SetSession: func(s *SessionVars, val string) error { + s.CDCWriteSource = uint64(TidbOptInt(val, 0)) + return nil + }}, {Scope: ScopeSession, Name: TiDBMetricSchemaRangeDuration, Value: strconv.Itoa(DefTiDBMetricSchemaRangeDuration), skipInit: true, Type: TypeUnsigned, MinValue: 10, MaxValue: 60 * 60 * 60, SetSession: func(s *SessionVars, val string) error { s.MetricSchemaRangeDuration = TidbOptInt64(val, DefTiDBMetricSchemaRangeDuration) return nil @@ -486,6 +490,98 @@ var defaultSysVars = []*SysVar{ } return normalizedValue, nil }}, + {Scope: ScopeGlobal, Name: ValidatePasswordEnable, Value: Off, Type: TypeBool}, + {Scope: ScopeGlobal, Name: ValidatePasswordPolicy, Value: "MEDIUM", Type: TypeEnum, PossibleValues: []string{"LOW", "MEDIUM", "STRONG"}}, + {Scope: ScopeGlobal, Name: ValidatePasswordCheckUserName, Value: On, Type: TypeBool}, + {Scope: ScopeGlobal, Name: ValidatePasswordLength, Value: "8", Type: TypeInt, MinValue: 0, MaxValue: math.MaxInt32, + Validation: func(vars *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { + numberCount, specialCharCount, mixedCaseCount := PasswordValidtaionNumberCount.Load(), PasswordValidationSpecialCharCount.Load(), PasswordValidationMixedCaseCount.Load() + length, err := strconv.ParseInt(normalizedValue, 10, 32) + if err != nil { + return "", err + } + if minLength := numberCount + specialCharCount + 2*mixedCaseCount; int32(length) < minLength { + return strconv.FormatInt(int64(minLength), 10), nil + } + return normalizedValue, nil + }, + SetGlobal: func(_ context.Context, s *SessionVars, val string) error { + PasswordValidationLength.Store(int32(TidbOptInt64(val, 8))) + return nil + }, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return strconv.FormatInt(int64(PasswordValidationLength.Load()), 10), nil + }, + }, + {Scope: ScopeGlobal, Name: ValidatePasswordMixedCaseCount, Value: "1", Type: TypeInt, MinValue: 0, MaxValue: math.MaxInt32, + Validation: func(vars *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { + length, numberCount, specialCharCount := PasswordValidationLength.Load(), PasswordValidtaionNumberCount.Load(), PasswordValidationSpecialCharCount.Load() + mixedCaseCount, err := strconv.ParseInt(normalizedValue, 10, 32) + if err != nil { + return "", err + } + if minLength := numberCount + specialCharCount + 2*int32(mixedCaseCount); length < minLength { + err = updatePasswordValidationLength(vars, minLength) + if err != nil { + return "", err + } + } + return normalizedValue, nil + }, + SetGlobal: func(_ context.Context, s *SessionVars, val string) error { + PasswordValidationMixedCaseCount.Store(int32(TidbOptInt64(val, 1))) + return nil + }, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return strconv.FormatInt(int64(PasswordValidationMixedCaseCount.Load()), 10), nil + }, + }, + {Scope: ScopeGlobal, Name: ValidatePasswordNumberCount, Value: "1", Type: TypeInt, MinValue: 0, MaxValue: math.MaxInt32, + Validation: func(vars *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { + length, specialCharCount, mixedCaseCount := PasswordValidationLength.Load(), PasswordValidationSpecialCharCount.Load(), PasswordValidationMixedCaseCount.Load() + numberCount, err := strconv.ParseInt(normalizedValue, 10, 32) + if err != nil { + return "", err + } + if minLength := int32(numberCount) + specialCharCount + 2*mixedCaseCount; length < minLength { + err = updatePasswordValidationLength(vars, minLength) + if err != nil { + return "", err + } + } + return normalizedValue, nil + }, + SetGlobal: func(_ context.Context, s *SessionVars, val string) error { + PasswordValidtaionNumberCount.Store(int32(TidbOptInt64(val, 1))) + return nil + }, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return strconv.FormatInt(int64(PasswordValidtaionNumberCount.Load()), 10), nil + }, + }, + {Scope: ScopeGlobal, Name: ValidatePasswordSpecialCharCount, Value: "1", Type: TypeInt, MinValue: 0, MaxValue: math.MaxInt32, + Validation: func(vars *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { + length, numberCount, mixedCaseCount := PasswordValidationLength.Load(), PasswordValidtaionNumberCount.Load(), PasswordValidationMixedCaseCount.Load() + specialCharCount, err := strconv.ParseInt(normalizedValue, 10, 32) + if err != nil { + return "", err + } + if minLength := numberCount + int32(specialCharCount) + 2*mixedCaseCount; length < minLength { + err = updatePasswordValidationLength(vars, minLength) + if err != nil { + return "", err + } + } + return normalizedValue, nil + }, + SetGlobal: func(_ context.Context, s *SessionVars, val string) error { + PasswordValidationSpecialCharCount.Store(int32(TidbOptInt64(val, 1))) + return nil + }, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return strconv.FormatInt(int64(PasswordValidationSpecialCharCount.Load()), 10), nil + }, + }, + {Scope: ScopeGlobal, Name: ValidatePasswordDictionary, Value: "", Type: TypeStr}, + {Scope: ScopeGlobal, Name: DisconnectOnExpiredPassword, Value: On, Type: TypeBool, ReadOnly: true, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return BoolToOnOff(!IsSandBoxModeEnabled.Load()), nil + }}, /* TiDB specific variables */ {Scope: ScopeGlobal, Name: TiDBTSOClientBatchMaxWaitTime, Value: strconv.FormatFloat(DefTiDBTSOClientBatchMaxWaitTime, 'f', -1, 64), Type: TypeFloat, MinValue: 0, MaxValue: 10, @@ -696,6 +792,7 @@ var defaultSysVars = []*SysVar{ // TopSQL enable only be controlled by TopSQL pub/sub sinker. // This global variable only uses to update the global config which store in PD(ETCD). {Scope: ScopeGlobal, Name: TiDBEnableTopSQL, Value: BoolToOnOff(topsqlstate.DefTiDBTopSQLEnable), Type: TypeBool, AllowEmpty: true, GlobalConfigName: GlobalConfigEnableTopSQL}, + {Scope: ScopeGlobal, Name: TiDBSourceID, Value: "1", Type: TypeInt, MinValue: 1, MaxValue: 15, GlobalConfigName: GlobalConfigSourceID}, {Scope: ScopeGlobal, Name: TiDBTopSQLMaxTimeSeriesCount, Value: strconv.Itoa(topsqlstate.DefTiDBTopSQLMaxTimeSeriesCount), Type: TypeInt, MinValue: 1, MaxValue: 5000, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { return strconv.FormatInt(topsqlstate.GlobalState.MaxStatementCount.Load(), 10), nil }, SetGlobal: func(_ context.Context, vars *SessionVars, s string) error { @@ -791,14 +888,19 @@ var defaultSysVars = []*SysVar{ return nil }, }, - {Scope: ScopeGlobal, Name: TiDBServerMemoryLimitSessMinSize, Value: strconv.FormatUint(DefTiDBServerMemoryLimitSessMinSize, 10), Type: TypeUnsigned, MinValue: 0, MaxValue: math.MaxUint64, + {Scope: ScopeGlobal, Name: TiDBServerMemoryLimitSessMinSize, Value: strconv.FormatUint(DefTiDBServerMemoryLimitSessMinSize, 10), Type: TypeStr, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { return memory.ServerMemoryLimitSessMinSize.String(), nil }, Validation: func(s *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { intVal, err := strconv.ParseUint(normalizedValue, 10, 64) if err != nil { - return "", err + bt, str := parseByteSize(normalizedValue) + if str != "" { + intVal = bt + } else { + return "", err + } } if intVal > 0 && intVal < 128 { // 128 Bytes s.StmtCtx.AppendWarning(ErrTruncatedWrongValue.GenWithStackByArgs(TiDBServerMemoryLimitSessMinSize, originalValue)) @@ -815,17 +917,22 @@ var defaultSysVars = []*SysVar{ return nil }, }, - {Scope: ScopeGlobal, Name: TiDBServerMemoryLimitGCTrigger, Value: strconv.FormatFloat(DefTiDBServerMemoryLimitGCTrigger, 'f', -1, 64), Type: TypeFloat, MinValue: 0, MaxValue: math.MaxUint64, + {Scope: ScopeGlobal, Name: TiDBServerMemoryLimitGCTrigger, Value: strconv.FormatFloat(DefTiDBServerMemoryLimitGCTrigger, 'f', -1, 64), Type: TypeStr, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { return strconv.FormatFloat(gctuner.GlobalMemoryLimitTuner.GetPercentage(), 'f', -1, 64), nil }, Validation: func(s *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { floatValue, err := strconv.ParseFloat(normalizedValue, 64) if err != nil { - return "", err + perc, str := parsePercentage(normalizedValue) + if len(str) != 0 { + floatValue = float64(perc) / 100 + } else { + return "", err + } } gogcTunerThreshold := GOGCTunerThreshold.Load() - if floatValue < 0.51 && floatValue > 1 { // 51% ~ 100% + if floatValue < 0.51 || floatValue > 1 { // 51% ~ 100% return "", ErrWrongValueForVar.GenWithStackByArgs(TiDBServerMemoryLimitGCTrigger, normalizedValue) } // gogcTunerThreshold must not be 0. it will be 0 when tidb_gogc_tuner_threshold is not set during startup. @@ -1027,6 +1134,8 @@ var defaultSysVars = []*SysVar{ }, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { return BoolToOnOff(EnableTmpStorageOnOOM.Load()), nil }}, + {Scope: ScopeGlobal, Name: TiDBAutoBuildStatsConcurrency, Value: strconv.Itoa(DefTiDBAutoBuildStatsConcurrency), Type: TypeInt, MinValue: 1, MaxValue: MaxConfigurableConcurrency}, + {Scope: ScopeGlobal, Name: TiDBSysProcScanConcurrency, Value: strconv.Itoa(DefTiDBSysProcScanConcurrency), Type: TypeInt, MinValue: 1, MaxValue: MaxConfigurableConcurrency}, {Scope: ScopeGlobal, Name: TiDBMemoryUsageAlarmRatio, Value: strconv.FormatFloat(DefMemoryUsageAlarmRatio, 'f', -1, 64), Type: TypeFloat, MinValue: 0.0, MaxValue: 1.0, SetGlobal: func(_ context.Context, s *SessionVars, val string) error { MemoryUsageAlarmRatio.Store(tidbOptFloat64(val, DefMemoryUsageAlarmRatio)) return nil @@ -1037,7 +1146,19 @@ var defaultSysVars = []*SysVar{ MemoryUsageAlarmKeepRecordNum.Store(TidbOptInt64(val, DefMemoryUsageAlarmKeepRecordNum)) return nil }, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { - return fmt.Sprintf("%d", MemoryUsageAlarmKeepRecordNum.Load()), nil + return strconv.FormatInt(MemoryUsageAlarmKeepRecordNum.Load(), 10), nil + }}, + {Scope: ScopeGlobal, Name: PasswordReuseHistory, Value: strconv.Itoa(DefPasswordReuseHistory), Type: TypeUnsigned, MinValue: 0, MaxValue: math.MaxUint32, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return strconv.FormatInt(PasswordHistory.Load(), 10), nil + }, SetGlobal: func(_ context.Context, s *SessionVars, val string) error { + PasswordHistory.Store(TidbOptInt64(val, DefPasswordReuseHistory)) + return nil + }}, + {Scope: ScopeGlobal, Name: PasswordReuseTime, Value: strconv.Itoa(DefPasswordReuseTime), Type: TypeUnsigned, MinValue: 0, MaxValue: math.MaxUint32, GetGlobal: func(_ context.Context, s *SessionVars) (string, error) { + return strconv.FormatInt(PasswordReuseInterval.Load(), 10), nil + }, SetGlobal: func(_ context.Context, s *SessionVars, val string) error { + PasswordReuseInterval.Store(TidbOptInt64(val, DefPasswordReuseTime)) + return nil }}, /* The system variables below have GLOBAL and SESSION scope */ @@ -1047,7 +1168,7 @@ var defaultSysVars = []*SysVar{ return nil }, GetSession: func(vars *SessionVars) (string, error) { - return strconv.FormatBool(vars.EnablePlanReplayerCapture), nil + return BoolToOnOff(vars.EnablePlanReplayerCapture), nil }, }, {Scope: ScopeGlobal | ScopeSession, Name: TiDBRowFormatVersion, Value: strconv.Itoa(DefTiDBRowFormatV1), Type: TypeUnsigned, MinValue: 1, MaxValue: 2, SetGlobal: func(_ context.Context, s *SessionVars, val string) error { @@ -1497,6 +1618,13 @@ var defaultSysVars = []*SysVar{ appendDeprecationWarning(vars, TiDBStreamAggConcurrency, TiDBExecutorConcurrency) return normalizedValue, nil }}, + {Scope: ScopeGlobal | ScopeSession, Name: TiDBIndexMergeIntersectionConcurrency, Value: strconv.Itoa(DefTiDBIndexMergeIntersectionConcurrency), Type: TypeInt, MinValue: 1, MaxValue: MaxConfigurableConcurrency, AllowAutoValue: true, SetSession: func(s *SessionVars, val string) error { + s.indexMergeIntersectionConcurrency = tidbOptPositiveInt32(val, ConcurrencyUnset) + return nil + }, Validation: func(vars *SessionVars, normalizedValue string, originalValue string, scope ScopeFlag) (string, error) { + appendDeprecationWarning(vars, TiDBIndexMergeIntersectionConcurrency, TiDBExecutorConcurrency) + return normalizedValue, nil + }}, {Scope: ScopeGlobal | ScopeSession, Name: TiDBEnableParallelApply, Value: BoolToOnOff(DefTiDBEnableParallelApply), Type: TypeBool, SetSession: func(s *SessionVars, val string) error { s.EnableParallelApply = TiDBOptOn(val) return nil @@ -1999,6 +2127,52 @@ var defaultSysVars = []*SysVar{ s.EnableReuseCheck = TiDBOptOn(val) return nil }}, + {Scope: ScopeGlobal, Name: TiDBTTLJobEnable, Value: BoolToOnOff(DefTiDBTTLJobEnable), Type: TypeBool, SetGlobal: func(ctx context.Context, vars *SessionVars, s string) error { + EnableTTLJob.Store(TiDBOptOn(s)) + return nil + }, GetGlobal: func(ctx context.Context, vars *SessionVars) (string, error) { + return BoolToOnOff(EnableTTLJob.Load()), nil + }}, + {Scope: ScopeGlobal, Name: TiDBTTLScanBatchSize, Value: strconv.Itoa(DefTiDBTTLScanBatchSize), Type: TypeInt, MinValue: DefTiDBTTLScanBatchMinSize, MaxValue: DefTiDBTTLScanBatchMaxSize, SetGlobal: func(ctx context.Context, vars *SessionVars, s string) error { + val, err := strconv.ParseInt(s, 10, 64) + if err != nil { + return err + } + TTLScanBatchSize.Store(val) + return nil + }, GetGlobal: func(ctx context.Context, vars *SessionVars) (string, error) { + val := TTLScanBatchSize.Load() + return strconv.FormatInt(val, 10), nil + }}, + {Scope: ScopeGlobal, Name: TiDBTTLDeleteBatchSize, Value: strconv.Itoa(DefTiDBTTLDeleteBatchSize), Type: TypeInt, MinValue: DefTiDBTTLDeleteBatchMinSize, MaxValue: DefTiDBTTLDeleteBatchMaxSize, SetGlobal: func(ctx context.Context, vars *SessionVars, s string) error { + val, err := strconv.ParseInt(s, 10, 64) + if err != nil { + return err + } + TTLDeleteBatchSize.Store(val) + return nil + }, GetGlobal: func(ctx context.Context, vars *SessionVars) (string, error) { + val := TTLDeleteBatchSize.Load() + return strconv.FormatInt(val, 10), nil + }}, + {Scope: ScopeGlobal, Name: TiDBTTLDeleteRateLimit, Value: strconv.Itoa(DefTiDBTTLDeleteRateLimit), Type: TypeInt, MinValue: 0, MaxValue: math.MaxInt64, SetGlobal: func(ctx context.Context, vars *SessionVars, s string) error { + val, err := strconv.ParseInt(s, 10, 64) + if err != nil { + return err + } + TTLDeleteRateLimit.Store(val) + return nil + }, GetGlobal: func(ctx context.Context, vars *SessionVars) (string, error) { + val := TTLDeleteRateLimit.Load() + return strconv.FormatInt(val, 10), nil + }}, + { + Scope: ScopeGlobal | ScopeSession, Name: TiDBStoreBatchSize, Value: strconv.FormatInt(DefTiDBStoreBatchSize, 10), + Type: TypeInt, MinValue: 0, MaxValue: 25000, SetSession: func(s *SessionVars, val string) error { + s.StoreBatchSize = TidbOptInt(val, DefTiDBStoreBatchSize) + return nil + }, + }, } // FeedbackProbability points to the FeedbackProbability in statistics package. @@ -2099,6 +2273,10 @@ const ( WarningCount = "warning_count" // ErrorCount is the name for 'error_count' system variable. ErrorCount = "error_count" + // DefaultPasswordLifetime is the name for 'default_password_lifetime' system variable. + DefaultPasswordLifetime = "default_password_lifetime" + // DisconnectOnExpiredPassword is the name for 'disconnect_on_expired_password' system variable. + DisconnectOnExpiredPassword = "disconnect_on_expired_password" // SQLSelectLimit is the name for 'sql_select_limit' system variable. SQLSelectLimit = "sql_select_limit" // MaxConnectErrors is the name for 'max_connect_errors' system variable. @@ -2115,10 +2293,6 @@ const ( BlockEncryptionMode = "block_encryption_mode" // WaitTimeout is the name for 'wait_timeout' system variable. WaitTimeout = "wait_timeout" - // ValidatePasswordNumberCount is the name of 'validate_password_number_count' system variable. - ValidatePasswordNumberCount = "validate_password_number_count" - // ValidatePasswordLength is the name of 'validate_password_length' system variable. - ValidatePasswordLength = "validate_password_length" // Version is the name of 'version' system variable. Version = "version" // VersionComment is the name of 'version_comment' system variable. @@ -2141,8 +2315,6 @@ const ( BinlogOrderCommits = "binlog_order_commits" // MasterVerifyChecksum is the name for 'master_verify_checksum' system variable. MasterVerifyChecksum = "master_verify_checksum" - // ValidatePasswordCheckUserName is the name for 'validate_password_check_user_name' system variable. - ValidatePasswordCheckUserName = "validate_password_check_user_name" // SuperReadOnly is the name for 'super_read_only' system variable. SuperReadOnly = "super_read_only" // SQLNotes is the name for 'sql_notes' system variable. @@ -2309,4 +2481,21 @@ const ( RandSeed2 = "rand_seed2" // SQLRequirePrimaryKey is the name of `sql_require_primary_key` system variable. SQLRequirePrimaryKey = "sql_require_primary_key" + // ValidatePasswordEnable turns on/off the validation of password. + ValidatePasswordEnable = "validate_password.enable" + // ValidatePasswordPolicy specifies the password policy enforced by validate_password. + ValidatePasswordPolicy = "validate_password.policy" + // ValidatePasswordCheckUserName controls whether validate_password compares passwords to the user name part of + // the effective user account for the current session + ValidatePasswordCheckUserName = "validate_password.check_user_name" + // ValidatePasswordLength specified the minimum number of characters that validate_password requires passwords to have + ValidatePasswordLength = "validate_password.length" + // ValidatePasswordMixedCaseCount specified the minimum number of lowercase and uppercase characters that validate_password requires + ValidatePasswordMixedCaseCount = "validate_password.mixed_case_count" + // ValidatePasswordNumberCount specified the minimum number of numeric (digit) characters that validate_password requires + ValidatePasswordNumberCount = "validate_password.number_count" + // ValidatePasswordSpecialCharCount specified the minimum number of nonalphanumeric characters that validate_password requires + ValidatePasswordSpecialCharCount = "validate_password.special_char_count" + // ValidatePasswordDictionary specified the dictionary that validate_password uses for checking passwords. Each word is separated by semicolon (;). + ValidatePasswordDictionary = "validate_password.dictionary" ) diff --git a/sessionctx/variable/sysvar_test.go b/sessionctx/variable/sysvar_test.go index b44c852aed1fa..3613870004bad 100644 --- a/sessionctx/variable/sysvar_test.go +++ b/sessionctx/variable/sysvar_test.go @@ -27,6 +27,7 @@ import ( "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/parser/terror" + "github.com/pingcap/tidb/util/gctuner" "github.com/pingcap/tidb/util/memory" "github.com/stretchr/testify/require" ) @@ -691,8 +692,8 @@ func TestSetTIDBFastDDL(t *testing.T) { vars.GlobalVarsAccessor = mock fastDDL := GetSysVar(TiDBDDLEnableFastReorg) - // Default off - require.Equal(t, fastDDL.Value, Off) + // Default true + require.Equal(t, fastDDL.Value, On) // Set to On err := mock.SetGlobalSysVar(context.Background(), TiDBDDLEnableFastReorg, On) @@ -843,7 +844,6 @@ func TestTiDBServerMemoryLimit2(t *testing.T) { mock.SessionVars = vars vars.GlobalVarsAccessor = mock var ( - //mb uint64 = 1 << 20 err error val string ) @@ -951,6 +951,91 @@ func TestTiDBServerMemoryLimit2(t *testing.T) { require.Error(t, err) } +func TestTiDBServerMemoryLimitSessMinSize(t *testing.T) { + vars := NewSessionVars(nil) + mock := NewMockGlobalAccessor4Tests() + mock.SessionVars = vars + vars.GlobalVarsAccessor = mock + + var ( + err error + val string + ) + + serverMemroyLimitSessMinSize := GetSysVar(TiDBServerMemoryLimitSessMinSize) + // Check default value + require.Equal(t, serverMemroyLimitSessMinSize.Value, strconv.FormatInt(DefTiDBServerMemoryLimitSessMinSize, 10)) + + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitSessMinSize, "123456") + require.NoError(t, err) + val, err = mock.GetGlobalSysVar(TiDBServerMemoryLimitSessMinSize) + require.NoError(t, err) + require.Equal(t, memory.ServerMemoryLimitSessMinSize.Load(), uint64(123456)) + require.Equal(t, "123456", val) + + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitSessMinSize, "100") + require.NoError(t, err) + val, err = mock.GetGlobalSysVar(TiDBServerMemoryLimitSessMinSize) + require.NoError(t, err) + require.Equal(t, memory.ServerMemoryLimitSessMinSize.Load(), uint64(128)) + require.Equal(t, "128", val) + + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitSessMinSize, "123MB") + require.NoError(t, err) + val, err = mock.GetGlobalSysVar(TiDBServerMemoryLimitSessMinSize) + require.NoError(t, err) + require.Equal(t, memory.ServerMemoryLimitSessMinSize.Load(), uint64(123<<20)) + require.Equal(t, "128974848", val) +} + +func TestTiDBServerMemoryLimitGCTrigger(t *testing.T) { + vars := NewSessionVars(nil) + mock := NewMockGlobalAccessor4Tests() + mock.SessionVars = vars + vars.GlobalVarsAccessor = mock + + var ( + err error + val string + ) + + serverMemroyLimitGCTrigger := GetSysVar(TiDBServerMemoryLimitGCTrigger) + // Check default value + require.Equal(t, serverMemroyLimitGCTrigger.Value, strconv.FormatFloat(DefTiDBServerMemoryLimitGCTrigger, 'f', -1, 64)) + defer func() { + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, strconv.FormatFloat(DefTiDBServerMemoryLimitGCTrigger, 'f', -1, 64)) + require.NoError(t, err) + }() + + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "0.8") + require.NoError(t, err) + val, err = mock.GetGlobalSysVar(TiDBServerMemoryLimitGCTrigger) + require.NoError(t, err) + require.Equal(t, gctuner.GlobalMemoryLimitTuner.GetPercentage(), 0.8) + require.Equal(t, "0.8", val) + + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "90%") + require.NoError(t, err) + val, err = mock.GetGlobalSysVar(TiDBServerMemoryLimitGCTrigger) + require.NoError(t, err) + require.Equal(t, gctuner.GlobalMemoryLimitTuner.GetPercentage(), 0.9) + require.Equal(t, "0.9", val) + + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "100%") + require.Error(t, err) + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "101%") + require.Error(t, err) + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "99%") + require.NoError(t, err) + + err = mock.SetGlobalSysVar(context.Background(), TiDBGOGCTunerThreshold, "0.4") + require.NoError(t, err) + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "49%") + require.Error(t, err) + err = mock.SetGlobalSysVar(context.Background(), TiDBServerMemoryLimitGCTrigger, "51%") + require.NoError(t, err) +} + func TestSetAggPushDownGlobally(t *testing.T) { vars := NewSessionVars(nil) mock := NewMockGlobalAccessor4Tests() diff --git a/sessionctx/variable/tidb_vars.go b/sessionctx/variable/tidb_vars.go index 3511775de08f1..7c9175487d79f 100644 --- a/sessionctx/variable/tidb_vars.go +++ b/sessionctx/variable/tidb_vars.go @@ -425,6 +425,9 @@ const ( // tidb_stream_agg_concurrency is deprecated, use tidb_executor_concurrency instead. TiDBStreamAggConcurrency = "tidb_streamagg_concurrency" + // TiDBIndexMergeIntersectionConcurrency is used for parallel worker of index merge intersection. + TiDBIndexMergeIntersectionConcurrency = "tidb_index_merge_intersection_concurrency" + // TiDBEnableParallelApply is used for parallel apply. TiDBEnableParallelApply = "tidb_enable_parallel_apply" @@ -555,6 +558,9 @@ const ( // TiDBMetricSchemaStep indicates the step when query metric schema. TiDBMetricSchemaStep = "tidb_metric_query_step" + // TiDBCDCWriteSource indicates the following data is written by TiCDC if it is not 0. + TiDBCDCWriteSource = "tidb_cdc_write_source" + // TiDBMetricSchemaRangeDuration indicates the range duration when query metric schema. TiDBMetricSchemaRangeDuration = "tidb_metric_query_range_duration" @@ -627,6 +633,9 @@ const ( // TiDBEnableTopSQL indicates whether the top SQL is enabled. TiDBEnableTopSQL = "tidb_enable_top_sql" + // TiDBSourceID indicates the source ID of the TiDB server. + TiDBSourceID = "tidb_source_id" + // TiDBTopSQLMaxTimeSeriesCount indicates the max number of statements been collected in each time series. TiDBTopSQLMaxTimeSeriesCount = "tidb_top_sql_max_time_series_count" @@ -772,6 +781,9 @@ const ( TiDBEnablePlanReplayerCapture = "tidb_enable_plan_replayer_capture" // TiDBEnableReusechunk indicates whether to enable chunk alloc TiDBEnableReusechunk = "tidb_enable_reuse_chunk" + + // TiDBStoreBatchSize indicates the batch size of coprocessor in the same store. + TiDBStoreBatchSize = "tidb_store_batch_size" ) // TiDB vars that have only global scope @@ -840,6 +852,10 @@ const ( TiDBDDLEnableFastReorg = "tidb_ddl_enable_fast_reorg" // TiDBDDLDiskQuota used to set disk quota for lightning add index. TiDBDDLDiskQuota = "tidb_ddl_disk_quota" + // TiDBAutoBuildStatsConcurrency is used to set the build concurrency of auto-analyze. + TiDBAutoBuildStatsConcurrency = "tidb_auto_build_stats_concurrency" + // TiDBSysProcScanConcurrency is used to set the scan concurrency of for backend system processes, like auto-analyze. + TiDBSysProcScanConcurrency = "tidb_sysproc_scan_concurrency" // TiDBServerMemoryLimit indicates the memory limit of the tidb-server instance. TiDBServerMemoryLimit = "tidb_server_memory_limit" // TiDBServerMemoryLimitSessMinSize indicates the minimal memory used of a session, that becomes a candidate for session kill. @@ -852,6 +868,18 @@ const ( TiDBGOGCTunerThreshold = "tidb_gogc_tuner_threshold" // TiDBExternalTS is the ts to read through when the `TiDBEnableExternalTsRead` is on TiDBExternalTS = "tidb_external_ts" + // TiDBTTLJobEnable is used to enable/disable scheduling ttl job + TiDBTTLJobEnable = "tidb_ttl_job_enable" + // TiDBTTLScanBatchSize is used to control the batch size in the SELECT statement for TTL jobs + TiDBTTLScanBatchSize = "tidb_ttl_scan_batch_size" + // TiDBTTLDeleteBatchSize is used to control the batch size in the DELETE statement for TTL jobs + TiDBTTLDeleteBatchSize = "tidb_ttl_delete_batch_size" + // TiDBTTLDeleteRateLimit is used to control the delete rate limit for TTL jobs in each node + TiDBTTLDeleteRateLimit = "tidb_ttl_delete_rate_limit" + // PasswordReuseHistory limit a few passwords to reuse. + PasswordReuseHistory = "password_history" + // PasswordReuseTime limit how long passwords can be reused. + PasswordReuseTime = "password_reuse_interval" ) // TiDB intentional limits @@ -926,7 +954,7 @@ const ( DefBroadcastJoinThresholdCount = 10 * 1024 DefTiDBOptimizerSelectivityLevel = 0 DefTiDBOptimizerEnableNewOFGB = false - DefTiDBEnableOuterJoinReorder = false + DefTiDBEnableOuterJoinReorder = true DefTiDBEnableNAAJ = false DefTiDBAllowBatchCop = 1 DefTiDBAllowMPPExecution = true @@ -1065,7 +1093,7 @@ const ( DefTiFlashFastScan = false DefMemoryUsageAlarmRatio = 0.7 DefMemoryUsageAlarmKeepRecordNum = 5 - DefTiDBEnableFastReorg = false + DefTiDBEnableFastReorg = true DefTiDBDDLDiskQuota = 100 * 1024 * 1024 * 1024 // 100GB DefExecutorConcurrency = 5 DefTiDBEnableGeneralPlanCache = false @@ -1075,23 +1103,37 @@ const ( MaxDDLReorgBatchSize int32 = 10240 MinDDLReorgBatchSize int32 = 32 MinExpensiveQueryTimeThreshold uint64 = 10 // 10s + DefTiDBAutoBuildStatsConcurrency = 1 + DefTiDBSysProcScanConcurrency = 1 DefTiDBRcWriteCheckTs = false DefTiDBForeignKeyChecks = false DefTiDBAnalyzePartitionConcurrency = 1 DefTiDBOptRangeMaxSize = 64 * int64(size.MB) // 64 MB - DefTiDBCostModelVer = 1 + DefTiDBCostModelVer = 2 DefTiDBServerMemoryLimitSessMinSize = 128 << 20 DefTiDBMergePartitionStatsConcurrency = 1 DefTiDBServerMemoryLimitGCTrigger = 0.7 DefTiDBEnableGOGCTuner = true // DefTiDBGOGCTunerThreshold is to limit TiDBGOGCTunerThreshold. - DefTiDBGOGCTunerThreshold float64 = 0.6 - DefTiDBOptPrefixIndexSingleScan = true - DefTiDBExternalTS = 0 - DefTiDBEnableExternalTSRead = false - DefTiDBEnableReusechunk = true - DefTiDBUseAlloc = false - DefTiDBEnablePlanReplayerCapture = false + DefTiDBGOGCTunerThreshold float64 = 0.6 + DefTiDBOptPrefixIndexSingleScan = true + DefTiDBExternalTS = 0 + DefTiDBEnableExternalTSRead = false + DefTiDBEnableReusechunk = true + DefTiDBUseAlloc = false + DefTiDBEnablePlanReplayerCapture = false + DefTiDBIndexMergeIntersectionConcurrency = ConcurrencyUnset + DefTiDBTTLJobEnable = true + DefTiDBTTLScanBatchSize = 500 + DefTiDBTTLScanBatchMaxSize = 10240 + DefTiDBTTLScanBatchMinSize = 1 + DefTiDBTTLDeleteBatchSize = 500 + DefTiDBTTLDeleteBatchMaxSize = 10240 + DefTiDBTTLDeleteBatchMinSize = 1 + DefTiDBTTLDeleteRateLimit = 0 + DefPasswordReuseHistory = 0 + DefPasswordReuseTime = 0 + DefTiDBStoreBatchSize = 0 ) // Process global variables. @@ -1148,8 +1190,19 @@ var ( // DefTiDBServerMemoryLimit indicates the default value of TiDBServerMemoryLimit(TotalMem * 80%). // It should be a const and shouldn't be modified after tidb is started. - DefTiDBServerMemoryLimit = serverMemoryLimitDefaultValue() - GOGCTunerThreshold = atomic.NewFloat64(DefTiDBGOGCTunerThreshold) + DefTiDBServerMemoryLimit = serverMemoryLimitDefaultValue() + GOGCTunerThreshold = atomic.NewFloat64(DefTiDBGOGCTunerThreshold) + PasswordValidationLength = atomic.NewInt32(8) + PasswordValidationMixedCaseCount = atomic.NewInt32(1) + PasswordValidtaionNumberCount = atomic.NewInt32(1) + PasswordValidationSpecialCharCount = atomic.NewInt32(1) + EnableTTLJob = atomic.NewBool(DefTiDBTTLJobEnable) + TTLScanBatchSize = atomic.NewInt64(DefTiDBTTLScanBatchSize) + TTLDeleteBatchSize = atomic.NewInt64(DefTiDBTTLDeleteBatchSize) + TTLDeleteRateLimit = atomic.NewInt64(DefTiDBTTLDeleteRateLimit) + PasswordHistory = atomic.NewInt64(DefPasswordReuseHistory) + PasswordReuseInterval = atomic.NewInt64(DefPasswordReuseTime) + IsSandBoxModeEnabled = atomic.NewBool(false) ) var ( diff --git a/sessionctx/variable/variable.go b/sessionctx/variable/variable.go index 4b7faa09481c8..2792e373cdda1 100644 --- a/sessionctx/variable/variable.go +++ b/sessionctx/variable/variable.go @@ -85,6 +85,7 @@ const ( // Global config name list. const ( GlobalConfigEnableTopSQL = "enable_resource_metering" + GlobalConfigSourceID = "source_id" ) func (s ScopeFlag) String() string { diff --git a/sessionctx/variable/varsutil.go b/sessionctx/variable/varsutil.go index b64500b91d208..7329ac6300253 100644 --- a/sessionctx/variable/varsutil.go +++ b/sessionctx/variable/varsutil.go @@ -15,6 +15,7 @@ package variable import ( + "context" "fmt" "io" "strconv" @@ -531,6 +532,15 @@ func collectAllowFuncName4ExpressionIndex() string { return strings.Join(str, ", ") } +func updatePasswordValidationLength(s *SessionVars, length int32) error { + err := s.GlobalVarsAccessor.SetGlobalSysVarOnly(context.Background(), ValidatePasswordLength, strconv.FormatInt(int64(length), 10)) + if err != nil { + return err + } + PasswordValidationLength.Store(length) + return nil +} + // GAFunction4ExpressionIndex stores functions GA for expression index. var GAFunction4ExpressionIndex = map[string]struct{}{ ast.Lower: {}, diff --git a/sessionctx/variable/varsutil_test.go b/sessionctx/variable/varsutil_test.go index 69c9caf294e5e..cdd48a789b9b5 100644 --- a/sessionctx/variable/varsutil_test.go +++ b/sessionctx/variable/varsutil_test.go @@ -74,6 +74,7 @@ func TestNewSessionVars(t *testing.T) { require.Equal(t, DefExecutorConcurrency, vars.HashAggPartialConcurrency()) require.Equal(t, DefExecutorConcurrency, vars.HashAggFinalConcurrency()) require.Equal(t, DefExecutorConcurrency, vars.WindowConcurrency()) + require.Equal(t, DefExecutorConcurrency, vars.IndexMergeIntersectionConcurrency()) require.Equal(t, DefTiDBMergeJoinConcurrency, vars.MergeJoinConcurrency()) require.Equal(t, DefTiDBStreamAggConcurrency, vars.StreamAggConcurrency()) require.Equal(t, DefDistSQLScanConcurrency, vars.DistSQLScanConcurrency()) diff --git a/sessiontxn/isolation/base.go b/sessiontxn/isolation/base.go index eeac646675bdf..97c6abfc35081 100644 --- a/sessiontxn/isolation/base.go +++ b/sessiontxn/isolation/base.go @@ -267,6 +267,10 @@ func (p *baseTxnContextProvider) ActivateTxn() (kv.Transaction, error) { sessVars := p.sctx.GetSessionVars() sessVars.TxnCtx.StartTS = txn.StartTS() + if sessVars.MemDBFootprint != nil { + sessVars.MemDBFootprint.Detach() + } + sessVars.MemDBFootprint = nil if p.enterNewTxnType == sessiontxn.EnterNewTxnBeforeStmt && !sessVars.IsAutocommit() && sessVars.SnapshotTS == 0 { sessVars.SetInTxn(true) diff --git a/statistics/column.go b/statistics/column.go index ccd541f276bcf..9d988c1eb7503 100644 --- a/statistics/column.go +++ b/statistics/column.go @@ -121,9 +121,6 @@ func (c *Column) IsInvalid(sctx sessionctx.Context, collPseudo bool) bool { } if sctx != nil { stmtctx := sctx.GetSessionVars().StmtCtx - if stmtctx != nil && stmtctx.StatsLoad.Fallback { - return true - } if c.IsLoadNeeded() && stmtctx != nil { if stmtctx.StatsLoad.Timeout > 0 { logutil.BgLogger().Warn("Hist for column should already be loaded as sync but not found.", diff --git a/statistics/handle/gc.go b/statistics/handle/gc.go index 1babb4321eb9e..6ef3ee3f7c12c 100644 --- a/statistics/handle/gc.go +++ b/statistics/handle/gc.go @@ -50,6 +50,9 @@ func (h *Handle) GCStats(is infoschema.InfoSchema, ddlLease time.Duration) error if err := h.gcTableStats(is, row.GetInt64(0)); err != nil { return errors.Trace(err) } + if err := h.gcHistoryStatsFromKV(row.GetInt64(0)); err != nil { + return errors.Trace(err) + } } return h.removeDeletedExtendedStats(gcVer) } @@ -138,6 +141,28 @@ func (h *Handle) gcTableStats(is infoschema.InfoSchema, physicalID int64) error return nil } +func (h *Handle) gcHistoryStatsFromKV(physicalID int64) error { + h.mu.Lock() + defer h.mu.Unlock() + exec := h.mu.ctx.(sqlexec.SQLExecutor) + ctx := kv.WithInternalSourceType(context.Background(), kv.InternalTxnStats) + _, err := exec.ExecuteInternal(ctx, "begin pessimistic") + if err != nil { + return errors.Trace(err) + } + defer func() { + err = finishTransaction(ctx, exec, err) + }() + sql := "delete from mysql.stats_history where table_id = %?" + _, err = exec.ExecuteInternal(ctx, sql, physicalID) + if err != nil { + return errors.Trace(err) + } + sql = "delete from mysql.stats_meta_history where table_id = %?" + _, err = exec.ExecuteInternal(ctx, sql, physicalID) + return err +} + // deleteHistStatsFromKV deletes all records about a column or an index and updates version. func (h *Handle) deleteHistStatsFromKV(physicalID int64, histID int64, isIndex int) (err error) { h.mu.Lock() diff --git a/statistics/handle/handle.go b/statistics/handle/handle.go index 344ac0f72c755..8462799bf2a77 100644 --- a/statistics/handle/handle.go +++ b/statistics/handle/handle.go @@ -463,7 +463,7 @@ type sessionPool interface { func NewHandle(ctx sessionctx.Context, lease time.Duration, pool sessionPool, tracker sessionctx.SysProcTracker, serverIDGetter func() uint64) (*Handle, error) { cfg := config.GetGlobalConfig() handle := &Handle{ - ddlEventCh: make(chan *ddlUtil.Event, 100), + ddlEventCh: make(chan *ddlUtil.Event, 1000), listHead: &SessionStatsCollector{mapper: make(tableDeltaMap), rateMap: make(errorRateDeltaMap)}, idxUsageListHead: &SessionIndexUsageCollector{mapper: make(indexUsageMap)}, pool: pool, @@ -686,20 +686,15 @@ func (h *Handle) MergePartitionStats2GlobalStatsByTableID(sc sessionctx.Context, return h.mergePartitionStats2GlobalStats(sc, opts, is, globalTableInfo, isIndex, histIDs, tablePartitionStats) } -func (h *Handle) loadTablePartitionStats(tableInfo *model.TableInfo, partitionID int64, isIndex int, histIDs []int64) (*statistics.Table, error) { +func (h *Handle) loadTablePartitionStats(tableInfo *model.TableInfo, partitionDef *model.PartitionDefinition) (*statistics.Table, error) { var partitionStats *statistics.Table - partitionStats, err := h.TableStatsFromStorage(tableInfo, partitionID, true, 0) + partitionStats, err := h.TableStatsFromStorage(tableInfo, partitionDef.ID, true, 0) if err != nil { return nil, err } // if the err == nil && partitionStats == nil, it means we lack the partition-level stats which the physicalID is equal to partitionID. if partitionStats == nil { - var errMsg string - if isIndex == 0 { - errMsg = fmt.Sprintf("`%s`", tableInfo.Name.L) - } else { - errMsg = fmt.Sprintf("`%s` index: `%s`", tableInfo.Name.L, tableInfo.FindIndexNameByID(histIDs[0])) - } + errMsg := fmt.Sprintf("table `%s` partition `%s`", tableInfo.Name.L, partitionDef.Name.L) err = types.ErrPartitionStatsMissing.GenWithStackByArgs(errMsg) return nil, err } @@ -750,7 +745,8 @@ func (h *Handle) mergePartitionStats2GlobalStats(sc sessionctx.Context, allFms[i] = make([]*statistics.FMSketch, 0, partitionNum) } - for _, partitionID := range partitionIDs { + for _, def := range globalTableInfo.Partition.Definitions { + partitionID := def.ID h.mu.Lock() partitionTable, ok := h.getTableByPhysicalID(is, partitionID) h.mu.Unlock() @@ -765,7 +761,7 @@ func (h *Handle) mergePartitionStats2GlobalStats(sc sessionctx.Context, } // If pre-load partition stats isn't provided, then we load partition stats directly and set it into allPartitionStats if allPartitionStats == nil || partitionStats == nil || !ok { - partitionStats, err = h.loadTablePartitionStats(tableInfo, partitionID, isIndex, histIDs) + partitionStats, err = h.loadTablePartitionStats(tableInfo, &def) if err != nil { return } @@ -779,9 +775,9 @@ func (h *Handle) mergePartitionStats2GlobalStats(sc sessionctx.Context, if !analyzed { var errMsg string if isIndex == 0 { - errMsg = fmt.Sprintf("`%s`", tableInfo.Name.L) + errMsg = fmt.Sprintf("table `%s` partition `%s` column `%s`", tableInfo.Name.L, def.Name.L, tableInfo.FindColumnNameByID(histIDs[i])) } else { - errMsg = fmt.Sprintf("`%s` index: `%s`", tableInfo.Name.L, tableInfo.FindIndexNameByID(histIDs[0])) + errMsg = fmt.Sprintf("table `%s` partition `%s` index `%s`", tableInfo.Name.L, def.Name.L, tableInfo.FindIndexNameByID(histIDs[i])) } err = types.ErrPartitionStatsMissing.GenWithStackByArgs(errMsg) return @@ -790,9 +786,9 @@ func (h *Handle) mergePartitionStats2GlobalStats(sc sessionctx.Context, if partitionStats.Count > 0 && (hg == nil || hg.TotalRowCount() <= 0) && (topN == nil || topN.TotalCount() <= 0) { var errMsg string if isIndex == 0 { - errMsg = fmt.Sprintf("`%s` column: `%s`", tableInfo.Name.L, tableInfo.FindColumnNameByID(histIDs[i])) + errMsg = fmt.Sprintf("table `%s` partition `%s` column `%s`", tableInfo.Name.L, def.Name.L, tableInfo.FindColumnNameByID(histIDs[i])) } else { - errMsg = fmt.Sprintf("`%s` index: `%s`", tableInfo.Name.L, tableInfo.FindIndexNameByID(histIDs[i])) + errMsg = fmt.Sprintf("table `%s` partition `%s` index `%s`", tableInfo.Name.L, def.Name.L, tableInfo.FindIndexNameByID(histIDs[i])) } err = types.ErrPartitionColumnStatsMissing.GenWithStackByArgs(errMsg) return diff --git a/statistics/handle/handle_hist.go b/statistics/handle/handle_hist.go index 4d0128095e071..ddfd88dd32ffb 100644 --- a/statistics/handle/handle_hist.go +++ b/statistics/handle/handle_hist.go @@ -75,15 +75,23 @@ func (h *Handle) SendLoadRequests(sc *stmtctx.StatementContext, neededHistItems sc.StatsLoad.Timeout = timeout sc.StatsLoad.NeededItems = remainedItems sc.StatsLoad.ResultCh = make(chan stmtctx.StatsLoadResult, len(remainedItems)) + tasks := make([]*NeededItemTask, 0) for _, item := range remainedItems { task := &NeededItemTask{ TableItemID: item, ToTimeout: time.Now().Local().Add(timeout), ResultCh: sc.StatsLoad.ResultCh, } - err := h.AppendNeededItem(task, timeout) - if err != nil { - return err + tasks = append(tasks, task) + } + timer := time.NewTimer(timeout) + defer timer.Stop() + for _, task := range tasks { + select { + case h.StatsLoad.NeededItemsCh <- task: + continue + case <-timer.C: + return errors.New("sync load stats channel is full and timeout sending task to channel") } } sc.StatsLoad.LoadStartTime = time.Now() @@ -91,9 +99,9 @@ func (h *Handle) SendLoadRequests(sc *stmtctx.StatementContext, neededHistItems } // SyncWaitStatsLoad sync waits loading of neededColumns and return false if timeout -func (h *Handle) SyncWaitStatsLoad(sc *stmtctx.StatementContext) bool { +func (h *Handle) SyncWaitStatsLoad(sc *stmtctx.StatementContext) error { if len(sc.StatsLoad.NeededItems) <= 0 { - return true + return nil } var errorMsgs []string defer func() { @@ -120,15 +128,14 @@ func (h *Handle) SyncWaitStatsLoad(sc *stmtctx.StatementContext) bool { delete(resultCheckMap, result.Item) if len(resultCheckMap) == 0 { metrics.SyncLoadHistogram.Observe(float64(time.Since(sc.StatsLoad.LoadStartTime).Milliseconds())) - return true + return nil } } else { - return false + return errors.New("sync load stats channel closed unexpectedly") } case <-timer.C: metrics.SyncLoadTimeoutCounter.Inc() - logutil.BgLogger().Warn("SyncWaitStatsLoad timeout") - return false + return errors.New("sync load stats timeout") } } } @@ -154,9 +161,16 @@ func (h *Handle) removeHistLoadedColumns(neededItems []model.TableItemID) []mode return remainedItems } -// AppendNeededItem appends needed columns/indices to ch, if exists, do not append the duplicated one. +// AppendNeededItem appends needed columns/indices to ch, it is only used for test func (h *Handle) AppendNeededItem(task *NeededItemTask, timeout time.Duration) error { - return h.writeToChanWithTimeout(h.StatsLoad.NeededItemsCh, task, timeout) + timer := time.NewTimer(timeout) + defer timer.Stop() + select { + case h.StatsLoad.NeededItemsCh <- task: + case <-timer.C: + return errors.New("Channel is full and timeout writing to channel") + } + return nil } var errExit = errors.New("Stop loading since domain is closed") diff --git a/statistics/handle/handle_hist_test.go b/statistics/handle/handle_hist_test.go index f2b1fa87ba37f..8febf5827165d 100644 --- a/statistics/handle/handle_hist_test.go +++ b/statistics/handle/handle_hist_test.go @@ -88,7 +88,7 @@ func TestConcurrentLoadHist(t *testing.T) { timeout := time.Nanosecond * mathutil.MaxInt h.SendLoadRequests(stmtCtx, neededColumns, timeout) rs := h.SyncWaitStatsLoad(stmtCtx) - require.True(t, rs) + require.Nil(t, rs) stat = h.GetTableStats(tableInfo) hg = stat.Columns[tableInfo.Columns[2].ID].Histogram topn = stat.Columns[tableInfo.Columns[2].ID].TopN @@ -132,7 +132,7 @@ func TestConcurrentLoadHistTimeout(t *testing.T) { } h.SendLoadRequests(stmtCtx, neededColumns, 0) // set timeout to 0 so task will go to timeout channel rs := h.SyncWaitStatsLoad(stmtCtx) - require.False(t, rs) + require.Error(t, rs) stat = h.GetTableStats(tableInfo) hg = stat.Columns[tableInfo.Columns[2].ID].Histogram topn = stat.Columns[tableInfo.Columns[2].ID].TopN diff --git a/statistics/handle/handle_test.go b/statistics/handle/handle_test.go index 4d268a59ae76e..5e41b1c1279a2 100644 --- a/statistics/handle/handle_test.go +++ b/statistics/handle/handle_test.go @@ -2227,8 +2227,8 @@ func TestFMSWithAnalyzePartition(t *testing.T) { tk.MustQuery("show warnings").Sort().Check(testkit.Rows( "Note 1105 Analyze use auto adjusted sample rate 1.000000 for table test.t's partition p0", "Warning 1105 Ignore columns and options when analyze partition in dynamic mode", - "Warning 8131 Build table: `t` global-level stats failed due to missing partition-level stats", - "Warning 8131 Build table: `t` index: `a` global-level stats failed due to missing partition-level stats", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", + "Warning 8131 Build global-level stats failed due to missing partition-level stats: table `t` partition `p1`", )) tk.MustQuery("select count(*) from mysql.stats_fm_sketch").Check(testkit.Rows("2")) } diff --git a/statistics/handle/update.go b/statistics/handle/update.go index 22c7771724e11..1da73f188e3a1 100644 --- a/statistics/handle/update.go +++ b/statistics/handle/update.go @@ -45,7 +45,6 @@ import ( "github.com/pingcap/tidb/util/ranger" "github.com/pingcap/tidb/util/sqlexec" "github.com/pingcap/tidb/util/timeutil" - "github.com/tikv/client-go/v2/oracle" "go.uber.org/atomic" "go.uber.org/zap" "golang.org/x/exp/slices" @@ -1000,9 +999,7 @@ func TableAnalyzed(tbl *statistics.Table) bool { func NeedAnalyzeTable(tbl *statistics.Table, limit time.Duration, autoAnalyzeRatio float64) (bool, string) { analyzed := TableAnalyzed(tbl) if !analyzed { - t := time.UnixMilli(oracle.ExtractPhysical(tbl.Version)) - dur := time.Since(t) - return dur >= limit, fmt.Sprintf("table unanalyzed, time since last updated %v", dur) + return true, "table unanalyzed" } // Auto analyze is disabled. if autoAnalyzeRatio == 0 { diff --git a/statistics/handle/update_test.go b/statistics/handle/update_test.go index e14522c31c4a8..1e2f9fb228442 100644 --- a/statistics/handle/update_test.go +++ b/statistics/handle/update_test.go @@ -1391,8 +1391,8 @@ func TestNeedAnalyzeTable(t *testing.T) { tbl: &statistics.Table{Version: oracle.GoTimeToTS(time.Now())}, limit: time.Hour, ratio: 0, - result: false, - reason: "", + result: true, + reason: "table unanalyzed", }, // table was already analyzed but auto analyze is disabled { diff --git a/statistics/testdata/integration_suite_out.json b/statistics/testdata/integration_suite_out.json index 73b62a002e248..229e05cd0db2a 100644 --- a/statistics/testdata/integration_suite_out.json +++ b/statistics/testdata/integration_suite_out.json @@ -411,7 +411,7 @@ { "SQL": "explain format = 'brief' select * from t where f regexp '.*111.*'", "Result": [ - "Selection 30.70 root regexp(test.t.f, \".*111.*\")", + "Selection 32.00 root regexp(test.t.f, \".*111.*\")", "└─TableReader 40.00 root data:TableFullScan", " └─TableFullScan 40.00 cop[tikv] table:t keep order:false" ] @@ -419,7 +419,7 @@ { "SQL": "explain format = 'brief' select * from t where f not regexp '.*111.*'", "Result": [ - "Selection 6.30 root not(istrue_with_null(regexp(test.t.f, \".*111.*\")))", + "Selection 32.00 root not(regexp(test.t.f, \".*111.*\"))", "└─TableReader 40.00 root data:TableFullScan", " └─TableFullScan 40.00 cop[tikv] table:t keep order:false" ] @@ -435,7 +435,7 @@ { "SQL": "explain format = 'brief' select * from t where a like '%111%' and f rlike '.*111.*'", "Result": [ - "Selection 23.56 root regexp(test.t.f, \".*111.*\")", + "Selection 24.56 root regexp(test.t.f, \".*111.*\")", "└─TableReader 30.70 root data:Selection", " └─Selection 30.70 cop[tikv] like(test.t.a, \"%111%\", 92)", " └─TableFullScan 40.00 cop[tikv] table:t keep order:false" @@ -641,7 +641,7 @@ { "SQL": "explain format = 'brief' select * from t where f regexp '.*111.*'", "Result": [ - "Selection 30.70 root regexp(test.t.f, \".*111.*\")", + "Selection 32.00 root regexp(test.t.f, \".*111.*\")", "└─TableReader 40.00 root data:TableFullScan", " └─TableFullScan 40.00 cop[tikv] table:t keep order:false" ] @@ -649,7 +649,7 @@ { "SQL": "explain format = 'brief' select * from t where f not regexp '.*111.*'", "Result": [ - "Selection 6.30 root not(istrue_with_null(regexp(test.t.f, \".*111.*\")))", + "Selection 32.00 root not(regexp(test.t.f, \".*111.*\"))", "└─TableReader 40.00 root data:TableFullScan", " └─TableFullScan 40.00 cop[tikv] table:t keep order:false" ] @@ -665,7 +665,7 @@ { "SQL": "explain format = 'brief' select * from t where a like '%111%' and f rlike '.*111.*'", "Result": [ - "Selection 23.56 root regexp(test.t.f, \".*111.*\")", + "Selection 24.56 root regexp(test.t.f, \".*111.*\")", "└─TableReader 30.70 root data:Selection", " └─Selection 30.70 cop[tikv] like(test.t.a, \"%111%\", 92)", " └─TableFullScan 40.00 cop[tikv] table:t keep order:false" diff --git a/store/copr/batch_coprocessor.go b/store/copr/batch_coprocessor.go index bfd3bbcc94fdd..5f6e435028e3b 100644 --- a/store/copr/batch_coprocessor.go +++ b/store/copr/batch_coprocessor.go @@ -695,7 +695,8 @@ func (c *CopClient) sendBatch(ctx context.Context, req *kv.Request, vars *tikv.V } tasks, err = buildBatchCopTasksForPartitionedTable(bo, c.store.kvStore, keyRanges, req.StoreType, nil, 0, false, 0, partitionIDs) } else { - ranges := NewKeyRanges(req.KeyRanges) + // TODO: merge the if branch. + ranges := NewKeyRanges(req.KeyRanges.FirstPartitionRange()) tasks, err = buildBatchCopTasksForNonPartitionedTable(bo, c.store.kvStore, ranges, req.StoreType, nil, 0, false, 0) } diff --git a/store/copr/copr_test/coprocessor_test.go b/store/copr/copr_test/coprocessor_test.go index f92db7ba7c334..a54c5048e12cb 100644 --- a/store/copr/copr_test/coprocessor_test.go +++ b/store/copr/copr_test/coprocessor_test.go @@ -43,7 +43,7 @@ func TestBuildCopIteratorWithRowCountHint(t *testing.T) { req := &kv.Request{ Tp: kv.ReqTypeDAG, - KeyRanges: copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z"), + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z")), FixedRowCountHint: []int{1, 1, 3, copr.CopSmallTaskRow}, Concurrency: 15, } @@ -57,7 +57,7 @@ func TestBuildCopIteratorWithRowCountHint(t *testing.T) { req = &kv.Request{ Tp: kv.ReqTypeDAG, - KeyRanges: copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z"), + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z")), FixedRowCountHint: []int{1, 1, 3, 3}, Concurrency: 15, } @@ -72,7 +72,7 @@ func TestBuildCopIteratorWithRowCountHint(t *testing.T) { // cross-region long range req = &kv.Request{ Tp: kv.ReqTypeDAG, - KeyRanges: copr.BuildKeyRanges("a", "z"), + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "z")), FixedRowCountHint: []int{10}, Concurrency: 15, } @@ -86,7 +86,7 @@ func TestBuildCopIteratorWithRowCountHint(t *testing.T) { req = &kv.Request{ Tp: kv.ReqTypeDAG, - KeyRanges: copr.BuildKeyRanges("a", "z"), + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "z")), FixedRowCountHint: []int{copr.CopSmallTaskRow + 1}, Concurrency: 15, } @@ -98,3 +98,72 @@ func TestBuildCopIteratorWithRowCountHint(t *testing.T) { require.Equal(t, smallConc, 0) require.Equal(t, rateLimit.GetCapacity(), 4) } + +func TestBuildCopIteratorWithBatchStoreCopr(t *testing.T) { + // nil --- 'g' --- 'n' --- 't' --- nil + // <- 0 -> <- 1 -> <- 2 -> <- 3 -> + store, err := mockstore.NewMockStore( + mockstore.WithClusterInspector(func(c testutils.Cluster) { + mockstore.BootstrapWithMultiRegions(c, []byte("g"), []byte("n"), []byte("t")) + }), + ) + require.NoError(t, err) + defer require.NoError(t, store.Close()) + copClient := store.GetClient().(*copr.CopClient) + ctx := context.Background() + killed := uint32(0) + vars := kv.NewVariables(&killed) + opt := &kv.ClientSendOption{} + + req := &kv.Request{ + Tp: kv.ReqTypeDAG, + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z")), + FixedRowCountHint: []int{1, 1, 3, 3}, + Concurrency: 15, + StoreBatchSize: 1, + } + it, errRes := copClient.BuildCopIterator(ctx, req, vars, opt) + require.Nil(t, errRes) + tasks := it.GetTasks() + require.Equal(t, len(tasks), 2) + require.Equal(t, len(tasks[0].ToPBBatchTasks()), 1) + require.Equal(t, tasks[0].RowCountHint, 5) + require.Equal(t, len(tasks[1].ToPBBatchTasks()), 1) + require.Equal(t, tasks[1].RowCountHint, 9) + + req = &kv.Request{ + Tp: kv.ReqTypeDAG, + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z")), + FixedRowCountHint: []int{1, 1, 3, 3}, + Concurrency: 15, + StoreBatchSize: 3, + } + it, errRes = copClient.BuildCopIterator(ctx, req, vars, opt) + require.Nil(t, errRes) + tasks = it.GetTasks() + require.Equal(t, len(tasks), 1) + require.Equal(t, len(tasks[0].ToPBBatchTasks()), 3) + require.Equal(t, tasks[0].RowCountHint, 14) + + // paging will disable store batch. + req = &kv.Request{ + Tp: kv.ReqTypeDAG, + KeyRanges: kv.NewNonParitionedKeyRanges(copr.BuildKeyRanges("a", "c", "d", "e", "h", "x", "y", "z")), + FixedRowCountHint: []int{1, 1, 3, 3}, + Concurrency: 15, + StoreBatchSize: 3, + Paging: struct { + Enable bool + MinPagingSize uint64 + MaxPagingSize uint64 + }{ + Enable: true, + MinPagingSize: 1, + MaxPagingSize: 1024, + }, + } + it, errRes = copClient.BuildCopIterator(ctx, req, vars, opt) + require.Nil(t, errRes) + tasks = it.GetTasks() + require.Equal(t, len(tasks), 4) +} diff --git a/store/copr/coprocessor.go b/store/copr/coprocessor.go index 982e981f24c79..a4cea914c3aa9 100644 --- a/store/copr/coprocessor.go +++ b/store/copr/coprocessor.go @@ -15,7 +15,6 @@ package copr import ( - "bytes" "context" "fmt" "math" @@ -31,6 +30,7 @@ import ( "github.com/pingcap/failpoint" "github.com/pingcap/kvproto/pkg/coprocessor" "github.com/pingcap/kvproto/pkg/kvrpcpb" + "github.com/pingcap/kvproto/pkg/metapb" "github.com/pingcap/tidb/domain/infosync" "github.com/pingcap/tidb/errno" "github.com/pingcap/tidb/kv" @@ -53,7 +53,6 @@ import ( "github.com/tikv/client-go/v2/txnkv/txnsnapshot" "github.com/tikv/client-go/v2/util" "go.uber.org/zap" - "golang.org/x/exp/slices" ) var coprCacheCounterEvict = tidbmetrics.DistSQLCoprCacheCounter.WithLabelValues("evict") @@ -121,10 +120,7 @@ func (c *CopClient) BuildCopIterator(ctx context.Context, req *kv.Request, vars } failpoint.Inject("checkKeyRangeSortedForPaging", func(_ failpoint.Value) { if req.Paging.Enable { - isSorted := slices.IsSortedFunc(req.KeyRanges, func(i, j kv.KeyRange) bool { - return bytes.Compare(i.StartKey, j.StartKey) < 0 - }) - if !isSorted { + if !req.KeyRanges.IsFullySorted() { logutil.BgLogger().Fatal("distsql request key range not sorted!") } } @@ -136,10 +132,43 @@ func (c *CopClient) BuildCopIterator(ctx context.Context, req *kv.Request, vars failpoint.Inject("disableFixedRowCountHint", func(_ failpoint.Value) { req.FixedRowCountHint = nil }) + if req.Tp != kv.ReqTypeDAG || req.StoreType != kv.TiKV { + req.StoreBatchSize = 0 + } + // TODO: support keep-order batch + if req.ReplicaRead != kv.ReplicaReadLeader || req.KeepOrder { + // disable batch copr for follower read + req.StoreBatchSize = 0 + } + // disable paging for batch copr + if req.Paging.Enable { + req.StoreBatchSize = 0 + } bo := backoff.NewBackofferWithVars(ctx, copBuildTaskMaxBackoff, vars) - ranges := NewKeyRanges(req.KeyRanges) - tasks, err := buildCopTasks(bo, c.store.GetRegionCache(), ranges, req, eventCb) + var ( + tasks []*copTask + err error + ) + buildTaskFunc := func(ranges []kv.KeyRange) error { + keyRanges := NewKeyRanges(ranges) + tasksFromRanges, err := buildCopTasks(bo, c.store.GetRegionCache(), keyRanges, req, eventCb) + if err != nil { + return err + } + if len(tasks) == 0 { + tasks = tasksFromRanges + return nil + } + tasks = append(tasks, tasksFromRanges...) + return nil + } + // Here we build the task by partition, not directly by region. + // This is because it's possible that TiDB merge multiple small partition into one region which break some assumption. + // Keep it split by partition would be more safe. + err = req.KeyRanges.ForEachPartitionWithErr(buildTaskFunc) + // only batch store requests in first build. + req.StoreBatchSize = 0 reqType := "null" if req.ClosestReplicaReadAdjuster != nil { reqType = "miss" @@ -210,6 +239,7 @@ func (c *CopClient) BuildCopIterator(ctx context.Context, req *kv.Request, vars // copTask contains a related Region and KeyRange for a kv.Request. type copTask struct { + taskID uint64 region tikv.RegionVerID bucketsVer uint64 ranges *KeyRanges @@ -227,6 +257,14 @@ type copTask struct { partitionIndex int64 // used by balanceBatchCopTask in PartitionTableScan requestSource util.RequestSource RowCountHint int // used for extra concurrency of small tasks, -1 for unknown row count + batchTaskList map[uint64]*batchedCopTask +} + +type batchedCopTask struct { + task *copTask + region coprocessor.RegionInfo + storeID uint64 + peer *metapb.Peer } func (r *copTask) String() string { @@ -234,6 +272,23 @@ func (r *copTask) String() string { r.region.GetID(), r.region.GetConfVer(), r.region.GetVer(), r.ranges.Len(), r.storeAddr) } +func (r *copTask) ToPBBatchTasks() []*coprocessor.StoreBatchTask { + if len(r.batchTaskList) == 0 { + return nil + } + pbTasks := make([]*coprocessor.StoreBatchTask, 0, len(r.batchTaskList)) + for _, task := range r.batchTaskList { + pbTasks = append(pbTasks, &coprocessor.StoreBatchTask{ + RegionId: task.region.GetRegionId(), + RegionEpoch: task.region.GetRegionEpoch(), + Peer: task.peer, + Ranges: task.region.GetRanges(), + TaskId: task.task.taskID, + }) + } + return pbTasks +} + // rangesPerTask limits the length of the ranges slice sent in one copTask. const rangesPerTask = 25000 @@ -262,6 +317,11 @@ func buildCopTasks(bo *Backoffer, cache *RegionCache, ranges *KeyRanges, req *kv tasks := make([]*copTask, 0, len(locs)) origRangeIdx := 0 + taskID := uint64(0) + var store2Idx map[uint64]int + if req.StoreBatchSize > 0 { + store2Idx = make(map[uint64]int, 16) + } for _, loc := range locs { // TiKV will return gRPC error if the message is too large. So we need to limit the length of the ranges slice // to make sure the message can be sent successfully. @@ -296,7 +356,8 @@ func buildCopTasks(bo *Backoffer, cache *RegionCache, ranges *KeyRanges, req *kv hint += req.FixedRowCountHint[nextOrigRangeIdx] } } - tasks = append(tasks, &copTask{ + task := &copTask{ + taskID: taskID, region: loc.Location.Region, bucketsVer: loc.getBucketVersion(), ranges: loc.Ranges.Slice(i, nextI), @@ -308,11 +369,35 @@ func buildCopTasks(bo *Backoffer, cache *RegionCache, ranges *KeyRanges, req *kv pagingSize: pagingSize, requestSource: req.RequestSource, RowCountHint: hint, - }) + } + if req.StoreBatchSize > 0 { + batchedTask, err := cache.BuildBatchTask(bo, task, req.ReplicaRead) + if err != nil { + return nil, err + } + if idx, ok := store2Idx[batchedTask.storeID]; !ok || len(tasks[idx].batchTaskList) >= req.StoreBatchSize { + tasks = append(tasks, batchedTask.task) + store2Idx[batchedTask.storeID] = len(tasks) - 1 + } else { + if tasks[idx].batchTaskList == nil { + tasks[idx].batchTaskList = make(map[uint64]*batchedCopTask, req.StoreBatchSize) + // disable paging for batched task. + tasks[idx].paging = false + tasks[idx].pagingSize = 0 + } + if task.RowCountHint > 0 { + tasks[idx].RowCountHint += task.RowCountHint + } + tasks[idx].batchTaskList[taskID] = batchedTask + } + } else { + tasks = append(tasks, task) + } i = nextI if req.Paging.Enable { pagingSize = paging.GrowPagingSize(pagingSize, req.Paging.MaxPagingSize) } + taskID++ } } @@ -675,6 +760,11 @@ func (it *copIterator) GetSendRate() *util.RateLimit { return it.sendRate } +// GetTasks returns the built tasks. +func (it *copIterator) GetTasks() []*copTask { + return it.tasks +} + func (sender *copIteratorTaskSender) sendToTaskCh(t *copTask, sendTo chan<- *copTask) (exit bool) { select { case sendTo <- t: @@ -858,6 +948,7 @@ func (worker *copIteratorWorker) handleTaskOnce(bo *Backoffer, task *copTask, ch Ranges: task.ranges.ToPBRanges(), SchemaVer: worker.req.SchemaVar, PagingSize: task.pagingSize, + Tasks: task.ToPBBatchTasks(), } var cacheKey []byte @@ -1043,37 +1134,17 @@ func (worker *copIteratorWorker) handleCopResponse(bo *Backoffer, rpcCtx *tikv.R return nil, errors.Trace(err) } // We may meet RegionError at the first packet, but not during visiting the stream. - return buildCopTasks(bo, worker.store.GetRegionCache(), task.ranges, worker.req, task.eventCb) + remains, err := buildCopTasks(bo, worker.store.GetRegionCache(), task.ranges, worker.req, task.eventCb) + if err != nil { + return remains, err + } + return worker.handleBatchRemainsOnErr(bo, remains, resp.pbResp.BatchResponses, task, ch) } - var resolveLockDetail *util.ResolveLockDetail if lockErr := resp.pbResp.GetLocked(); lockErr != nil { - resolveLockDetail = worker.getLockResolverDetails() - // Be care that we didn't redact the SQL statement because the log is DEBUG level. - if task.eventCb != nil { - task.eventCb(trxevents.WrapCopMeetLock(&trxevents.CopMeetLock{ - LockInfo: lockErr, - })) - } else { - logutil.Logger(bo.GetCtx()).Debug("coprocessor encounters lock", - zap.Stringer("lock", lockErr)) - } - resolveLocksOpts := txnlock.ResolveLocksOptions{ - CallerStartTS: worker.req.StartTs, - Locks: []*txnlock.Lock{txnlock.NewLock(lockErr)}, - Detail: resolveLockDetail, - } - resolveLocksRes, err1 := worker.kvclient.ResolveLocksWithOpts(bo.TiKVBackoffer(), resolveLocksOpts) - err1 = derr.ToTiDBErr(err1) - if err1 != nil { - return nil, errors.Trace(err1) - } - msBeforeExpired := resolveLocksRes.TTL - if msBeforeExpired > 0 { - if err := bo.BackoffWithMaxSleepTxnLockFast(int(msBeforeExpired), errors.New(lockErr.String())); err != nil { - return nil, errors.Trace(err) - } + if err := worker.handleLockErr(bo, lockErr, task); err != nil { + return nil, err } - return []*copTask{task}, nil + return worker.handleBatchRemainsOnErr(bo, []*copTask{task}, resp.pbResp.BatchResponses, task, ch) } if otherErr := resp.pbResp.GetOtherError(); otherErr != "" { err := errors.Errorf("other error: %s", otherErr) @@ -1102,7 +1173,7 @@ func (worker *copIteratorWorker) handleCopResponse(bo *Backoffer, rpcCtx *tikv.R } else if task.ranges != nil && task.ranges.Len() > 0 { resp.startKey = task.ranges.At(0).StartKey } - worker.handleCollectExecutionInfo(bo, rpcCtx, resp, resolveLockDetail) + worker.handleCollectExecutionInfo(bo, rpcCtx, resp) resp.respTime = costTime if resp.pbResp.IsCacheHit { coprCacheCounterHit.Add(1) @@ -1160,8 +1231,121 @@ func (worker *copIteratorWorker) handleCopResponse(bo *Backoffer, rpcCtx *tikv.R } } } + batchResps := resp.pbResp.BatchResponses worker.sendToRespCh(resp, ch, true) - return nil, nil + return worker.handleBatchCopResponse(bo, batchResps, task.batchTaskList, ch) +} + +func (worker *copIteratorWorker) handleBatchRemainsOnErr(bo *Backoffer, remains []*copTask, batchResp []*coprocessor.StoreBatchTaskResponse, task *copTask, ch chan<- *copResponse) ([]*copTask, error) { + if len(task.batchTaskList) == 0 { + return remains, nil + } + batchedTasks := task.batchTaskList + task.batchTaskList = nil + batchedRemains, err := worker.handleBatchCopResponse(bo, batchResp, batchedTasks, ch) + if err != nil { + return nil, err + } + return append(remains, batchedRemains...), nil +} + +// handle the batched cop response. +func (worker *copIteratorWorker) handleBatchCopResponse(bo *Backoffer, batchResps []*coprocessor.StoreBatchTaskResponse, tasks map[uint64]*batchedCopTask, ch chan<- *copResponse) ([]*copTask, error) { + if len(tasks) == 0 { + return nil, nil + } + var remainTasks []*copTask + for _, batchResp := range batchResps { + batchedTask, ok := tasks[batchResp.GetTaskId()] + if !ok { + return nil, errors.Errorf("task id %d not found", batchResp.GetTaskId()) + } + resp := &copResponse{ + pbResp: &coprocessor.Response{ + Data: batchResp.Data, + }, + } + task := batchedTask.task + if regionErr := batchResp.GetRegionError(); regionErr != nil { + errStr := fmt.Sprintf("region_id:%v, region_ver:%v, store_type:%s, peer_addr:%s, error:%s", + task.region.GetID(), task.region.GetVer(), task.storeType.Name(), task.storeAddr, regionErr.String()) + if err := bo.Backoff(tikv.BoRegionMiss(), errors.New(errStr)); err != nil { + return nil, errors.Trace(err) + } + remains, err := buildCopTasks(bo, worker.store.GetRegionCache(), task.ranges, worker.req, task.eventCb) + if err != nil { + return nil, err + } + remainTasks = append(remainTasks, remains...) + continue + } + //TODO: handle locks in batch + if lockErr := batchResp.GetLocked(); lockErr != nil { + if err := worker.handleLockErr(bo, resp.pbResp.GetLocked(), task); err != nil { + return nil, err + } + remainTasks = append(remainTasks, task) + continue + } + if otherErr := batchResp.GetOtherError(); otherErr != "" { + err := errors.Errorf("other error: %s", otherErr) + + firstRangeStartKey := task.ranges.At(0).StartKey + lastRangeEndKey := task.ranges.At(task.ranges.Len() - 1).EndKey + + logutil.Logger(bo.GetCtx()).Warn("other error", + zap.Uint64("txnStartTS", worker.req.StartTs), + zap.Uint64("regionID", task.region.GetID()), + zap.Uint64("bucketsVer", task.bucketsVer), + // TODO: add bucket version in log + //zap.Uint64("latestBucketsVer", batchResp.GetLatestBucketsVersion()), + zap.Int("rangeNums", task.ranges.Len()), + zap.ByteString("firstRangeStartKey", firstRangeStartKey), + zap.ByteString("lastRangeEndKey", lastRangeEndKey), + zap.String("storeAddr", task.storeAddr), + zap.Error(err)) + if strings.Contains(err.Error(), "write conflict") { + return nil, kv.ErrWriteConflict.FastGen("%s", otherErr) + } + return nil, errors.Trace(err) + } + // TODO: check OOM + worker.sendToRespCh(resp, ch, false) + } + return remainTasks, nil +} + +func (worker *copIteratorWorker) handleLockErr(bo *Backoffer, lockErr *kvrpcpb.LockInfo, task *copTask) error { + if lockErr == nil { + return nil + } + resolveLockDetail := worker.getLockResolverDetails() + // Be care that we didn't redact the SQL statement because the log is DEBUG level. + if task.eventCb != nil { + task.eventCb(trxevents.WrapCopMeetLock(&trxevents.CopMeetLock{ + LockInfo: lockErr, + })) + } else { + logutil.Logger(bo.GetCtx()).Debug("coprocessor encounters lock", + zap.Stringer("lock", lockErr)) + } + resolveLocksOpts := txnlock.ResolveLocksOptions{ + CallerStartTS: worker.req.StartTs, + Locks: []*txnlock.Lock{txnlock.NewLock(lockErr)}, + Detail: resolveLockDetail, + } + resolveLocksRes, err1 := worker.kvclient.ResolveLocksWithOpts(bo.TiKVBackoffer(), resolveLocksOpts) + err1 = derr.ToTiDBErr(err1) + if err1 != nil { + return errors.Trace(err1) + } + msBeforeExpired := resolveLocksRes.TTL + if msBeforeExpired > 0 { + if err := bo.BackoffWithMaxSleepTxnLockFast(int(msBeforeExpired), errors.New(lockErr.String())); err != nil { + return errors.Trace(err) + } + } + return nil } func (worker *copIteratorWorker) getLockResolverDetails() *util.ResolveLockDetail { @@ -1171,7 +1355,7 @@ func (worker *copIteratorWorker) getLockResolverDetails() *util.ResolveLockDetai return &util.ResolveLockDetail{} } -func (worker *copIteratorWorker) handleCollectExecutionInfo(bo *Backoffer, rpcCtx *tikv.RPCContext, resp *copResponse, resolveLockDetail *util.ResolveLockDetail) { +func (worker *copIteratorWorker) handleCollectExecutionInfo(bo *Backoffer, rpcCtx *tikv.RPCContext, resp *copResponse) { defer func() { worker.kvclient.Stats = nil }() @@ -1199,9 +1383,6 @@ func (worker *copIteratorWorker) handleCollectExecutionInfo(bo *Backoffer, rpcCt resp.detail.CalleeAddress = rpcCtx.Addr } sd := &util.ScanDetail{} - if resolveLockDetail != nil { - sd.ResolveLock = resolveLockDetail - } td := util.TimeDetail{} if pbDetails := resp.pbResp.ExecDetailsV2; pbDetails != nil { // Take values in `ExecDetailsV2` first. diff --git a/store/copr/mpp.go b/store/copr/mpp.go index 5c159bc355ab1..b75594e49177f 100644 --- a/store/copr/mpp.go +++ b/store/copr/mpp.go @@ -516,7 +516,7 @@ func (c *MPPClient) DispatchMPPTasks(ctx context.Context, variables interface{}, tasks: dispatchReqs, finishCh: make(chan struct{}), cancelFunc: cancelFunc, - respChan: make(chan *mppResponse, 4096), + respChan: make(chan *mppResponse), startTs: startTs, vars: vars, needTriggerFallback: needTriggerFallback, diff --git a/store/copr/region_cache.go b/store/copr/region_cache.go index 4aa970aa458a4..a3fd20e036d43 100644 --- a/store/copr/region_cache.go +++ b/store/copr/region_cache.go @@ -18,9 +18,13 @@ import ( "bytes" "strconv" + "github.com/pingcap/errors" + "github.com/pingcap/kvproto/pkg/coprocessor" + "github.com/pingcap/kvproto/pkg/metapb" "github.com/pingcap/log" "github.com/pingcap/tidb/kv" derr "github.com/pingcap/tidb/store/driver/error" + "github.com/pingcap/tidb/store/driver/options" "github.com/pingcap/tidb/util/logutil" "github.com/pingcap/tidb/util/mathutil" "github.com/tikv/client-go/v2/metrics" @@ -199,3 +203,27 @@ func (c *RegionCache) OnSendFailForBatchRegions(bo *Backoffer, store *tikv.Store c.OnSendFailForTiFlash(bo.TiKVBackoffer(), store, ri.Region, ri.Meta, scheduleReload, err, !(index < 10 || log.GetLevel() <= zap.DebugLevel)) } } + +// BuildBatchTask fetches store and peer info for cop task, wrap it as `batchedCopTask`. +func (c *RegionCache) BuildBatchTask(bo *Backoffer, task *copTask, replicaRead kv.ReplicaReadType) (*batchedCopTask, error) { + rpcContext, err := c.GetTiKVRPCContext(bo.TiKVBackoffer(), task.region, options.GetTiKVReplicaReadType(replicaRead), 0) + if err != nil { + return nil, err + } + if rpcContext == nil { + return nil, errors.Errorf("region %s missing", task.region.String()) + } + return &batchedCopTask{ + task: task, + region: coprocessor.RegionInfo{ + RegionId: rpcContext.Region.GetID(), + RegionEpoch: &metapb.RegionEpoch{ + ConfVer: rpcContext.Region.GetConfVer(), + Version: rpcContext.Region.GetVer(), + }, + Ranges: task.ranges.ToPBRanges(), + }, + storeID: rpcContext.Store.StoreID(), + peer: rpcContext.Peer, + }, nil +} diff --git a/store/driver/txn/BUILD.bazel b/store/driver/txn/BUILD.bazel index ab10c88f12c9c..f6e5e46014a97 100644 --- a/store/driver/txn/BUILD.bazel +++ b/store/driver/txn/BUILD.bazel @@ -24,6 +24,7 @@ go_library( "//table/tables", "//tablecodec", "//types", + "//util", "//util/logutil", "@com_github_opentracing_opentracing_go//:opentracing-go", "@com_github_pingcap_errors//:errors", diff --git a/store/driver/txn/error.go b/store/driver/txn/error.go index 5ff5f0c776309..80543fe2f8513 100644 --- a/store/driver/txn/error.go +++ b/store/driver/txn/error.go @@ -33,6 +33,7 @@ import ( "github.com/pingcap/tidb/table/tables" "github.com/pingcap/tidb/tablecodec" "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util" "github.com/pingcap/tidb/util/logutil" tikverr "github.com/tikv/client-go/v2/error" "go.uber.org/zap" @@ -100,6 +101,9 @@ func extractKeyExistsErrFromHandle(key kv.Key, value []byte, tblInfo *model.Tabl if col.Length > 0 && len(str) > col.Length { str = str[:col.Length] } + if types.IsBinaryStr(&tblInfo.Columns[col.Offset].FieldType) || types.IsTypeBit(&tblInfo.Columns[col.Offset].FieldType) { + str = util.FmtNonASCIIPrintableCharToHex(str) + } valueStr = append(valueStr, str) } return genKeyExistsError(name, strings.Join(valueStr, "-"), nil) @@ -136,6 +140,9 @@ func extractKeyExistsErrFromIndex(key kv.Key, value []byte, tblInfo *model.Table if err != nil { return genKeyExistsError(name, key.String(), err) } + if types.IsBinaryStr(colInfo[i].Ft) || types.IsTypeBit(colInfo[i].Ft) { + str = util.FmtNonASCIIPrintableCharToHex(str) + } valueStr = append(valueStr, str) } return genKeyExistsError(name, strings.Join(valueStr, "-"), nil) diff --git a/store/driver/txn/txn_driver.go b/store/driver/txn/txn_driver.go index 851e68eac89ef..b18b6d0db1f33 100644 --- a/store/driver/txn/txn_driver.go +++ b/store/driver/txn/txn_driver.go @@ -258,6 +258,8 @@ func (txn *tikvTxn) SetOption(opt int, val interface{}) { txn.KVTxn.SetRequestSourceType(val.(string)) case kv.ReplicaReadAdjuster: txn.KVTxn.GetSnapshot().SetReplicaReadAdjuster(val.(txnkv.ReplicaReadAdjuster)) + case kv.TxnSource: + txn.KVTxn.SetTxnSource(val.(uint64)) } } diff --git a/store/helper/helper.go b/store/helper/helper.go index f24443433e724..8d584b216d9ad 100644 --- a/store/helper/helper.go +++ b/store/helper/helper.go @@ -653,11 +653,11 @@ func newTableWithKeyRange(db *model.DBInfo, table *model.TableInfo) TableInfoWit // NewIndexWithKeyRange constructs TableInfoWithKeyRange for given index, it is exported only for test. func NewIndexWithKeyRange(db *model.DBInfo, table *model.TableInfo, index *model.IndexInfo) TableInfoWithKeyRange { - return newIndexWithKeyRange(db, table, index) + return newIndexWithKeyRange(db, table, index, table.ID) } -func newIndexWithKeyRange(db *model.DBInfo, table *model.TableInfo, index *model.IndexInfo) TableInfoWithKeyRange { - sk, ek := tablecodec.GetTableIndexKeyRange(table.ID, index.ID) +func newIndexWithKeyRange(db *model.DBInfo, table *model.TableInfo, index *model.IndexInfo, physicalID int64) TableInfoWithKeyRange { + sk, ek := tablecodec.GetTableIndexKeyRange(physicalID, index.ID) startKey := bytesKeyToHex(codec.EncodeBytes(nil, sk)) endKey := bytesKeyToHex(codec.EncodeBytes(nil, ek)) return TableInfoWithKeyRange{ @@ -727,7 +727,13 @@ func (*Helper) GetTablesInfoWithKeyRange(schemas []*model.DBInfo) []TableInfoWit tables = append(tables, newTableWithKeyRange(db, table)) } for _, index := range table.Indices { - tables = append(tables, newIndexWithKeyRange(db, table, index)) + if table.Partition == nil || index.Global { + tables = append(tables, newIndexWithKeyRange(db, table, index, table.ID)) + continue + } + for _, partition := range table.Partition.Definitions { + tables = append(tables, newIndexWithKeyRange(db, table, index, partition.ID)) + } } } } diff --git a/table/BUILD.bazel b/table/BUILD.bazel index 5f8e425822279..a1f2feab60722 100644 --- a/table/BUILD.bazel +++ b/table/BUILD.bazel @@ -23,6 +23,7 @@ go_library( "//sessionctx", "//sessionctx/stmtctx", "//types", + "//util/chunk", "//util/dbterror", "//util/hack", "//util/logutil", diff --git a/table/column.go b/table/column.go index b814c8927a472..0a80ddae4e8d4 100644 --- a/table/column.go +++ b/table/column.go @@ -35,6 +35,7 @@ import ( "github.com/pingcap/tidb/sessionctx" "github.com/pingcap/tidb/sessionctx/stmtctx" "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/chunk" "github.com/pingcap/tidb/util/hack" "github.com/pingcap/tidb/util/logutil" "github.com/pingcap/tidb/util/timeutil" @@ -670,3 +671,36 @@ func OptionalFsp(fieldType *types.FieldType) string { } return "(" + strconv.Itoa(fsp) + ")" } + +// FillVirtualColumnValue will calculate the virtual column value by evaluating generated +// expression using rows from a chunk, and then fill this value into the chunk. +func FillVirtualColumnValue(virtualRetTypes []*types.FieldType, virtualColumnIndex []int, + expCols []*expression.Column, colInfos []*model.ColumnInfo, sctx sessionctx.Context, req *chunk.Chunk) error { + if len(virtualColumnIndex) == 0 { + return nil + } + + virCols := chunk.NewChunkWithCapacity(virtualRetTypes, req.Capacity()) + iter := chunk.NewIterator4Chunk(req) + for i, idx := range virtualColumnIndex { + for row := iter.Begin(); row != iter.End(); row = iter.Next() { + datum, err := expCols[idx].EvalVirtualColumn(row) + if err != nil { + return err + } + // Because the expression might return different type from + // the generated column, we should wrap a CAST on the result. + castDatum, err := CastValue(sctx, datum, colInfos[idx], false, true) + if err != nil { + return err + } + // Handle the bad null error. + if (mysql.HasNotNullFlag(colInfos[idx].GetFlag()) || mysql.HasPreventNullInsertFlag(colInfos[idx].GetFlag())) && castDatum.IsNull() { + castDatum = GetZeroValue(colInfos[idx]) + } + virCols.AppendDatum(i, &castDatum) + } + req.SetCol(idx, virCols.Column(i)) + } + return nil +} diff --git a/table/table.go b/table/table.go index 6aef5ed4497e6..813131df90896 100644 --- a/table/table.go +++ b/table/table.go @@ -206,7 +206,8 @@ func AllocAutoIncrementValue(ctx context.Context, t Table, sctx sessionctx.Conte } increment := sctx.GetSessionVars().AutoIncrementIncrement offset := sctx.GetSessionVars().AutoIncrementOffset - _, max, err := t.Allocators(sctx).Get(autoid.RowIDAllocType).Alloc(ctx, uint64(1), int64(increment), int64(offset)) + alloc := t.Allocators(sctx).Get(autoid.AutoIncrementType) + _, max, err := alloc.Alloc(ctx, uint64(1), int64(increment), int64(offset)) if err != nil { return 0, err } @@ -218,7 +219,8 @@ func AllocAutoIncrementValue(ctx context.Context, t Table, sctx sessionctx.Conte func AllocBatchAutoIncrementValue(ctx context.Context, t Table, sctx sessionctx.Context, N int) (firstID int64, increment int64, err error) { increment = int64(sctx.GetSessionVars().AutoIncrementIncrement) offset := int64(sctx.GetSessionVars().AutoIncrementOffset) - min, max, err := t.Allocators(sctx).Get(autoid.RowIDAllocType).Alloc(ctx, uint64(N), increment, offset) + alloc := t.Allocators(sctx).Get(autoid.AutoIncrementType) + min, max, err := alloc.Alloc(ctx, uint64(N), increment, offset) if err != nil { return min, max, err } diff --git a/table/tables/index.go b/table/tables/index.go index bc1a90f70ba71..b3a481efba29f 100644 --- a/table/tables/index.go +++ b/table/tables/index.go @@ -15,7 +15,9 @@ package tables import ( + "bytes" "context" + "errors" "sync" "github.com/opentracing/opentracing-go" @@ -122,15 +124,15 @@ func (c *index) Create(sctx sessionctx.Context, txn kv.Transaction, indexedValue } var ( - tempKey []byte - keyVer byte - keyIsRewritten bool + tempKey []byte + keyVer byte + keyIsTempIdxKey bool ) if !opt.FromBackFill { - key, tempKey, keyVer = genTempIdxKeyByState(c.idxInfo, key) + key, tempKey, keyVer = GenTempIdxKeyByState(c.idxInfo, key) if keyVer == TempIndexKeyTypeBackfill { key, tempKey = tempKey, nil - keyIsRewritten = true + keyIsTempIdxKey = true } } @@ -176,7 +178,7 @@ func (c *index) Create(sctx sessionctx.Context, txn kv.Transaction, indexedValue opt.IgnoreAssertion = opt.IgnoreAssertion || c.idxInfo.State != model.StatePublic if !distinct || skipCheck || opt.Untouched { - if keyIsRewritten { + if keyIsTempIdxKey && !opt.Untouched { // Untouched key-values never occur in the storage. idxVal = append(idxVal, keyVer) } err = txn.GetMemBuffer().Set(key, idxVal) @@ -184,7 +186,9 @@ func (c *index) Create(sctx sessionctx.Context, txn kv.Transaction, indexedValue return nil, err } if len(tempKey) > 0 { - idxVal = append(idxVal, keyVer) + if !opt.Untouched { // Untouched key-values never occur in the storage. + idxVal = append(idxVal, keyVer) + } err = txn.GetMemBuffer().Set(tempKey, idxVal) if err != nil { return nil, err @@ -224,11 +228,26 @@ func (c *index) Create(sctx sessionctx.Context, txn kv.Transaction, indexedValue } if err != nil || len(value) == 0 { lazyCheck := sctx.GetSessionVars().LazyCheckKeyNotExists() && err != nil - if keyIsRewritten { + var needPresumeKey tempIndexKeyState + if keyIsTempIdxKey { idxVal = append(idxVal, keyVer) + needPresumeKey, _, err = KeyExistInTempIndex(ctx, txn, key, distinct, h, c.tblInfo.IsCommonHandle) + if err != nil { + return nil, err + } + } else { + if len(tempKey) > 0 { + needPresumeKey, _, err = KeyExistInTempIndex(ctx, txn, tempKey, distinct, h, c.tblInfo.IsCommonHandle) + if err != nil { + return nil, err + } + } } if lazyCheck { - flags := []kv.FlagsOp{kv.SetPresumeKeyNotExists} + var flags []kv.FlagsOp + if needPresumeKey != KeyInTempIndexIsDeleted { + flags = []kv.FlagsOp{kv.SetPresumeKeyNotExists} + } if !vars.ConstraintCheckInPlacePessimistic && vars.TxnCtx.IsPessimistic && vars.InTxn() && !vars.InRestrictedSQL && vars.ConnectionID > 0 { flags = append(flags, kv.SetNeedConstraintCheckInPrewrite) @@ -242,7 +261,7 @@ func (c *index) Create(sctx sessionctx.Context, txn kv.Transaction, indexedValue } if len(tempKey) > 0 { idxVal = append(idxVal, keyVer) - if lazyCheck { + if lazyCheck && needPresumeKey != KeyInTempIndexIsDeleted { err = txn.GetMemBuffer().SetWithFlags(tempKey, idxVal, kv.SetPresumeKeyNotExists) } else { err = txn.GetMemBuffer().Set(tempKey, idxVal) @@ -283,7 +302,7 @@ func (c *index) Delete(sc *stmtctx.StatementContext, txn kv.Transaction, indexed return err } - key, tempKey, tempKeyVer := genTempIdxKeyByState(c.idxInfo, key) + key, tempKey, tempKeyVer := GenTempIdxKeyByState(c.idxInfo, key) if distinct { if len(key) > 0 { @@ -334,9 +353,9 @@ const ( TempIndexKeyTypeMerge byte = 'm' ) -// genTempIdxKeyByState is used to get the key version and the temporary key. +// GenTempIdxKeyByState is used to get the key version and the temporary key. // The tempKeyVer means the temp index key/value version. -func genTempIdxKeyByState(indexInfo *model.IndexInfo, indexKey kv.Key) (key, tempKey kv.Key, tempKeyVer byte) { +func GenTempIdxKeyByState(indexInfo *model.IndexInfo, indexKey kv.Key) (key, tempKey kv.Key, tempKeyVer byte) { if indexInfo.State != model.StatePublic { switch indexInfo.BackfillState { case model.BackfillStateInapplicable: @@ -362,6 +381,28 @@ func (c *index) Exist(sc *stmtctx.StatementContext, txn kv.Transaction, indexedV return false, nil, err } + var ( + tempKey []byte + keyVer byte + ) + // If index current is in creating status and using ingest mode, we need first + // check key exist status in temp index. + key, tempKey, keyVer = GenTempIdxKeyByState(c.idxInfo, key) + if keyVer != TempIndexKeyTypeNone { + KeyExistInfo, h1, err1 := KeyExistInTempIndex(context.TODO(), txn, tempKey, distinct, h, c.tblInfo.IsCommonHandle) + if err1 != nil { + return false, nil, err + } + switch KeyExistInfo { + case KeyInTempIndexNotExist, KeyInTempIndexIsDeleted: + return false, nil, nil + case KeyInTempIndexConflict: + return true, h1, kv.ErrKeyExists + case KeyInTempIndexIsItself: + return true, h, nil + } + } + value, err := txn.Get(context.TODO(), key) if kv.IsErrNotFound(err) { return false, nil, nil @@ -461,3 +502,64 @@ func TryAppendCommonHandleRowcodecColInfos(colInfo []rowcodec.ColInfo, tblInfo * } return colInfo } + +type tempIndexKeyState byte + +const ( + // KeyInTempIndexUnknown whether the key exists or not in temp index is unknown. + KeyInTempIndexUnknown tempIndexKeyState = iota + // KeyInTempIndexNotExist the key is not exist in temp index. + KeyInTempIndexNotExist + // KeyInTempIndexIsDeleted the key is marked deleted in temp index. + KeyInTempIndexIsDeleted + // KeyInTempIndexIsItself the key is correlated to itself in temp index. + KeyInTempIndexIsItself + // KeyInTempIndexConflict the key is conflict in temp index. + KeyInTempIndexConflict +) + +// KeyExistInTempIndex is used to check the unique key exist status in temp index. +func KeyExistInTempIndex(ctx context.Context, txn kv.Transaction, key kv.Key, distinct bool, h kv.Handle, IsCommonHandle bool) (tempIndexKeyState, kv.Handle, error) { + // Only check temp index key. + if !tablecodec.IsTempIndexKey(key) { + return KeyInTempIndexUnknown, nil, nil + } + value, err := txn.Get(ctx, key) + if kv.IsErrNotFound(err) { + return KeyInTempIndexNotExist, nil, nil + } + if err != nil { + return KeyInTempIndexUnknown, nil, err + } + + // Since KeyExistInTempIndex only accept temp index key, so the value length should great than 1 for key version. + if len(value) < 1 { + return KeyInTempIndexUnknown, nil, errors.New("temp index value length should great than 1") + } + length := len(value) + // Firstly, we will remove the last byte of key version. + // It should be TempIndexKeyTypeBackfill or TempIndexKeyTypeMerge. + value = value[:length-1] + if distinct { + if bytes.Equal(value, DeleteMarkerUnique) { + return KeyInTempIndexIsDeleted, nil, nil + } + } else { + if bytes.Equal(value, DeleteMarker) { + return KeyInTempIndexIsDeleted, nil, nil + } + } + + // Check if handle equal. + var handle kv.Handle + if distinct { + handle, err = tablecodec.DecodeHandleInUniqueIndexValue(value, IsCommonHandle) + if err != nil { + return KeyInTempIndexUnknown, nil, err + } + if !handle.Equal(h) { + return KeyInTempIndexConflict, handle, kv.ErrKeyExists + } + } + return KeyInTempIndexIsItself, handle, nil +} diff --git a/table/tables/tables.go b/table/tables/tables.go index 631b26ef4296e..9a5eaae0d6096 100644 --- a/table/tables/tables.go +++ b/table/tables/tables.go @@ -85,7 +85,7 @@ func MockTableFromMeta(tblInfo *model.TableInfo) table.Table { } var t TableCommon - initTableCommon(&t, tblInfo, tblInfo.ID, columns, nil) + initTableCommon(&t, tblInfo, tblInfo.ID, columns, autoid.NewAllocators(false)) if tblInfo.TableCacheStatusType != model.TableCacheStatusDisable { ret, err := newCachedTable(&t) if err != nil { @@ -526,7 +526,12 @@ func (t *TableCommon) rebuildIndices(ctx sessionctx.Context, txn kv.Transaction, break } // If txn is auto commit and index is untouched, no need to write index value. - if untouched && !ctx.GetSessionVars().InTxn() { + // If InHandleForeignKeyTrigger or ForeignKeyTriggerCtx.HasFKCascades is true indicate we may have + // foreign key cascade need to handle later, then we still need to write index value, + // otherwise, the later foreign cascade executor may see data-index inconsistency in txn-mem-buffer. + sessVars := ctx.GetSessionVars() + if untouched && !sessVars.InTxn() && + !sessVars.StmtCtx.InHandleForeignKeyTrigger && !sessVars.StmtCtx.ForeignKeyTriggerCtx.HasFKCascades { continue } newVs, err := idx.FetchValues(newData, nil) @@ -1542,7 +1547,7 @@ func (t *TableCommon) Allocators(ctx sessionctx.Context) autoid.Allocators { // Use an independent allocator for global temporary tables. if t.meta.TempTableType == model.TempTableGlobal { if alloc := ctx.GetSessionVars().GetTemporaryTable(t.meta).GetAutoIDAllocator(); alloc != nil { - return autoid.Allocators{alloc} + return autoid.NewAllocators(false, alloc) } // If the session is not in a txn, for example, in "show create table", use the original allocator. // Otherwise the would be a nil pointer dereference. @@ -1552,8 +1557,9 @@ func (t *TableCommon) Allocators(ctx sessionctx.Context) autoid.Allocators { // Replace the row id allocator with the one in session variables. sessAlloc := ctx.GetSessionVars().IDAllocator - retAllocs := make([]autoid.Allocator, 0, len(t.allocs)) - copy(retAllocs, t.allocs) + allocs := t.allocs.Allocs + retAllocs := make([]autoid.Allocator, 0, len(allocs)) + copy(retAllocs, allocs) overwritten := false for i, a := range retAllocs { @@ -1566,7 +1572,7 @@ func (t *TableCommon) Allocators(ctx sessionctx.Context) autoid.Allocators { if !overwritten { retAllocs = append(retAllocs, sessAlloc) } - return retAllocs + return autoid.NewAllocators(t.allocs.SepAutoInc, retAllocs...) } // Type implements table.Table Type interface. @@ -1920,7 +1926,7 @@ func maxIndexLen(idxA, idxB *model.IndexColumn) *model.IndexColumn { } func getSequenceAllocator(allocs autoid.Allocators) (autoid.Allocator, error) { - for _, alloc := range allocs { + for _, alloc := range allocs.Allocs { if alloc.GetType() == autoid.SequenceType { return alloc, nil } diff --git a/table/tables/tables_test.go b/table/tables/tables_test.go index d659f918a8168..661770b868383 100644 --- a/table/tables/tables_test.go +++ b/table/tables/tables_test.go @@ -378,18 +378,18 @@ func TestTableFromMeta(t *testing.T) { // For test coverage tbInfo.Columns[0].GeneratedExprString = "a" - _, err = tables.TableFromMeta(nil, tbInfo) + _, err = tables.TableFromMeta(autoid.NewAllocators(false), tbInfo) require.NoError(t, err) tbInfo.Columns[0].GeneratedExprString = "test" - _, err = tables.TableFromMeta(nil, tbInfo) + _, err = tables.TableFromMeta(autoid.NewAllocators(false), tbInfo) require.Error(t, err) tbInfo.Columns[0].State = model.StateNone - tb, err = tables.TableFromMeta(nil, tbInfo) + tb, err = tables.TableFromMeta(autoid.NewAllocators(false), tbInfo) require.Nil(t, tb) require.Error(t, err) tbInfo.State = model.StateNone - tb, err = tables.TableFromMeta(nil, tbInfo) + tb, err = tables.TableFromMeta(autoid.NewAllocators(false), tbInfo) require.Nil(t, tb) require.Error(t, err) diff --git a/table/temptable/BUILD.bazel b/table/temptable/BUILD.bazel index 30c41bd1c55b3..8487a26533b51 100644 --- a/table/temptable/BUILD.bazel +++ b/table/temptable/BUILD.bazel @@ -41,6 +41,7 @@ go_test( deps = [ "//infoschema", "//kv", + "//meta/autoid", "//parser/model", "//parser/mysql", "//sessionctx", diff --git a/table/temptable/ddl.go b/table/temptable/ddl.go index ccad2b7b0214c..d464cb3c48618 100644 --- a/table/temptable/ddl.go +++ b/table/temptable/ddl.go @@ -182,7 +182,7 @@ func newTemporaryTableFromTableInfo(sctx sessionctx.Context, tbInfo *model.Table if alloc != nil { allocs = append(allocs, alloc) } - return tables.TableFromMeta(allocs, tbInfo) + return tables.TableFromMeta(autoid.NewAllocators(false, allocs...), tbInfo) } // GetTemporaryTableDDL gets the temptable.TemporaryTableDDL from session context diff --git a/table/temptable/main_test.go b/table/temptable/main_test.go index 7dbc5e86d37d9..8c5c4f557e1ae 100644 --- a/table/temptable/main_test.go +++ b/table/temptable/main_test.go @@ -22,6 +22,7 @@ import ( "github.com/pingcap/tidb/infoschema" "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/meta/autoid" "github.com/pingcap/tidb/parser/model" "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/table" @@ -86,7 +87,7 @@ func (is *mockedInfoSchema) TableByID(tblID int64) (table.Table, bool) { State: model.StatePublic, } - tbl, err := table.TableFromMeta(nil, tblInfo) + tbl, err := table.TableFromMeta(autoid.NewAllocators(false), tblInfo) require.NoError(is.t, err) return tbl, true diff --git a/tablecodec/tablecodec.go b/tablecodec/tablecodec.go index b9400b0271d41..c2d98f5a2b17e 100644 --- a/tablecodec/tablecodec.go +++ b/tablecodec/tablecodec.go @@ -1143,6 +1143,20 @@ func TempIndexKey2IndexKey(originIdxID int64, tempIdxKey []byte) { binary.BigEndian.PutUint64(tempIdxKey[prefixLen:], eid) } +// IsTempIndexKey check whether the input key is for a temp index. +func IsTempIndexKey(indexKey []byte) bool { + var ( + indexIDKey []byte + indexID int64 + tempIndexID int64 + ) + // Get encoded indexID from key, Add uint64 8 byte length. + indexIDKey = indexKey[prefixLen : prefixLen+8] + indexID = codec.DecodeCmpUintToInt(binary.BigEndian.Uint64(indexIDKey)) + tempIndexID = int64(TempIndexPrefix) | indexID + return tempIndexID == indexID +} + // GenIndexValuePortal is the portal for generating index value. // Value layout: // @@ -1613,3 +1627,30 @@ func IndexKVIsUnique(value []byte) bool { segs := SplitIndexValue(value) return segs.IntHandle != nil || segs.CommonHandle != nil } + +// VerifyTableIDForRanges verifies that all given ranges are valid to decode the table id. +func VerifyTableIDForRanges(keyRanges *kv.KeyRanges) ([]int64, error) { + tids := make([]int64, 0, keyRanges.PartitionNum()) + collectFunc := func(ranges []kv.KeyRange) error { + if len(ranges) == 0 { + return nil + } + tid := DecodeTableID(ranges[0].StartKey) + if tid <= 0 { + return errors.New("Incorrect keyRange is constrcuted") + } + tids = append(tids, tid) + for i := 1; i < len(ranges); i++ { + tmpTID := DecodeTableID(ranges[i].StartKey) + if tmpTID <= 0 { + return errors.New("Incorrect keyRange is constrcuted") + } + if tid != tmpTID { + return errors.Errorf("Using multi partition's ranges as single table's") + } + } + return nil + } + err := keyRanges.ForEachPartitionWithErr(collectFunc) + return tids, err +} diff --git a/telemetry/data_feature_usage.go b/telemetry/data_feature_usage.go index 3766945536d9c..6dec8edcb023a 100644 --- a/telemetry/data_feature_usage.go +++ b/telemetry/data_feature_usage.go @@ -58,6 +58,7 @@ type featureUsage struct { DDLUsageCounter *m.DDLUsageCounter `json:"DDLUsageCounter"` EnableGlobalMemoryControl bool `json:"enableGlobalMemoryControl"` AutoIDNoCache bool `json:"autoIDNoCache"` + IndexMergeUsageCounter *m.IndexMergeUsageCounter `json:"indexMergeUsageCounter"` } type placementPolicyUsage struct { @@ -108,6 +109,8 @@ func getFeatureUsage(ctx context.Context, sctx sessionctx.Context) (*featureUsag usage.EnableGlobalMemoryControl = getGlobalMemoryControl() + usage.IndexMergeUsageCounter = getIndexMergeUsageInfo() + return &usage, nil } @@ -244,6 +247,7 @@ var initialTablePartitionCounter m.TablePartitionUsageCounter var initialSavepointStmtCounter int64 var initialLazyPessimisticUniqueCheckSetCount int64 var initialDDLUsageCounter m.DDLUsageCounter +var initialIndexMergeCounter m.IndexMergeUsageCounter // getTxnUsageInfo gets the usage info of transaction related features. It's exported for tests. func getTxnUsageInfo(ctx sessionctx.Context) *TxnUsage { @@ -402,3 +406,13 @@ func getDDLUsageInfo(ctx sessionctx.Context) *m.DDLUsageCounter { func getGlobalMemoryControl() bool { return memory.ServerMemoryLimit.Load() > 0 } + +func postReportIndexMergeUsage() { + initialIndexMergeCounter = m.GetIndexMergeCounter() +} + +func getIndexMergeUsageInfo() *m.IndexMergeUsageCounter { + curr := m.GetIndexMergeCounter() + diff := curr.Sub(initialIndexMergeCounter) + return &diff +} diff --git a/telemetry/data_feature_usage_test.go b/telemetry/data_feature_usage_test.go index f2d212f39b41b..369073009c0a4 100644 --- a/telemetry/data_feature_usage_test.go +++ b/telemetry/data_feature_usage_test.go @@ -143,7 +143,7 @@ func TestAutoIDNoCache(t *testing.T) { usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) require.True(t, usage.AutoIDNoCache) - tk.MustExec("alter table tele_autoid auto_id_cache=0") + tk.MustExec("drop table tele_autoid") usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) require.False(t, usage.AutoIDNoCache) @@ -286,6 +286,12 @@ func TestTablePartition(t *testing.T) { usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) require.Equal(t, int64(1), usage.ExchangePartition.ExchangePartitionCnt) + + require.Equal(t, int64(0), usage.TablePartition.TablePartitionComactCnt) + tk.MustExec(`alter table pt2 compact partition p0 tiflash replica;`) + usage, err = telemetry.GetFeatureUsage(tk.Session()) + require.NoError(t, err) + require.Equal(t, int64(1), usage.TablePartition.TablePartitionComactCnt) } func TestPlacementPolicies(t *testing.T) { @@ -373,12 +379,18 @@ func TestNonTransactionalUsage(t *testing.T) { usage, err := telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) require.Equal(t, int64(0), usage.NonTransactionalUsage.DeleteCount) + require.Equal(t, int64(0), usage.NonTransactionalUsage.UpdateCount) + require.Equal(t, int64(0), usage.NonTransactionalUsage.InsertCount) tk.MustExec("create table t(a int);") tk.MustExec("batch limit 1 delete from t") + tk.MustExec("batch limit 1 update t set a = 1") + tk.MustExec("batch limit 1 insert into t select * from t") usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) require.Equal(t, int64(1), usage.NonTransactionalUsage.DeleteCount) + require.Equal(t, int64(1), usage.NonTransactionalUsage.UpdateCount) + require.Equal(t, int64(1), usage.NonTransactionalUsage.InsertCount) } func TestGlobalKillUsageInfo(t *testing.T) { @@ -498,7 +510,7 @@ func TestAddIndexAccelerationAndMDL(t *testing.T) { require.NoError(t, err) allow := ddl.IsEnableFastReorg() - require.Equal(t, false, allow) + require.Equal(t, true, allow) tk.MustExec("set global tidb_enable_metadata_lock = 0") tk.MustExec("use test") tk.MustExec("drop table if exists tele_t") @@ -507,7 +519,7 @@ func TestAddIndexAccelerationAndMDL(t *testing.T) { tk.MustExec("alter table tele_t add index idx_org(b)") usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) - require.Equal(t, int64(0), usage.DDLUsageCounter.AddIndexIngestUsed) + require.Equal(t, int64(1), usage.DDLUsageCounter.AddIndexIngestUsed) require.Equal(t, false, usage.DDLUsageCounter.MetadataLockUsed) tk.MustExec("set @@global.tidb_ddl_enable_fast_reorg = on") @@ -516,11 +528,11 @@ func TestAddIndexAccelerationAndMDL(t *testing.T) { require.Equal(t, true, allow) usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) - require.Equal(t, int64(0), usage.DDLUsageCounter.AddIndexIngestUsed) + require.Equal(t, int64(1), usage.DDLUsageCounter.AddIndexIngestUsed) tk.MustExec("alter table tele_t add index idx_new(b)") usage, err = telemetry.GetFeatureUsage(tk.Session()) require.NoError(t, err) - require.Equal(t, int64(1), usage.DDLUsageCounter.AddIndexIngestUsed) + require.Equal(t, int64(2), usage.DDLUsageCounter.AddIndexIngestUsed) require.Equal(t, true, usage.DDLUsageCounter.MetadataLockUsed) } @@ -542,3 +554,32 @@ func TestGlobalMemoryControl(t *testing.T) { require.NoError(t, err) require.False(t, usage.EnableGlobalMemoryControl) } + +func TestIndexMergeUsage(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + + tk.MustExec("use test") + tk.MustExec("create table t1(c1 int, c2 int, index idx1(c1), index idx2(c2))") + res := tk.MustQuery("explain select /*+ use_index_merge(t1, idx1, idx2) */ * from t1 where c1 = 1 and c2 = 1").Rows() + require.Contains(t, res[0][0], "IndexMerge") + + usage, err := telemetry.GetFeatureUsage(tk.Session()) + require.NoError(t, err) + require.Equal(t, usage.IndexMergeUsageCounter.IndexMergeUsed, int64(0)) + + tk.MustExec("select /*+ use_index_merge(t1, idx1, idx2) */ * from t1 where c1 = 1 and c2 = 1") + usage, err = telemetry.GetFeatureUsage(tk.Session()) + require.NoError(t, err) + require.Equal(t, int64(1), usage.IndexMergeUsageCounter.IndexMergeUsed) + + tk.MustExec("select /*+ use_index_merge(t1, idx1, idx2) */ * from t1 where c1 = 1 or c2 = 1") + usage, err = telemetry.GetFeatureUsage(tk.Session()) + require.NoError(t, err) + require.Equal(t, int64(2), usage.IndexMergeUsageCounter.IndexMergeUsed) + + tk.MustExec("select /*+ no_index_merge() */ * from t1 where c1 = 1 or c2 = 1") + usage, err = telemetry.GetFeatureUsage(tk.Session()) + require.NoError(t, err) + require.Equal(t, int64(2), usage.IndexMergeUsageCounter.IndexMergeUsed) +} diff --git a/telemetry/data_window_test.go b/telemetry/data_window_test.go index 94146863ea9bd..0bd171caf3775 100644 --- a/telemetry/data_window_test.go +++ b/telemetry/data_window_test.go @@ -94,9 +94,11 @@ func TestTiflashUsage(t *testing.T) { require.Equal(t, telemetry.CurrentTiflashTableScanCount.String(), "0") require.Equal(t, telemetry.CurrentTiflashTableScanWithFastScanCount.String(), "0") - tk.MustExec("set session tidb_isolation_read_engines='tiflash';select count(*) from t") + tk.MustExec("set session tidb_isolation_read_engines='tiflash';") + tk.MustQuery(`select count(*) from t`) tk.MustExec(`set @@session.tiflash_fastscan=ON`) - tk.MustExec(`set session tidb_isolation_read_engines="tiflash";select count(*) from test.t`) + tk.MustExec(`set session tidb_isolation_read_engines="tiflash";`) + tk.MustQuery(`select count(*) from test.t`) tk.Session().Close() require.Equal(t, telemetry.CurrentTiflashTableScanCount.String(), "2") diff --git a/testkit/mockstore.go b/testkit/mockstore.go index 525381dd9c148..12afe0e0f2f68 100644 --- a/testkit/mockstore.go +++ b/testkit/mockstore.go @@ -80,6 +80,7 @@ func bootstrap(t testing.TB, store kv.Storage, lease time.Duration) *domain.Doma session.SetSchemaLease(lease) session.DisableStats4Test() domain.DisablePlanReplayerBackgroundJob4Test() + domain.DisableDumpHistoricalStats4Test() dom, err := session.BootstrapSession(store) require.NoError(t, err) diff --git a/testkit/result.go b/testkit/result.go index 0f7ad0ce53cbc..210d32d4c57b9 100644 --- a/testkit/result.go +++ b/testkit/result.go @@ -49,6 +49,11 @@ func (res *Result) Check(expected [][]interface{}) { res.require.Equal(needBuff.String(), resBuff.String(), res.comment) } +// AddComment adds the extra comment for the Result's output. +func (res *Result) AddComment(c string) { + res.comment += "\n" + c +} + // CheckWithFunc asserts the result match the expected results in the way `f` specifies. func (res *Result) CheckWithFunc(expected [][]interface{}, f func([]string, []interface{}) bool) { res.require.Equal(len(res.rows), len(expected), res.comment+"\nResult length mismatch") diff --git a/testkit/testkit.go b/testkit/testkit.go index 25479bc862d96..db86548ee3bfd 100644 --- a/testkit/testkit.go +++ b/testkit/testkit.go @@ -231,6 +231,29 @@ func (tk *TestKit) HasPlan(sql string, plan string, args ...interface{}) bool { return false } +// HasTiFlashPlan checks if the result execution plan contains TiFlash plan. +func (tk *TestKit) HasTiFlashPlan(sql string, args ...interface{}) bool { + rs := tk.MustQuery("explain "+sql, args...) + for i := range rs.rows { + if strings.Contains(rs.rows[i][2], "tiflash") { + return true + } + } + return false +} + +// HasPlanForLastExecution checks if the execution plan of the last execution contains specific plan. +func (tk *TestKit) HasPlanForLastExecution(plan string) bool { + connID := tk.session.GetSessionVars().ConnectionID + rs := tk.MustQuery(fmt.Sprintf("explain for connection %d", connID)) + for i := range rs.rows { + if strings.Contains(rs.rows[i][0], plan) { + return true + } + } + return false +} + // HasKeywordInOperatorInfo checks if the result execution plan contains specific keyword in the operator info. func (tk *TestKit) HasKeywordInOperatorInfo(sql string, keyword string, args ...interface{}) bool { rs := tk.MustQuery("explain "+sql, args...) diff --git a/testkit/testutil/require.go b/testkit/testutil/require.go index 90b157fcb7591..09e8e871312ae 100644 --- a/testkit/testutil/require.go +++ b/testkit/testutil/require.go @@ -17,6 +17,7 @@ package testutil import ( + "math/rand" "testing" "github.com/pingcap/tidb/kv" @@ -75,3 +76,14 @@ func CompareUnorderedStringSlice(a []string, b []string) bool { } return len(m) == 0 } + +var letterRunes = []rune("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ") + +// RandStringRunes generate random string of length n. +func RandStringRunes(n int) string { + b := make([]rune, n) + for i := range b { + b[i] = letterRunes[rand.Intn(len(letterRunes))] + } + return string(b) +} diff --git a/tests/realtikvtest/addindextest/BUILD.bazel b/tests/realtikvtest/addindextest/BUILD.bazel index 1a9951fd86a51..f6bb2f0844404 100644 --- a/tests/realtikvtest/addindextest/BUILD.bazel +++ b/tests/realtikvtest/addindextest/BUILD.bazel @@ -34,9 +34,12 @@ go_test( embed = [":addindextest"], deps = [ "//config", + "//ddl", "//ddl/ingest", + "//ddl/testutil", "//testkit", "//tests/realtikvtest", + "@com_github_pingcap_failpoint//:failpoint", "@com_github_stretchr_testify//require", ], ) diff --git a/tests/realtikvtest/addindextest/integration_test.go b/tests/realtikvtest/addindextest/integration_test.go index 19c8977242b3b..70da49e58364b 100644 --- a/tests/realtikvtest/addindextest/integration_test.go +++ b/tests/realtikvtest/addindextest/integration_test.go @@ -18,9 +18,13 @@ import ( "fmt" "strings" "sync" + "sync/atomic" "testing" + "github.com/pingcap/failpoint" + "github.com/pingcap/tidb/ddl" "github.com/pingcap/tidb/ddl/ingest" + "github.com/pingcap/tidb/ddl/testutil" "github.com/pingcap/tidb/testkit" "github.com/pingcap/tidb/tests/realtikvtest" "github.com/stretchr/testify/require" @@ -97,3 +101,158 @@ func TestAddIndexIngestLimitOneBackend(t *testing.T) { require.True(t, strings.Contains(rows[0][3].(string) /* job_type */, "ingest")) require.Equal(t, rows[0][7].(string) /* row_count */, "3") } + +func TestAddIndexIngestWriterCountOnPartitionTable(t *testing.T) { + store := realtikvtest.CreateMockStoreAndSetup(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("drop database if exists addindexlit;") + tk.MustExec("create database addindexlit;") + tk.MustExec("use addindexlit;") + tk.MustExec(`set global tidb_ddl_enable_fast_reorg=on;`) + + tk.MustExec("create table t (a int primary key) partition by hash(a) partitions 32;") + var sb strings.Builder + sb.WriteString("insert into t values ") + for i := 0; i < 100; i++ { + sb.WriteString(fmt.Sprintf("(%d)", i)) + if i != 99 { + sb.WriteString(",") + } + } + tk.MustExec(sb.String()) + tk.MustExec("alter table t add index idx(a);") + rows := tk.MustQuery("admin show ddl jobs 1;").Rows() + require.Len(t, rows, 1) + jobTp := rows[0][3].(string) + require.True(t, strings.Contains(jobTp, "ingest"), jobTp) +} + +func TestAddIndexIngestAdjustBackfillWorker(t *testing.T) { + store := realtikvtest.CreateMockStoreAndSetup(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("drop database if exists addindexlit;") + tk.MustExec("create database addindexlit;") + tk.MustExec("use addindexlit;") + tk.MustExec(`set global tidb_ddl_enable_fast_reorg=on;`) + tk.MustExec("set @@global.tidb_ddl_reorg_worker_cnt = 1;") + tk.MustExec("create table t (a int primary key);") + var sb strings.Builder + sb.WriteString("insert into t values ") + for i := 0; i < 20; i++ { + sb.WriteString(fmt.Sprintf("(%d000)", i)) + if i != 19 { + sb.WriteString(",") + } + } + tk.MustExec(sb.String()) + tk.MustQuery("split table t between (0) and (20000) regions 20;").Check(testkit.Rows("19 1")) + + require.NoError(t, failpoint.Enable("github.com/pingcap/tidb/ddl/checkBackfillWorkerNum", `return(true)`)) + done := make(chan error, 1) + atomic.StoreInt32(&ddl.TestCheckWorkerNumber, 1) + testutil.SessionExecInGoroutine(store, "addindexlit", "alter table t add index idx(a);", done) + checkNum := 0 + + running := true + cnt := [3]int{1, 2, 4} + offset := 0 + for running { + select { + case err := <-done: + require.NoError(t, err) + running = false + case wg := <-ddl.TestCheckWorkerNumCh: + offset = (offset + 1) % 3 + tk.MustExec(fmt.Sprintf("set @@global.tidb_ddl_reorg_worker_cnt=%d", cnt[offset])) + atomic.StoreInt32(&ddl.TestCheckWorkerNumber, int32(cnt[offset])/2+1) + checkNum++ + wg.Done() + } + } + + require.Greater(t, checkNum, 5) + require.NoError(t, failpoint.Disable("github.com/pingcap/tidb/ddl/checkBackfillWorkerNum")) + tk.MustExec("admin check table t;") + rows := tk.MustQuery("admin show ddl jobs 1;").Rows() + require.Len(t, rows, 1) + jobTp := rows[0][3].(string) + require.True(t, strings.Contains(jobTp, "ingest"), jobTp) + tk.MustExec("set @@global.tidb_ddl_reorg_worker_cnt = 4;") +} + +func TestAddIndexIngestAdjustBackfillWorkerCountFail(t *testing.T) { + store := realtikvtest.CreateMockStoreAndSetup(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("drop database if exists addindexlit;") + tk.MustExec("create database addindexlit;") + tk.MustExec("use addindexlit;") + tk.MustExec(`set global tidb_ddl_enable_fast_reorg=on;`) + ingest.ImporterRangeConcurrencyForTest = &atomic.Int32{} + ingest.ImporterRangeConcurrencyForTest.Store(2) + tk.MustExec("set @@global.tidb_ddl_reorg_worker_cnt = 20;") + tk.MustExec("create table t (a int primary key);") + var sb strings.Builder + sb.WriteString("insert into t values ") + for i := 0; i < 20; i++ { + sb.WriteString(fmt.Sprintf("(%d000)", i)) + if i != 19 { + sb.WriteString(",") + } + } + tk.MustExec(sb.String()) + tk.MustQuery("split table t between (0) and (20000) regions 20;").Check(testkit.Rows("19 1")) + tk.MustExec("alter table t add index idx(a);") + rows := tk.MustQuery("admin show ddl jobs 1;").Rows() + require.Len(t, rows, 1) + jobTp := rows[0][3].(string) + require.True(t, strings.Contains(jobTp, "ingest"), jobTp) + tk.MustExec("set @@global.tidb_ddl_reorg_worker_cnt = 4;") + ingest.ImporterRangeConcurrencyForTest = nil +} + +func TestAddIndexIngestGeneratedColumns(t *testing.T) { + store := realtikvtest.CreateMockStoreAndSetup(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("drop database if exists addindexlit;") + tk.MustExec("create database addindexlit;") + tk.MustExec("use addindexlit;") + tk.MustExec(`set global tidb_ddl_enable_fast_reorg=on;`) + assertLastNDDLUseIngest := func(n int) { + tk.MustExec("admin check table t;") + rows := tk.MustQuery(fmt.Sprintf("admin show ddl jobs %d;", n)).Rows() + require.Len(t, rows, n) + for i := 0; i < n; i++ { + jobTp := rows[i][3].(string) + require.True(t, strings.Contains(jobTp, "ingest"), jobTp) + } + } + tk.MustExec("create table t (a int, b int, c int as (b+10), d int as (b+c), primary key (a) clustered);") + tk.MustExec("insert into t (a, b) values (1, 1), (2, 2), (3, 3);") + tk.MustExec("alter table t add index idx(c);") + tk.MustExec("alter table t add index idx1(c, a);") + tk.MustExec("alter table t add index idx2(a);") + tk.MustExec("alter table t add index idx3(d);") + tk.MustExec("alter table t add index idx4(d, c);") + tk.MustQuery("select * from t;").Check(testkit.Rows("1 1 11 12", "2 2 12 14", "3 3 13 16")) + assertLastNDDLUseIngest(5) + + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a int, b char(10), c char(10) as (concat(b, 'x')), d int, e char(20) as (c));") + tk.MustExec("insert into t (a, b, d) values (1, '1', 1), (2, '2', 2), (3, '3', 3);") + tk.MustExec("alter table t add index idx(c);") + tk.MustExec("alter table t add index idx1(a, c);") + tk.MustExec("alter table t add index idx2(c(7));") + tk.MustExec("alter table t add index idx3(e(5));") + tk.MustQuery("select * from t;").Check(testkit.Rows("1 1 1x 1 1x", "2 2 2x 2 2x", "3 3 3x 3 3x")) + assertLastNDDLUseIngest(4) + + tk.MustExec("drop table if exists t;") + tk.MustExec("create table t (a int, b char(10), c tinyint, d int as (a + c), e bigint as (d - a), primary key(b, a) clustered);") + tk.MustExec("insert into t (a, b, c) values (1, '1', 1), (2, '2', 2), (3, '3', 3);") + tk.MustExec("alter table t add index idx(d);") + tk.MustExec("alter table t add index idx1(b(2), d);") + tk.MustExec("alter table t add index idx2(d, c);") + tk.MustExec("alter table t add index idx3(e);") + tk.MustQuery("select * from t;").Check(testkit.Rows("1 1 1 2 1", "2 2 2 4 2", "3 3 3 6 3")) + assertLastNDDLUseIngest(4) +} diff --git a/tests/realtikvtest/addindextest/main_test.go b/tests/realtikvtest/addindextest/main_test.go index 5171b56a48d1a..a308c7831a249 100644 --- a/tests/realtikvtest/addindextest/main_test.go +++ b/tests/realtikvtest/addindextest/main_test.go @@ -18,6 +18,7 @@ import ( "flag" "testing" + "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/tests/realtikvtest" ) @@ -26,5 +27,8 @@ import ( var FullMode = flag.Bool("full-mode", false, "whether tests run in full mode") func TestMain(m *testing.M) { + config.UpdateGlobal(func(conf *config.Config) { + conf.Store = "tikv" + }) realtikvtest.RunTestMain(m) } diff --git a/tests/realtikvtest/pessimistictest/pessimistic_test.go b/tests/realtikvtest/pessimistictest/pessimistic_test.go index 5e2da1d200651..0383272f8b1ed 100644 --- a/tests/realtikvtest/pessimistictest/pessimistic_test.go +++ b/tests/realtikvtest/pessimistictest/pessimistic_test.go @@ -1850,6 +1850,7 @@ func TestPessimisticTxnWithDDLAddDropColumn(t *testing.T) { // tk2 starts a pessimistic transaction and make some changes on table t1. // tk executes some ddl statements add/drop column on table t1. + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk.MustExec("begin pessimistic") tk.MustExec("update t1 set c2 = c1 * 10") @@ -1880,6 +1881,7 @@ func TestPessimisticTxnWithDDLChangeColumn(t *testing.T) { tk.MustExec("insert t1 values (1, 77, 'a'), (2, 88, 'b')") // Extend column field length is acceptable. + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk.MustExec("begin pessimistic") tk.MustExec("update t1 set c2 = c1 * 10") @@ -2153,6 +2155,7 @@ func TestAmendTxnVariable(t *testing.T) { tk3.MustExec("set tidb_enable_amend_pessimistic_txn = 0;") tk3.MustExec("begin pessimistic") tk3.MustExec("insert into t1 values(3, 3, 3)") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk.MustExec("begin pessimistic") tk.MustExec("insert into t1 values(4, 4, 4)") @@ -2173,6 +2176,7 @@ func TestAmendTxnVariable(t *testing.T) { tk4.MustExec("insert into t1 values(5, 5, 5, 5)") tk2.MustExec("alter table t1 drop column new_col") require.Error(t, tk4.ExecToErr("commit")) + tk4.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk4.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk4.MustExec("begin pessimistic") tk4.MustExec("insert into t1 values(5, 5, 5)") @@ -2303,6 +2307,7 @@ func TestAsyncCommitWithSchemaChange(t *testing.T) { tk.MustExec("insert into tk values(1, 1, 1)") tk2 := createAsyncCommitTestKit(t, store) tk3 := createAsyncCommitTestKit(t, store) + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk2.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk3.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") @@ -2377,6 +2382,7 @@ func Test1PCWithSchemaChange(t *testing.T) { tk.MustExec("drop table if exists tk") tk.MustExec("create table tk (c1 int primary key, c2 int)") tk.MustExec("insert into tk values (1, 1)") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk2.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk3.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") @@ -2424,6 +2430,7 @@ func TestAmendForUniqueIndex(t *testing.T) { tk2 := testkit.NewTestKit(t, store) tk.MustExec("use test") tk2.MustExec("use test") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk2.MustExec("drop table if exists t1") @@ -2546,6 +2553,7 @@ func TestAmendWithColumnTypeChange(t *testing.T) { tk.MustExec("set global tidb_enable_metadata_lock=0") tk2.MustExec("use test") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1;") tk2.MustExec("drop table if exists t") @@ -2563,6 +2571,7 @@ func TestIssue21498(t *testing.T) { tk2 := testkit.NewTestKit(t, store) tk.MustExec("use test") tk2.MustExec("use test") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1") for _, partition := range []bool{false, true} { @@ -2732,6 +2741,7 @@ func TestPlanCacheSchemaChange(t *testing.T) { tk.MustExec("create table t (id int primary key, v int, unique index iv (v), vv int)") tk.MustExec("insert into t values(1, 1, 1), (2, 2, 2), (4, 4, 4)") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = 0") tk.MustExec("set tidb_enable_amend_pessimistic_txn = 1") tk2.MustExec("set tidb_enable_amend_pessimistic_txn = 1") @@ -2899,6 +2909,7 @@ func TestAmendForIndexChange(t *testing.T) { tk.MustExec("set global tidb_enable_metadata_lock=0") tk2.MustExec("use test") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = OFF;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = ON;") tk.Session().GetSessionVars().EnableAsyncCommit = false tk.Session().GetSessionVars().Enable1PC = false @@ -2974,6 +2985,7 @@ func TestAmendForColumnChange(t *testing.T) { tk.MustExec("set global tidb_enable_metadata_lock=0") tk2.MustExec("use test") + tk.MustExec("set global tidb_ddl_enable_fast_reorg = OFF;") tk.MustExec("set tidb_enable_amend_pessimistic_txn = ON;") tk2.MustExec("drop table if exists t1") diff --git a/tests/realtikvtest/statisticstest/BUILD.bazel b/tests/realtikvtest/statisticstest/BUILD.bazel index 1203b0366c08b..e9d8f215e7939 100644 --- a/tests/realtikvtest/statisticstest/BUILD.bazel +++ b/tests/realtikvtest/statisticstest/BUILD.bazel @@ -12,9 +12,7 @@ go_test( deps = [ "//statistics/handle", "//testkit", - "//testkit/testsetup", "//tests/realtikvtest", "@com_github_stretchr_testify//require", - "@org_uber_go_goleak//:goleak", ], ) diff --git a/tests/realtikvtest/statisticstest/main_test.go b/tests/realtikvtest/statisticstest/main_test.go index 5fef5b584be04..3010d3ee88066 100644 --- a/tests/realtikvtest/statisticstest/main_test.go +++ b/tests/realtikvtest/statisticstest/main_test.go @@ -17,20 +17,9 @@ package statisticstest import ( "testing" - "github.com/pingcap/tidb/testkit/testsetup" "github.com/pingcap/tidb/tests/realtikvtest" - "go.uber.org/goleak" ) func TestMain(m *testing.M) { - opts := []goleak.Option{ - goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), - goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), - goleak.IgnoreTopFunction("google.golang.org/grpc.(*ccBalancerWrapper).watcher"), - goleak.IgnoreTopFunction("internal/poll.runtime_pollWait"), - goleak.IgnoreTopFunction("net/http.(*persistConn).writeLoop"), - } - testsetup.SetupForCommonTest() - goleak.VerifyTestMain(m, opts...) realtikvtest.RunTestMain(m) } diff --git a/tests/realtikvtest/txntest/txn_state_test.go b/tests/realtikvtest/txntest/txn_state_test.go index 59049dd129151..b8a687a074964 100644 --- a/tests/realtikvtest/txntest/txn_state_test.go +++ b/tests/realtikvtest/txntest/txn_state_test.go @@ -128,14 +128,30 @@ func TestEntriesCountAndSize(t *testing.T) { tk.MustExec("insert into t(a) values (1);") info := tk.Session().TxnInfo() require.Equal(t, uint64(1), info.EntriesCount) - require.Equal(t, uint64(29), info.EntriesSize) tk.MustExec("insert into t(a) values (2);") info = tk.Session().TxnInfo() require.Equal(t, uint64(2), info.EntriesCount) - require.Equal(t, uint64(58), info.EntriesSize) tk.MustExec("commit;") } +func TestMemDBTracker(t *testing.T) { + store := realtikvtest.CreateMockStoreAndSetup(t) + tk := testkit.NewTestKit(t, store) + session := tk.Session() + tk.MustExec("use test") + tk.MustExec("create table t (id int)") + tk.MustExec("begin") + for i := 0; i < (1 << 10); i++ { + tk.MustExec("insert t (id) values (1)") + } + require.Less(t, int64(1<<(10+4)), session.GetSessionVars().MemDBFootprint.BytesConsumed()) + require.Greater(t, int64(1<<(14+4)), session.GetSessionVars().MemDBFootprint.BytesConsumed()) + for i := 0; i < (1 << 14); i++ { + tk.MustExec("insert t (id) values (1)") + } + require.Less(t, int64(1<<(14+4)), session.GetSessionVars().MemDBFootprint.BytesConsumed()) +} + func TestRunning(t *testing.T) { store := realtikvtest.CreateMockStoreAndSetup(t) diff --git a/tidb-server/main.go b/tidb-server/main.go index 9b1e58b736844..a15d102f9509e 100644 --- a/tidb-server/main.go +++ b/tidb-server/main.go @@ -118,8 +118,9 @@ const ( nmProxyProtocolHeaderTimeout = "proxy-protocol-header-timeout" nmAffinityCPU = "affinity-cpus" - nmInitializeSecure = "initialize-secure" - nmInitializeInsecure = "initialize-insecure" + nmInitializeSecure = "initialize-secure" + nmInitializeInsecure = "initialize-insecure" + nmDisconnectOnExpiredPassword = "disconnect-on-expired-password" ) var ( @@ -164,8 +165,9 @@ var ( proxyProtocolHeaderTimeout = flag.Uint(nmProxyProtocolHeaderTimeout, 5, "proxy protocol header read timeout, unit is second. (Deprecated: as proxy protocol using lazy mode, header read timeout no longer used)") // Security - initializeSecure = flagBoolean(nmInitializeSecure, false, "bootstrap tidb-server in secure mode") - initializeInsecure = flagBoolean(nmInitializeInsecure, true, "bootstrap tidb-server in insecure mode") + initializeSecure = flagBoolean(nmInitializeSecure, false, "bootstrap tidb-server in secure mode") + initializeInsecure = flagBoolean(nmInitializeInsecure, true, "bootstrap tidb-server in insecure mode") + disconnectOnExpiredPassword = flagBoolean(nmDisconnectOnExpiredPassword, true, "the server disconnects the client when the password is expired") ) func main() { @@ -536,6 +538,9 @@ func overrideConfig(cfg *config.Config) { if actualFlags[nmInitializeInsecure] { cfg.Security.SecureBootstrap = !*initializeInsecure } + if actualFlags[nmDisconnectOnExpiredPassword] { + cfg.Security.DisconnectOnExpiredPassword = *disconnectOnExpiredPassword + } // Secure bootstrap initializes with Socket authentication // which is not supported on windows. Only the insecure bootstrap // method is supported. @@ -628,7 +633,12 @@ func setGlobalVars() { } plannercore.AllowCartesianProduct.Store(cfg.Performance.CrossJoin) privileges.SkipWithGrant = cfg.Security.SkipGrantTable - kv.TxnTotalSizeLimit = cfg.Performance.TxnTotalSizeLimit + if cfg.Performance.TxnTotalSizeLimit == config.DefTxnTotalSizeLimit { + // practically deprecate the config, let the new session memory tracker take charge of it. + kv.TxnTotalSizeLimit = config.SuperLargeTxnSize + } else { + kv.TxnTotalSizeLimit = cfg.Performance.TxnTotalSizeLimit + } if cfg.Performance.TxnEntrySizeLimit > 120*1024*1024 { log.Fatal("cannot set txn entry size limit larger than 120M") } @@ -640,6 +650,7 @@ func setGlobalVars() { variable.ProcessGeneralLog.Store(cfg.Instance.TiDBGeneralLog) variable.EnablePProfSQLCPU.Store(cfg.Instance.EnablePProfSQLCPU) variable.EnableRCReadCheckTS.Store(cfg.Instance.TiDBRCReadCheckTS) + variable.IsSandBoxModeEnabled.Store(!cfg.Security.DisconnectOnExpiredPassword) atomic.StoreUint32(&variable.DDLSlowOprThreshold, cfg.Instance.DDLSlowOprThreshold) atomic.StoreUint64(&variable.ExpensiveQueryTimeThreshold, cfg.Instance.ExpensiveQueryTimeThreshold) diff --git a/ttl/cache/BUILD.bazel b/ttl/cache/BUILD.bazel new file mode 100644 index 0000000000000..e632f113a580b --- /dev/null +++ b/ttl/cache/BUILD.bazel @@ -0,0 +1,51 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "cache", + srcs = [ + "base.go", + "infoschema.go", + "table.go", + "ttlstatus.go", + ], + importpath = "github.com/pingcap/tidb/ttl/cache", + visibility = ["//visibility:public"], + deps = [ + "//infoschema", + "//parser/ast", + "//parser/model", + "//parser/mysql", + "//sessionctx", + "//table/tables", + "//ttl/session", + "//types", + "//util/chunk", + "//util/logutil", + "@com_github_pingcap_errors//:errors", + "@org_uber_go_zap//:zap", + ], +) + +go_test( + name = "cache_test", + srcs = [ + "base_test.go", + "infoschema_test.go", + "main_test.go", + "table_test.go", + "ttlstatus_test.go", + ], + embed = [":cache"], + flaky = True, + deps = [ + "//parser", + "//parser/model", + "//server", + "//testkit", + "//testkit/testsetup", + "//ttl/session", + "@com_github_stretchr_testify//assert", + "@com_github_stretchr_testify//require", + "@org_uber_go_goleak//:goleak", + ], +) diff --git a/ttl/cache/base.go b/ttl/cache/base.go new file mode 100644 index 0000000000000..cc2ece5c9bdc1 --- /dev/null +++ b/ttl/cache/base.go @@ -0,0 +1,41 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache + +import ( + "time" +) + +type baseCache struct { + interval time.Duration + + updateTime time.Time +} + +func newBaseCache(interval time.Duration) baseCache { + return baseCache{ + interval: interval, + } +} + +// ShouldUpdate returns whether this cache needs update +func (bc *baseCache) ShouldUpdate() bool { + return time.Since(bc.updateTime) > bc.interval +} + +// SetInterval sets the interval of updating cache +func (bc *baseCache) SetInterval(interval time.Duration) { + bc.interval = interval +} diff --git a/ttl/cache/base_test.go b/ttl/cache/base_test.go new file mode 100644 index 0000000000000..838cfbbf55329 --- /dev/null +++ b/ttl/cache/base_test.go @@ -0,0 +1,33 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache + +import ( + "testing" + "time" + + "github.com/stretchr/testify/assert" +) + +func TestBaseCache(t *testing.T) { + baseCache := newBaseCache(time.Nanosecond) + time.Sleep(time.Microsecond) + + assert.True(t, baseCache.ShouldUpdate()) + + baseCache.updateTime = time.Now() + baseCache.SetInterval(time.Hour) + assert.False(t, baseCache.ShouldUpdate()) +} diff --git a/ttl/cache/infoschema.go b/ttl/cache/infoschema.go new file mode 100644 index 0000000000000..afff0ea725847 --- /dev/null +++ b/ttl/cache/infoschema.go @@ -0,0 +1,115 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache + +import ( + "time" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/util/logutil" + "go.uber.org/zap" +) + +// InfoSchemaCache is the cache for InfoSchema, it builds a map from physical table id to physical table information +type InfoSchemaCache struct { + baseCache + + schemaVer int64 + Tables map[int64]*PhysicalTable +} + +// NewInfoSchemaCache creates the cache for info schema +func NewInfoSchemaCache(updateInterval time.Duration) *InfoSchemaCache { + return &InfoSchemaCache{ + baseCache: newBaseCache(updateInterval), + } +} + +// Update updates the info schema cache +func (isc *InfoSchemaCache) Update(sctx sessionctx.Context) error { + is, ok := sctx.GetDomainInfoSchema().(infoschema.InfoSchema) + if !ok { + return errors.New("fail to get domain info schema from session") + } + + ext, ok := is.(*infoschema.SessionExtendedInfoSchema) + if !ok { + return errors.New("fail to get extended info schema") + } + + if isc.schemaVer == ext.SchemaMetaVersion() { + return nil + } + + newTables := make(map[int64]*PhysicalTable, len(isc.Tables)) + for _, db := range is.AllSchemas() { + for _, tbl := range is.SchemaTables(db.Name) { + tblInfo := tbl.Meta() + if tblInfo.TTLInfo == nil || tblInfo.State != model.StatePublic { + continue + } + + logger := logutil.BgLogger().With(zap.String("schema", db.Name.L), zap.Int64("tableID", tblInfo.ID), zap.String("tableName", tblInfo.Name.L)) + + if tblInfo.Partition == nil { + ttlTable, err := isc.newTable(db.Name, tblInfo, nil) + if err != nil { + logger.Warn("fail to build info schema cache", zap.Error(err)) + continue + } + newTables[tblInfo.ID] = ttlTable + continue + } + + for _, par := range tblInfo.Partition.Definitions { + par := par + ttlTable, err := isc.newTable(db.Name, tblInfo, &par) + if err != nil { + logger.Warn("fail to build info schema cache", zap.Int64("partitionID", par.ID), zap.String("partition", par.Name.L), zap.Error(err)) + continue + } + newTables[par.ID] = ttlTable + } + } + } + + isc.schemaVer = is.SchemaMetaVersion() + isc.Tables = newTables + isc.updateTime = time.Now() + return nil +} + +func (isc *InfoSchemaCache) newTable(schema model.CIStr, tblInfo *model.TableInfo, par *model.PartitionDefinition) (*PhysicalTable, error) { + id := tblInfo.ID + if par != nil { + id = par.ID + } + + if isc.Tables != nil { + ttlTable, ok := isc.Tables[id] + if ok && ttlTable.TableInfo == tblInfo { + return ttlTable, nil + } + } + + partitionName := model.NewCIStr("") + if par != nil { + partitionName = par.Name + } + return NewPhysicalTable(schema, tblInfo, partitionName) +} diff --git a/ttl/cache/infoschema_test.go b/ttl/cache/infoschema_test.go new file mode 100644 index 0000000000000..5ba99a2b69703 --- /dev/null +++ b/ttl/cache/infoschema_test.go @@ -0,0 +1,74 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache_test + +import ( + "testing" + "time" + + "github.com/pingcap/tidb/parser" + "github.com/pingcap/tidb/server" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/ttl/cache" + "github.com/stretchr/testify/assert" +) + +func TestInfoSchemaCache(t *testing.T) { + parser.TTLFeatureGate = true + + store, dom := testkit.CreateMockStoreAndDomain(t) + sv := server.CreateMockServer(t, store) + sv.SetDomain(dom) + defer sv.Close() + + conn := server.CreateMockConn(t, sv) + sctx := conn.Context().Session + tk := testkit.NewTestKitWithSession(t, store, sctx) + + isc := cache.NewInfoSchemaCache(time.Hour) + + // test should update + assert.True(t, isc.ShouldUpdate()) + assert.NoError(t, isc.Update(sctx)) + assert.False(t, isc.ShouldUpdate()) + + // test new tables are synced + assert.Equal(t, 0, len(isc.Tables)) + tk.MustExec("create table test.t(created_at datetime) ttl = created_at + INTERVAL 5 YEAR") + assert.NoError(t, isc.Update(sctx)) + assert.Equal(t, 1, len(isc.Tables)) + for _, table := range isc.Tables { + assert.Equal(t, "t", table.TableInfo.Name.L) + } + + // test new partitioned table are synced + tk.MustExec("drop table test.t") + tk.MustExec(`create table test.t(created_at datetime) + ttl = created_at + INTERVAL 5 YEAR + partition by range (YEAR(created_at)) ( + partition p0 values less than (1991), + partition p1 values less than (2000) + ) + `) + assert.NoError(t, isc.Update(sctx)) + assert.Equal(t, 2, len(isc.Tables)) + partitions := []string{} + for id, table := range isc.Tables { + assert.Equal(t, "t", table.TableInfo.Name.L) + assert.Equal(t, id, table.PartitionDef.ID) + partitions = append(partitions, table.PartitionDef.Name.L) + } + assert.ElementsMatch(t, []string{"p0", "p1"}, partitions) +} diff --git a/ttl/cache/main_test.go b/ttl/cache/main_test.go new file mode 100644 index 0000000000000..e3846871bb55b --- /dev/null +++ b/ttl/cache/main_test.go @@ -0,0 +1,33 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache_test + +import ( + "testing" + + "github.com/pingcap/tidb/testkit/testsetup" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + testsetup.SetupForCommonTest() + opts := []goleak.Option{ + goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), + goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), + goleak.IgnoreTopFunction("go.etcd.io/etcd/client/pkg/v3/logutil.(*MergeLogger).outputLoop"), + goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), + } + goleak.VerifyTestMain(m, opts...) +} diff --git a/ttl/cache/table.go b/ttl/cache/table.go new file mode 100644 index 0000000000000..e1637ac33906e --- /dev/null +++ b/ttl/cache/table.go @@ -0,0 +1,163 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache + +import ( + "context" + "fmt" + "time" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/parser/mysql" + "github.com/pingcap/tidb/table/tables" + "github.com/pingcap/tidb/ttl/session" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/chunk" +) + +func getTableKeyColumns(tbl *model.TableInfo) ([]*model.ColumnInfo, []*types.FieldType, error) { + if tbl.PKIsHandle { + for i, col := range tbl.Columns { + if mysql.HasPriKeyFlag(col.GetFlag()) { + return []*model.ColumnInfo{tbl.Columns[i]}, []*types.FieldType{&tbl.Columns[i].FieldType}, nil + } + } + return nil, nil, errors.Errorf("Cannot find primary key for table: %s", tbl.Name) + } + + if tbl.IsCommonHandle { + idxInfo := tables.FindPrimaryIndex(tbl) + columns := make([]*model.ColumnInfo, len(idxInfo.Columns)) + fieldTypes := make([]*types.FieldType, len(idxInfo.Columns)) + for i, idxCol := range idxInfo.Columns { + columns[i] = tbl.Columns[idxCol.Offset] + fieldTypes[i] = &tbl.Columns[idxCol.Offset].FieldType + } + return columns, fieldTypes, nil + } + + extraHandleColInfo := model.NewExtraHandleColInfo() + return []*model.ColumnInfo{extraHandleColInfo}, []*types.FieldType{&extraHandleColInfo.FieldType}, nil +} + +// PhysicalTable is used to provide some information for a physical table in TTL job +type PhysicalTable struct { + // ID is the physical ID of the table + ID int64 + // Schema is the database name of the table + Schema model.CIStr + *model.TableInfo + // Partition is the partition name + Partition model.CIStr + // PartitionDef is the partition definition + PartitionDef *model.PartitionDefinition + // KeyColumns is the cluster index key columns for the table + KeyColumns []*model.ColumnInfo + // KeyColumnTypes is the types of the key columns + KeyColumnTypes []*types.FieldType + // TimeColum is the time column used for TTL + TimeColumn *model.ColumnInfo +} + +// NewPhysicalTable create a new PhysicalTable +func NewPhysicalTable(schema model.CIStr, tbl *model.TableInfo, partition model.CIStr) (*PhysicalTable, error) { + if tbl.State != model.StatePublic { + return nil, errors.Errorf("table '%s.%s' is not a public table", schema, tbl.Name) + } + + ttlInfo := tbl.TTLInfo + if ttlInfo == nil { + return nil, errors.Errorf("table '%s.%s' is not a ttl table", schema, tbl.Name) + } + + timeColumn := tbl.FindPublicColumnByName(ttlInfo.ColumnName.L) + if timeColumn == nil { + return nil, errors.Errorf("time column '%s' is not public in ttl table '%s.%s'", ttlInfo.ColumnName, schema, tbl.Name) + } + + keyColumns, keyColumTypes, err := getTableKeyColumns(tbl) + if err != nil { + return nil, err + } + + var physicalID int64 + var partitionDef *model.PartitionDefinition + if tbl.Partition == nil { + if partition.L != "" { + return nil, errors.Errorf("table '%s.%s' is not a partitioned table", schema, tbl.Name) + } + physicalID = tbl.ID + } else { + if partition.L == "" { + return nil, errors.Errorf("partition name is required, table '%s.%s' is a partitioned table", schema, tbl.Name) + } + + for i := range tbl.Partition.Definitions { + def := &tbl.Partition.Definitions[i] + if def.Name.L == partition.L { + partitionDef = def + } + } + + if partitionDef == nil { + return nil, errors.Errorf("partition '%s' is not found in ttl table '%s.%s'", partition.O, schema, tbl.Name) + } + + physicalID = partitionDef.ID + } + + return &PhysicalTable{ + ID: physicalID, + Schema: schema, + TableInfo: tbl, + Partition: partition, + PartitionDef: partitionDef, + KeyColumns: keyColumns, + KeyColumnTypes: keyColumTypes, + TimeColumn: timeColumn, + }, nil +} + +// ValidateKey validates a key +func (t *PhysicalTable) ValidateKey(key []types.Datum) error { + if len(t.KeyColumns) != len(key) { + return errors.Errorf("invalid key length: %d, expected %d", len(key), len(t.KeyColumns)) + } + return nil +} + +// EvalExpireTime returns the expired time +func (t *PhysicalTable) EvalExpireTime(ctx context.Context, se session.Session, now time.Time) (expire time.Time, err error) { + tz := se.GetSessionVars().TimeZone + + expireExpr := t.TTLInfo.IntervalExprStr + unit := ast.TimeUnitType(t.TTLInfo.IntervalTimeUnit) + + var rows []chunk.Row + rows, err = se.ExecuteSQL( + ctx, + // FROM_UNIXTIME does not support negative value, so we use `FROM_UNIXTIME(0) + INTERVAL ` to present current time + fmt.Sprintf("SELECT FROM_UNIXTIME(0) + INTERVAL %d SECOND - INTERVAL %s %s", now.Unix(), expireExpr, unit.String()), + ) + + if err != nil { + return + } + + tm := rows[0].GetTime(0) + return tm.CoreTime().GoTime(tz) +} diff --git a/ttl/cache/table_test.go b/ttl/cache/table_test.go new file mode 100644 index 0000000000000..f79d4c3bf4256 --- /dev/null +++ b/ttl/cache/table_test.go @@ -0,0 +1,221 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache_test + +import ( + "context" + "fmt" + "testing" + "time" + + "github.com/pingcap/tidb/parser" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/ttl/session" + "github.com/stretchr/testify/require" +) + +func TestNewTTLTable(t *testing.T) { + parser.TTLFeatureGate = true + + cases := []struct { + db string + tbl string + def string + timeCol string + keyCols []string + }{ + { + db: "test", + tbl: "t1", + def: "(a int)", + }, + { + db: "test", + tbl: "ttl1", + def: "(a int, t datetime) ttl = `t` + interval 2 hour", + timeCol: "t", + keyCols: []string{"_tidb_rowid"}, + }, + { + db: "test", + tbl: "ttl2", + def: "(id int primary key, t datetime) ttl = `t` + interval 3 hour", + timeCol: "t", + keyCols: []string{"id"}, + }, + { + db: "test", + tbl: "ttl3", + def: "(a int, b varchar(32), c binary(32), t datetime, primary key (a, b, c)) ttl = `t` + interval 1 month", + timeCol: "t", + keyCols: []string{"a", "b", "c"}, + }, + { + db: "test", + tbl: "ttl4", + def: "(id int primary key, t datetime) " + + "ttl = `t` + interval 1 day " + + "PARTITION BY RANGE (id) (" + + " PARTITION p0 VALUES LESS THAN (10)," + + " PARTITION p1 VALUES LESS THAN (100)," + + " PARTITION p2 VALUES LESS THAN (1000)," + + " PARTITION p3 VALUES LESS THAN MAXVALUE)", + timeCol: "t", + keyCols: []string{"id"}, + }, + { + db: "test", + tbl: "ttl5", + def: "(id int primary key nonclustered, t datetime) ttl = `t` + interval 3 hour", + timeCol: "t", + keyCols: []string{"_tidb_rowid"}, + }, + } + + store, do := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + + for _, c := range cases { + tk.MustExec("use " + c.db) + tk.MustExec("create table " + c.tbl + c.def) + } + + for _, c := range cases { + is := do.InfoSchema() + tbl, err := is.TableByName(model.NewCIStr(c.db), model.NewCIStr(c.tbl)) + require.NoError(t, err) + tblInfo := tbl.Meta() + var physicalTbls []*cache.PhysicalTable + if tblInfo.Partition == nil { + ttlTbl, err := cache.NewPhysicalTable(model.NewCIStr(c.db), tblInfo, model.NewCIStr("")) + if c.timeCol == "" { + require.Error(t, err) + continue + } + require.NoError(t, err) + physicalTbls = append(physicalTbls, ttlTbl) + } else { + for _, partition := range tblInfo.Partition.Definitions { + ttlTbl, err := cache.NewPhysicalTable(model.NewCIStr(c.db), tblInfo, partition.Name) + if c.timeCol == "" { + require.Error(t, err) + continue + } + require.NoError(t, err) + physicalTbls = append(physicalTbls, ttlTbl) + } + if c.timeCol == "" { + continue + } + } + + for i, ttlTbl := range physicalTbls { + require.Equal(t, c.db, ttlTbl.Schema.O) + require.Same(t, tblInfo, ttlTbl.TableInfo) + timeColumn := tblInfo.FindPublicColumnByName(c.timeCol) + require.NotNil(t, timeColumn) + require.Same(t, timeColumn, ttlTbl.TimeColumn) + + if tblInfo.Partition == nil { + require.Equal(t, ttlTbl.TableInfo.ID, ttlTbl.ID) + require.Equal(t, "", ttlTbl.Partition.L) + require.Nil(t, ttlTbl.PartitionDef) + } else { + def := tblInfo.Partition.Definitions[i] + require.Equal(t, def.ID, ttlTbl.ID) + require.Equal(t, def.Name.L, ttlTbl.Partition.L) + require.Equal(t, def, *(ttlTbl.PartitionDef)) + } + + require.Equal(t, len(c.keyCols), len(ttlTbl.KeyColumns)) + require.Equal(t, len(c.keyCols), len(ttlTbl.KeyColumnTypes)) + + for j, keyCol := range c.keyCols { + msg := fmt.Sprintf("%s, col: %s", c.tbl, keyCol) + var col *model.ColumnInfo + if keyCol == model.ExtraHandleName.L { + col = model.NewExtraHandleColInfo() + } else { + col = tblInfo.FindPublicColumnByName(keyCol) + } + colJ := ttlTbl.KeyColumns[j] + colFieldJ := ttlTbl.KeyColumnTypes[j] + + require.NotNil(t, col, msg) + require.Equal(t, col.ID, colJ.ID, msg) + require.Equal(t, col.Name.L, colJ.Name.L, msg) + require.Equal(t, col.FieldType, colJ.FieldType, msg) + require.Equal(t, col.FieldType, *colFieldJ, msg) + } + } + } +} + +func TestEvalTTLExpireTime(t *testing.T) { + parser.TTLFeatureGate = true + + store, do := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("create table test.t(a int, t datetime) ttl = `t` + interval 1 day") + tk.MustExec("create table test.t2(a int, t datetime) ttl = `t` + interval 3 month") + + tb, err := do.InfoSchema().TableByName(model.NewCIStr("test"), model.NewCIStr("t")) + require.NoError(t, err) + tblInfo := tb.Meta() + ttlTbl, err := cache.NewPhysicalTable(model.NewCIStr("test"), tblInfo, model.NewCIStr("")) + require.NoError(t, err) + + tb2, err := do.InfoSchema().TableByName(model.NewCIStr("test"), model.NewCIStr("t2")) + require.NoError(t, err) + tblInfo2 := tb2.Meta() + ttlTbl2, err := cache.NewPhysicalTable(model.NewCIStr("test"), tblInfo2, model.NewCIStr("")) + require.NoError(t, err) + + se := session.NewSession(tk.Session(), tk.Session(), nil) + + now := time.UnixMilli(0) + tz1, err := time.LoadLocation("Asia/Shanghai") + require.NoError(t, err) + tz2, err := time.LoadLocation("Europe/Berlin") + require.NoError(t, err) + + se.GetSessionVars().TimeZone = tz1 + tm, err := ttlTbl.EvalExpireTime(context.TODO(), se, now) + require.NoError(t, err) + require.Equal(t, now.Add(-time.Hour*24).Unix(), tm.Unix()) + require.Equal(t, "1969-12-31 08:00:00", tm.Format("2006-01-02 15:04:05")) + require.Equal(t, tz1.String(), tm.Location().String()) + + se.GetSessionVars().TimeZone = tz2 + tm, err = ttlTbl.EvalExpireTime(context.TODO(), se, now) + require.NoError(t, err) + require.Equal(t, now.Add(-time.Hour*24).Unix(), tm.Unix()) + require.Equal(t, "1969-12-31 01:00:00", tm.Format("2006-01-02 15:04:05")) + require.Equal(t, tz2.String(), tm.Location().String()) + + se.GetSessionVars().TimeZone = tz1 + tm, err = ttlTbl2.EvalExpireTime(context.TODO(), se, now) + require.NoError(t, err) + require.Equal(t, "1969-10-01 08:00:00", tm.Format("2006-01-02 15:04:05")) + require.Equal(t, tz1.String(), tm.Location().String()) + + se.GetSessionVars().TimeZone = tz2 + tm, err = ttlTbl2.EvalExpireTime(context.TODO(), se, now) + require.NoError(t, err) + require.Equal(t, "1969-10-01 01:00:00", tm.Format("2006-01-02 15:04:05")) + require.Equal(t, tz2.String(), tm.Location().String()) +} diff --git a/ttl/cache/ttlstatus.go b/ttl/cache/ttlstatus.go new file mode 100644 index 0000000000000..5222ba3025433 --- /dev/null +++ b/ttl/cache/ttlstatus.go @@ -0,0 +1,186 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache + +import ( + "context" + "time" + + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/ttl/session" + "github.com/pingcap/tidb/util/chunk" +) + +// JobStatus represents the current status of a job +type JobStatus string + +const ( + // JobStatusWaiting means the job hasn't started + JobStatusWaiting JobStatus = "waiting" + // JobStatusRunning means this job is running + JobStatusRunning = "running" + // JobStatusCancelling means this job is being canceled, but not canceled yet + JobStatusCancelling = "cancelling" + // JobStatusCancelled means this job has been canceled successfully + JobStatusCancelled = "cancelled" + // JobStatusError means this job is in error status + JobStatusError = "error" +) + +const selectFromTTLTableStatus = "SELECT table_id,parent_table_id,table_statistics,last_job_id,last_job_start_time,last_job_finish_time,last_job_ttl_expire,last_job_summary,current_job_id,current_job_owner_id,current_job_owner_addr,current_job_owner_hb_time,current_job_start_time,current_job_ttl_expire,current_job_state,current_job_status,current_job_status_update_time FROM mysql.tidb_ttl_table_status" + +// TableStatus contains the corresponding information in the system table `mysql.tidb_ttl_table_status` +type TableStatus struct { + TableID int64 + ParentTableID int64 + + TableStatistics string + + LastJobID string + LastJobStartTime time.Time + LastJobFinishTime time.Time + LastJobTTLExpire time.Time + LastJobSummary string + + CurrentJobID string + CurrentJobOwnerID string + CurrentJobOwnerAddr string + CurrentJobOwnerHBTime time.Time + CurrentJobStartTime time.Time + CurrentJobTTLExpire time.Time + + CurrentJobState string + CurrentJobStatus JobStatus + CurrentJobStatusUpdateTime time.Time +} + +// TableStatusCache is the cache for ttl table status, it builds a map from physical table id to the table status +type TableStatusCache struct { + baseCache + + Tables map[int64]*TableStatus +} + +// NewTableStatusCache creates cache for ttl table status +func NewTableStatusCache(updateInterval time.Duration) *TableStatusCache { + return &TableStatusCache{ + baseCache: newBaseCache(updateInterval), + } +} + +// Update updates the table status cache +func (tsc *TableStatusCache) Update(ctx context.Context, se session.Session) error { + rows, err := se.ExecuteSQL(ctx, selectFromTTLTableStatus) + if err != nil { + return err + } + + newTables := make(map[int64]*TableStatus, len(rows)) + for _, row := range rows { + status, err := rowToTableStatus(se, row) + if err != nil { + return err + } + + newTables[status.TableID] = status + } + tsc.Tables = newTables + tsc.updateTime = time.Now() + return nil +} + +func rowToTableStatus(sctx sessionctx.Context, row chunk.Row) (*TableStatus, error) { + var err error + timeZone := sctx.GetSessionVars().TimeZone + + status := &TableStatus{ + TableID: row.GetInt64(0), + } + if !row.IsNull(1) { + status.ParentTableID = row.GetInt64(1) + } + if !row.IsNull(2) { + status.TableStatistics = row.GetString(2) + } + if !row.IsNull(3) { + status.LastJobID = row.GetString(3) + } + if !row.IsNull(4) { + status.LastJobStartTime, err = row.GetTime(4).GoTime(timeZone) + if err != nil { + return nil, err + } + } + if !row.IsNull(5) { + status.LastJobFinishTime, err = row.GetTime(5).GoTime(timeZone) + if err != nil { + return nil, err + } + } + if !row.IsNull(6) { + status.LastJobTTLExpire, err = row.GetTime(6).GoTime(timeZone) + if err != nil { + return nil, err + } + } + if !row.IsNull(7) { + status.LastJobSummary = row.GetString(7) + } + if !row.IsNull(8) { + status.CurrentJobID = row.GetString(8) + } + if !row.IsNull(9) { + status.CurrentJobOwnerID = row.GetString(9) + } + if !row.IsNull(10) { + status.CurrentJobOwnerAddr = row.GetString(10) + } + if !row.IsNull(11) { + status.CurrentJobOwnerHBTime, err = row.GetTime(11).GoTime(timeZone) + if err != nil { + return nil, err + } + } + if !row.IsNull(12) { + status.CurrentJobStartTime, err = row.GetTime(12).GoTime(timeZone) + if err != nil { + return nil, err + } + } + if !row.IsNull(13) { + status.CurrentJobTTLExpire, err = row.GetTime(13).GoTime(timeZone) + if err != nil { + return nil, err + } + } + if !row.IsNull(14) { + status.CurrentJobState = row.GetString(14) + } + if !row.IsNull(15) { + jobStatus := row.GetString(15) + if len(jobStatus) == 0 { + jobStatus = "waiting" + } + status.CurrentJobStatus = JobStatus(jobStatus) + } + if !row.IsNull(16) { + status.CurrentJobStatusUpdateTime, err = row.GetTime(16).GoTime(timeZone) + if err != nil { + return nil, err + } + } + + return status, nil +} diff --git a/ttl/cache/ttlstatus_test.go b/ttl/cache/ttlstatus_test.go new file mode 100644 index 0000000000000..134faf3a201a3 --- /dev/null +++ b/ttl/cache/ttlstatus_test.go @@ -0,0 +1,181 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cache_test + +import ( + "context" + "fmt" + "testing" + "time" + + "github.com/pingcap/tidb/server" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/ttl/session" + "github.com/stretchr/testify/assert" +) + +func TestTTLStatusCache(t *testing.T) { + store, dom := testkit.CreateMockStoreAndDomain(t) + sv := server.CreateMockServer(t, store) + sv.SetDomain(dom) + defer sv.Close() + + conn := server.CreateMockConn(t, sv) + sctx := conn.Context().Session + tk := testkit.NewTestKitWithSession(t, store, sctx) + ttlSession := session.NewSession(sctx, tk.Session(), func() {}) + + isc := cache.NewTableStatusCache(time.Hour) + + // test should update + assert.True(t, isc.ShouldUpdate()) + assert.NoError(t, isc.Update(context.Background(), ttlSession)) + assert.False(t, isc.ShouldUpdate()) + + // test new entries are synced + tk.MustExec("insert into mysql.tidb_ttl_table_status(table_id, parent_table_id) values (1, 2)") + assert.NoError(t, isc.Update(context.Background(), ttlSession)) + assert.Equal(t, 1, len(isc.Tables)) + tk.MustExec("delete from mysql.tidb_ttl_table_status where table_id = 1") + assert.NoError(t, isc.Update(context.Background(), ttlSession)) + assert.Equal(t, 0, len(isc.Tables)) + + timeZone := tk.Session().GetSessionVars().TimeZone + + // test every field of tidb_ttl_table_status can be extracted well + testCases := []struct { + columnName string + sqlLiteral string + assert func(table *cache.TableStatus) + }{ + { + "parent_table_id", + "2", + func(table *cache.TableStatus) { assert.Equal(t, int64(2), table.ParentTableID) }, + }, + { + "table_statistics", + "'test str'", + func(table *cache.TableStatus) { assert.Equal(t, "test str", table.TableStatistics) }, + }, + { + "last_job_id", + "'test job id'", + func(table *cache.TableStatus) { assert.Equal(t, "test job id", table.LastJobID) }, + }, + { + "last_job_start_time", + "'2022-12-01 16:49:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:49:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.LastJobStartTime) + }, + }, + { + "last_job_finish_time", + "'2022-12-01 16:50:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:50:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.LastJobFinishTime) + }, + }, + { + "last_job_ttl_expire", + "'2022-12-01 16:51:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:51:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.LastJobTTLExpire) + }, + }, + { + "last_job_summary", + "'test summary'", + func(table *cache.TableStatus) { assert.Equal(t, "test summary", table.LastJobSummary) }, + }, + { + "current_job_id", + "'test current job id'", + func(table *cache.TableStatus) { assert.Equal(t, "test current job id", table.CurrentJobID) }, + }, + { + "current_job_owner_id", + "'test current job owner id'", + func(table *cache.TableStatus) { assert.Equal(t, "test current job owner id", table.CurrentJobOwnerID) }, + }, + { + "current_job_owner_hb_time", + "'2022-12-01 16:52:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:52:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.CurrentJobOwnerHBTime) + }, + }, + { + "current_job_start_time", + "'2022-12-01 16:53:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:53:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.CurrentJobStartTime) + }, + }, + { + "current_job_ttl_expire", + "'2022-12-01 16:54:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:54:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.CurrentJobTTLExpire) + }, + }, + { + "current_job_state", + "'test state'", + func(table *cache.TableStatus) { assert.Equal(t, "test state", table.CurrentJobState) }, + }, + { + "current_job_status", + "'test status'", + func(table *cache.TableStatus) { + assert.Equal(t, cache.JobStatus("test status"), table.CurrentJobStatus) + }, + }, + { + "current_job_status_update_time", + "'2022-12-01 16:55:01'", + func(table *cache.TableStatus) { + expectedTime, err := time.ParseInLocation("2006-01-02 15:04:05", "2022-12-01 16:55:01", timeZone) + assert.NoError(t, err) + assert.Equal(t, expectedTime, table.CurrentJobStatusUpdateTime) + }, + }, + } + for index, testCase := range testCases { + t.Run(testCase.columnName, func(t *testing.T) { + sql := fmt.Sprintf(`insert into mysql.tidb_ttl_table_status (table_id, %s) values (%d, %s)`, + testCase.columnName, index, testCase.sqlLiteral) + + tk.MustExec(sql) + assert.NoError(t, isc.Update(context.Background(), ttlSession)) + assert.Equal(t, index+1, len(isc.Tables)) + testCase.assert(isc.Tables[int64(index)]) + }) + } +} diff --git a/ttl/session/BUILD.bazel b/ttl/session/BUILD.bazel new file mode 100644 index 0000000000000..6d28bff0730dc --- /dev/null +++ b/ttl/session/BUILD.bazel @@ -0,0 +1,38 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "session", + srcs = ["session.go"], + importpath = "github.com/pingcap/tidb/ttl/session", + visibility = ["//visibility:public"], + deps = [ + "//infoschema", + "//kv", + "//parser/terror", + "//sessionctx", + "//sessionctx/variable", + "//sessiontxn", + "//util/chunk", + "//util/sqlexec", + "@com_github_pingcap_errors//:errors", + ], +) + +go_test( + name = "session_test", + srcs = [ + "main_test.go", + "session_test.go", + "sysvar_test.go", + ], + flaky = True, + deps = [ + ":session", + "//sessionctx/variable", + "//testkit", + "//testkit/testsetup", + "@com_github_pingcap_errors//:errors", + "@com_github_stretchr_testify//require", + "@org_uber_go_goleak//:goleak", + ], +) diff --git a/ttl/session/main_test.go b/ttl/session/main_test.go new file mode 100644 index 0000000000000..330dcd581dbff --- /dev/null +++ b/ttl/session/main_test.go @@ -0,0 +1,33 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package session_test + +import ( + "testing" + + "github.com/pingcap/tidb/testkit/testsetup" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + testsetup.SetupForCommonTest() + opts := []goleak.Option{ + goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), + goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), + goleak.IgnoreTopFunction("go.etcd.io/etcd/client/pkg/v3/logutil.(*MergeLogger).outputLoop"), + goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), + } + goleak.VerifyTestMain(m, opts...) +} diff --git a/ttl/session/session.go b/ttl/session/session.go new file mode 100644 index 0000000000000..ea48bcd1f34dd --- /dev/null +++ b/ttl/session/session.go @@ -0,0 +1,147 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package session + +import ( + "context" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/parser/terror" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/sessiontxn" + "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/sqlexec" +) + +// Session is used to execute queries for TTL case +type Session interface { + sessionctx.Context + // SessionInfoSchema returns information schema of current session + SessionInfoSchema() infoschema.InfoSchema + // ExecuteSQL executes the sql + ExecuteSQL(ctx context.Context, sql string, args ...interface{}) ([]chunk.Row, error) + // RunInTxn executes the specified function in a txn + RunInTxn(ctx context.Context, fn func() error) (err error) + // ResetWithGlobalTimeZone resets the session time zone to global time zone + ResetWithGlobalTimeZone(ctx context.Context) error + // Close closes the session + Close() +} + +type session struct { + sessionctx.Context + sqlExec sqlexec.SQLExecutor + closeFn func() +} + +// NewSession creates a new Session +func NewSession(sctx sessionctx.Context, sqlExec sqlexec.SQLExecutor, closeFn func()) Session { + return &session{ + Context: sctx, + sqlExec: sqlExec, + closeFn: closeFn, + } +} + +// SessionInfoSchema returns information schema of current session +func (s *session) SessionInfoSchema() infoschema.InfoSchema { + if s.Context == nil { + return nil + } + return sessiontxn.GetTxnManager(s.Context).GetTxnInfoSchema() +} + +// ExecuteSQL executes the sql +func (s *session) ExecuteSQL(ctx context.Context, sql string, args ...interface{}) ([]chunk.Row, error) { + if s.sqlExec == nil { + return nil, errors.New("session is closed") + } + + ctx = kv.WithInternalSourceType(ctx, kv.InternalTxnTTL) + rs, err := s.sqlExec.ExecuteInternal(ctx, sql, args...) + if err != nil { + return nil, err + } + + if rs == nil { + return nil, nil + } + + defer func() { + terror.Log(rs.Close()) + }() + + return sqlexec.DrainRecordSet(ctx, rs, 8) +} + +// RunInTxn executes the specified function in a txn +func (s *session) RunInTxn(ctx context.Context, fn func() error) (err error) { + if _, err = s.ExecuteSQL(ctx, "BEGIN"); err != nil { + return err + } + + success := false + defer func() { + if !success { + _, err = s.ExecuteSQL(ctx, "ROLLBACK") + terror.Log(err) + } + }() + + if err = fn(); err != nil { + return err + } + + if _, err = s.ExecuteSQL(ctx, "COMMIT"); err != nil { + return err + } + + success = true + return err +} + +// ResetWithGlobalTimeZone resets the session time zone to global time zone +func (s *session) ResetWithGlobalTimeZone(ctx context.Context) error { + sessVar := s.GetSessionVars() + globalTZ, err := sessVar.GetGlobalSystemVar(ctx, variable.TimeZone) + if err != nil { + return err + } + + tz, err := sessVar.GetSessionOrGlobalSystemVar(ctx, variable.TimeZone) + if err != nil { + return err + } + + if globalTZ == tz { + return nil + } + + _, err = s.ExecuteSQL(ctx, "SET @@time_zone=@@global.time_zone") + return err +} + +// Close closes the session +func (s *session) Close() { + if s.closeFn != nil { + s.closeFn() + s.Context = nil + s.sqlExec = nil + s.closeFn = nil + } +} diff --git a/ttl/session/session_test.go b/ttl/session/session_test.go new file mode 100644 index 0000000000000..a30949206223a --- /dev/null +++ b/ttl/session/session_test.go @@ -0,0 +1,65 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package session_test + +import ( + "context" + "testing" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/ttl/session" + "github.com/stretchr/testify/require" +) + +func TestSessionRunInTxn(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + tk.MustExec("create table t(id int primary key, v int)") + se := session.NewSession(tk.Session(), tk.Session(), nil) + tk2 := testkit.NewTestKit(t, store) + tk2.MustExec("use test") + + require.NoError(t, se.RunInTxn(context.TODO(), func() error { + tk.MustExec("insert into t values (1, 10)") + return nil + })) + tk2.MustQuery("select * from t order by id asc").Check(testkit.Rows("1 10")) + + require.NoError(t, se.RunInTxn(context.TODO(), func() error { + tk.MustExec("insert into t values (2, 20)") + return errors.New("err") + })) + tk2.MustQuery("select * from t order by id asc").Check(testkit.Rows("1 10")) + + require.NoError(t, se.RunInTxn(context.TODO(), func() error { + tk.MustExec("insert into t values (3, 30)") + return nil + })) + tk2.MustQuery("select * from t order by id asc").Check(testkit.Rows("1 10", "3 30")) +} + +func TestSessionResetTimeZone(t *testing.T) { + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.time_zone='UTC'") + tk.MustExec("set @@time_zone='Asia/Shanghai'") + + se := session.NewSession(tk.Session(), tk.Session(), nil) + tk.MustQuery("select @@time_zone").Check(testkit.Rows("Asia/Shanghai")) + require.NoError(t, se.ResetWithGlobalTimeZone(context.TODO())) + tk.MustQuery("select @@time_zone").Check(testkit.Rows("UTC")) +} diff --git a/ttl/session/sysvar_test.go b/ttl/session/sysvar_test.go new file mode 100644 index 0000000000000..58f61c3cc88bb --- /dev/null +++ b/ttl/session/sysvar_test.go @@ -0,0 +1,125 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package session_test + +import ( + "fmt" + "strconv" + "testing" + + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/testkit" + "github.com/stretchr/testify/require" +) + +func TestSysVarTTLJobEnable(t *testing.T) { + origEnableDDL := variable.EnableTTLJob.Load() + defer func() { + variable.EnableTTLJob.Store(origEnableDDL) + }() + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_ttl_job_enable=0") + require.False(t, variable.EnableTTLJob.Load()) + tk.MustQuery("select @@global.tidb_ttl_job_enable").Check(testkit.Rows("0")) + tk.MustQuery("select @@tidb_ttl_job_enable").Check(testkit.Rows("0")) + + tk.MustExec("set @@global.tidb_ttl_job_enable=1") + require.True(t, variable.EnableTTLJob.Load()) + tk.MustQuery("select @@global.tidb_ttl_job_enable").Check(testkit.Rows("1")) + tk.MustQuery("select @@tidb_ttl_job_enable").Check(testkit.Rows("1")) + + tk.MustExec("set @@global.tidb_ttl_job_enable=0") + require.False(t, variable.EnableTTLJob.Load()) + tk.MustQuery("select @@global.tidb_ttl_job_enable").Check(testkit.Rows("0")) + tk.MustQuery("select @@tidb_ttl_job_enable").Check(testkit.Rows("0")) +} + +func TestSysVarTTLScanBatchSize(t *testing.T) { + origScanBatchSize := variable.TTLScanBatchSize.Load() + defer func() { + variable.TTLScanBatchSize.Store(origScanBatchSize) + }() + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_ttl_scan_batch_size=789") + require.Equal(t, int64(789), variable.TTLScanBatchSize.Load()) + tk.MustQuery("select @@global.tidb_ttl_scan_batch_size").Check(testkit.Rows("789")) + tk.MustQuery("select @@tidb_ttl_scan_batch_size").Check(testkit.Rows("789")) + + tk.MustExec("set @@global.tidb_ttl_scan_batch_size=0") + require.Equal(t, int64(1), variable.TTLScanBatchSize.Load()) + tk.MustQuery("select @@global.tidb_ttl_scan_batch_size").Check(testkit.Rows("1")) + tk.MustQuery("select @@tidb_ttl_scan_batch_size").Check(testkit.Rows("1")) + + maxVal := int64(variable.DefTiDBTTLScanBatchMaxSize) + tk.MustExec(fmt.Sprintf("set @@global.tidb_ttl_scan_batch_size=%d", maxVal+1)) + require.Equal(t, maxVal, variable.TTLScanBatchSize.Load()) + tk.MustQuery("select @@global.tidb_ttl_scan_batch_size").Check(testkit.Rows(strconv.FormatInt(maxVal, 10))) + tk.MustQuery("select @@tidb_ttl_scan_batch_size").Check(testkit.Rows(strconv.FormatInt(maxVal, 10))) +} + +func TestSysVarTTLScanDeleteBatchSize(t *testing.T) { + origScanBatchSize := variable.TTLScanBatchSize.Load() + defer func() { + variable.TTLScanBatchSize.Store(origScanBatchSize) + }() + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("set @@global.tidb_ttl_delete_batch_size=789") + require.Equal(t, int64(789), variable.TTLDeleteBatchSize.Load()) + tk.MustQuery("select @@global.tidb_ttl_delete_batch_size").Check(testkit.Rows("789")) + tk.MustQuery("select @@tidb_ttl_delete_batch_size").Check(testkit.Rows("789")) + + tk.MustExec("set @@global.tidb_ttl_delete_batch_size=0") + require.Equal(t, int64(1), variable.TTLDeleteBatchSize.Load()) + tk.MustQuery("select @@global.tidb_ttl_delete_batch_size").Check(testkit.Rows("1")) + tk.MustQuery("select @@tidb_ttl_delete_batch_size").Check(testkit.Rows("1")) + + maxVal := int64(variable.DefTiDBTTLDeleteBatchMaxSize) + tk.MustExec(fmt.Sprintf("set @@global.tidb_ttl_delete_batch_size=%d", maxVal+1)) + require.Equal(t, maxVal, variable.TTLDeleteBatchSize.Load()) + tk.MustQuery("select @@global.tidb_ttl_delete_batch_size").Check(testkit.Rows(strconv.FormatInt(maxVal, 10))) + tk.MustQuery("select @@tidb_ttl_delete_batch_size").Check(testkit.Rows(strconv.FormatInt(maxVal, 10))) +} + +func TestSysVarTTLScanDeleteLimit(t *testing.T) { + origDeleteLimit := variable.TTLDeleteRateLimit.Load() + defer func() { + variable.TTLDeleteRateLimit.Store(origDeleteLimit) + }() + + store := testkit.CreateMockStore(t) + tk := testkit.NewTestKit(t, store) + tk.MustQuery("select @@global.tidb_ttl_delete_rate_limit").Check(testkit.Rows("0")) + + tk.MustExec("set @@global.tidb_ttl_delete_rate_limit=100000") + require.Equal(t, int64(100000), variable.TTLDeleteRateLimit.Load()) + tk.MustQuery("select @@global.tidb_ttl_delete_rate_limit").Check(testkit.Rows("100000")) + tk.MustQuery("select @@tidb_ttl_delete_rate_limit").Check(testkit.Rows("100000")) + + tk.MustExec("set @@global.tidb_ttl_delete_rate_limit=0") + require.Equal(t, int64(0), variable.TTLDeleteRateLimit.Load()) + tk.MustQuery("select @@global.tidb_ttl_delete_rate_limit").Check(testkit.Rows("0")) + tk.MustQuery("select @@tidb_ttl_delete_rate_limit").Check(testkit.Rows("0")) + + tk.MustExec("set @@global.tidb_ttl_delete_rate_limit=-1") + require.Equal(t, int64(0), variable.TTLDeleteRateLimit.Load()) + tk.MustQuery("select @@global.tidb_ttl_delete_rate_limit").Check(testkit.Rows("0")) + tk.MustQuery("select @@tidb_ttl_delete_rate_limit").Check(testkit.Rows("0")) +} diff --git a/ttl/sqlbuilder/BUILD.bazel b/ttl/sqlbuilder/BUILD.bazel new file mode 100644 index 0000000000000..95d0371243158 --- /dev/null +++ b/ttl/sqlbuilder/BUILD.bazel @@ -0,0 +1,42 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "sqlbuilder", + srcs = ["sql.go"], + importpath = "github.com/pingcap/tidb/ttl/sqlbuilder", + visibility = ["//visibility:public"], + deps = [ + "//parser/ast", + "//parser/format", + "//parser/model", + "//parser/mysql", + "//ttl/cache", + "//types", + "//util/sqlexec", + "@com_github_pkg_errors//:errors", + ], +) + +go_test( + name = "sqlbuilder_test", + srcs = [ + "main_test.go", + "sql_test.go", + ], + flaky = True, + deps = [ + ":sqlbuilder", + "//kv", + "//parser", + "//parser/ast", + "//parser/model", + "//parser/mysql", + "//testkit", + "//testkit/testsetup", + "//ttl/cache", + "//types", + "//util/sqlexec", + "@com_github_stretchr_testify//require", + "@org_uber_go_goleak//:goleak", + ], +) diff --git a/ttl/sqlbuilder/main_test.go b/ttl/sqlbuilder/main_test.go new file mode 100644 index 0000000000000..76cecabaf752c --- /dev/null +++ b/ttl/sqlbuilder/main_test.go @@ -0,0 +1,33 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package sqlbuilder_test + +import ( + "testing" + + "github.com/pingcap/tidb/testkit/testsetup" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + testsetup.SetupForCommonTest() + opts := []goleak.Option{ + goleak.IgnoreTopFunction("github.com/golang/glog.(*loggingT).flushDaemon"), + goleak.IgnoreTopFunction("github.com/lestrrat-go/httprc.runFetchWorker"), + goleak.IgnoreTopFunction("go.etcd.io/etcd/client/pkg/v3/logutil.(*MergeLogger).outputLoop"), + goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), + } + goleak.VerifyTestMain(m, opts...) +} diff --git a/ttl/sqlbuilder/sql.go b/ttl/sqlbuilder/sql.go new file mode 100644 index 0000000000000..4a27323da19a4 --- /dev/null +++ b/ttl/sqlbuilder/sql.go @@ -0,0 +1,473 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package sqlbuilder + +import ( + "encoding/hex" + "fmt" + "io" + "strconv" + "strings" + "time" + + "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/format" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/parser/mysql" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/sqlexec" + "github.com/pkg/errors" +) + +const dateTimeFormat = "2006-01-02 15:04:05.999999" + +func writeHex(in io.Writer, d types.Datum) error { + _, err := fmt.Fprintf(in, "x'%s'", hex.EncodeToString(d.GetBytes())) + return err +} + +func writeDatum(restoreCtx *format.RestoreCtx, d types.Datum, ft *types.FieldType) error { + switch d.Kind() { + case types.KindString, types.KindBytes, types.KindBinaryLiteral: + if mysql.HasBinaryFlag(ft.GetFlag()) { + return writeHex(restoreCtx.In, d) + } + _, err := fmt.Fprintf(restoreCtx.In, "'%s'", sqlexec.EscapeString(d.GetString())) + return err + } + expr := ast.NewValueExpr(d.GetValue(), ft.GetCharset(), ft.GetCollate()) + return expr.Restore(restoreCtx) +} + +// FormatSQLDatum formats the datum to a value string in sql +func FormatSQLDatum(d types.Datum, ft *types.FieldType) (string, error) { + var sb strings.Builder + ctx := format.NewRestoreCtx(format.DefaultRestoreFlags, &sb) + if err := writeDatum(ctx, d, ft); err != nil { + return "", err + } + return sb.String(), nil +} + +type sqlBuilderState int + +const ( + writeBegin sqlBuilderState = iota + writeSelOrDel + writeWhere + writeOrderBy + writeLimit + writeDone +) + +// SQLBuilder is used to build SQLs for TTL +type SQLBuilder struct { + tbl *cache.PhysicalTable + sb strings.Builder + restoreCtx *format.RestoreCtx + state sqlBuilderState + + isReadOnly bool + hasWriteExpireCond bool +} + +// NewSQLBuilder creates a new TTLSQLBuilder +func NewSQLBuilder(tbl *cache.PhysicalTable) *SQLBuilder { + b := &SQLBuilder{tbl: tbl, state: writeBegin} + b.restoreCtx = format.NewRestoreCtx(format.DefaultRestoreFlags, &b.sb) + return b +} + +// Build builds the final sql +func (b *SQLBuilder) Build() (string, error) { + if b.state == writeBegin { + return "", errors.Errorf("invalid state: %v", b.state) + } + + if !b.isReadOnly && !b.hasWriteExpireCond { + // check whether the `timeRow < expire_time` condition has been written to make sure this SQL is safe. + return "", errors.New("expire condition not write") + } + + if b.state != writeDone { + b.state = writeDone + } + + return b.sb.String(), nil +} + +// WriteSelect writes a select statement to select key columns without any condition +func (b *SQLBuilder) WriteSelect() error { + if b.state != writeBegin { + return errors.Errorf("invalid state: %v", b.state) + } + b.restoreCtx.WritePlain("SELECT LOW_PRIORITY ") + b.writeColNames(b.tbl.KeyColumns, false) + b.restoreCtx.WritePlain(" FROM ") + if err := b.writeTblName(); err != nil { + return err + } + if par := b.tbl.PartitionDef; par != nil { + b.restoreCtx.WritePlain(" PARTITION(") + b.restoreCtx.WriteName(par.Name.O) + b.restoreCtx.WritePlain(")") + } + b.state = writeSelOrDel + b.isReadOnly = true + return nil +} + +// WriteDelete writes a delete statement without any condition +func (b *SQLBuilder) WriteDelete() error { + if b.state != writeBegin { + return errors.Errorf("invalid state: %v", b.state) + } + b.restoreCtx.WritePlain("DELETE LOW_PRIORITY FROM ") + if err := b.writeTblName(); err != nil { + return err + } + if par := b.tbl.PartitionDef; par != nil { + b.restoreCtx.WritePlain(" PARTITION(") + b.restoreCtx.WriteName(par.Name.O) + b.restoreCtx.WritePlain(")") + } + b.state = writeSelOrDel + return nil +} + +// WriteCommonCondition writes a new condition +func (b *SQLBuilder) WriteCommonCondition(cols []*model.ColumnInfo, op string, dp []types.Datum) error { + switch b.state { + case writeSelOrDel: + b.restoreCtx.WritePlain(" WHERE ") + b.state = writeWhere + case writeWhere: + b.restoreCtx.WritePlain(" AND ") + default: + return errors.Errorf("invalid state: %v", b.state) + } + + b.writeColNames(cols, len(cols) > 1) + b.restoreCtx.WritePlain(" ") + b.restoreCtx.WritePlain(op) + b.restoreCtx.WritePlain(" ") + return b.writeDataPoint(cols, dp) +} + +// WriteExpireCondition writes a condition with the time column +func (b *SQLBuilder) WriteExpireCondition(expire time.Time) error { + switch b.state { + case writeSelOrDel: + b.restoreCtx.WritePlain(" WHERE ") + b.state = writeWhere + case writeWhere: + b.restoreCtx.WritePlain(" AND ") + default: + return errors.Errorf("invalid state: %v", b.state) + } + + b.writeColNames([]*model.ColumnInfo{b.tbl.TimeColumn}, false) + b.restoreCtx.WritePlain(" < ") + b.restoreCtx.WritePlain("'") + b.restoreCtx.WritePlain(expire.Format(dateTimeFormat)) + b.restoreCtx.WritePlain("'") + b.hasWriteExpireCond = true + return nil +} + +// WriteInCondition writes an IN condition +func (b *SQLBuilder) WriteInCondition(cols []*model.ColumnInfo, dps ...[]types.Datum) error { + switch b.state { + case writeSelOrDel: + b.restoreCtx.WritePlain(" WHERE ") + b.state = writeWhere + case writeWhere: + b.restoreCtx.WritePlain(" AND ") + default: + return errors.Errorf("invalid state: %v", b.state) + } + + b.writeColNames(cols, len(cols) > 1) + b.restoreCtx.WritePlain(" IN ") + b.restoreCtx.WritePlain("(") + first := true + for _, v := range dps { + if first { + first = false + } else { + b.restoreCtx.WritePlain(", ") + } + if err := b.writeDataPoint(cols, v); err != nil { + return err + } + } + b.restoreCtx.WritePlain(")") + return nil +} + +// WriteOrderBy writes order by +func (b *SQLBuilder) WriteOrderBy(cols []*model.ColumnInfo, desc bool) error { + if b.state != writeSelOrDel && b.state != writeWhere { + return errors.Errorf("invalid state: %v", b.state) + } + b.state = writeOrderBy + b.restoreCtx.WritePlain(" ORDER BY ") + b.writeColNames(cols, false) + if desc { + b.restoreCtx.WritePlain(" DESC") + } else { + b.restoreCtx.WritePlain(" ASC") + } + return nil +} + +// WriteLimit writes the limit +func (b *SQLBuilder) WriteLimit(n int) error { + if b.state != writeSelOrDel && b.state != writeWhere && b.state != writeOrderBy { + return errors.Errorf("invalid state: %v", b.state) + } + b.state = writeLimit + b.restoreCtx.WritePlain(" LIMIT ") + b.restoreCtx.WritePlain(strconv.Itoa(n)) + return nil +} + +func (b *SQLBuilder) writeTblName() error { + tn := ast.TableName{Schema: b.tbl.Schema, Name: b.tbl.Name} + return tn.Restore(b.restoreCtx) +} + +func (b *SQLBuilder) writeColName(col *model.ColumnInfo) { + b.restoreCtx.WriteName(col.Name.O) +} + +func (b *SQLBuilder) writeColNames(cols []*model.ColumnInfo, writeBrackets bool) { + if writeBrackets { + b.restoreCtx.WritePlain("(") + } + + first := true + for _, col := range cols { + if first { + first = false + } else { + b.restoreCtx.WritePlain(", ") + } + b.writeColName(col) + } + + if writeBrackets { + b.restoreCtx.WritePlain(")") + } +} + +func (b *SQLBuilder) writeDataPoint(cols []*model.ColumnInfo, dp []types.Datum) error { + writeBrackets := len(cols) > 1 + if len(cols) != len(dp) { + return errors.Errorf("col count not match %d != %d", len(cols), len(dp)) + } + + if writeBrackets { + b.restoreCtx.WritePlain("(") + } + + first := true + for i, d := range dp { + if first { + first = false + } else { + b.restoreCtx.WritePlain(", ") + } + if err := writeDatum(b.restoreCtx, d, &cols[i].FieldType); err != nil { + return err + } + } + + if writeBrackets { + b.restoreCtx.WritePlain(")") + } + + return nil +} + +// ScanQueryGenerator generates SQLs for scan task +type ScanQueryGenerator struct { + tbl *cache.PhysicalTable + expire time.Time + keyRangeStart []types.Datum + keyRangeEnd []types.Datum + stack [][]types.Datum + limit int + exhausted bool +} + +// NewScanQueryGenerator creates a new ScanQueryGenerator +func NewScanQueryGenerator(tbl *cache.PhysicalTable, expire time.Time, rangeStart []types.Datum, rangeEnd []types.Datum) (*ScanQueryGenerator, error) { + if len(rangeStart) > 0 { + if err := tbl.ValidateKey(rangeStart); err != nil { + return nil, err + } + } + + if len(rangeEnd) > 0 { + if err := tbl.ValidateKey(rangeEnd); err != nil { + return nil, err + } + } + + return &ScanQueryGenerator{ + tbl: tbl, + expire: expire, + keyRangeStart: rangeStart, + keyRangeEnd: rangeEnd, + }, nil +} + +// NextSQL creates next sql of the scan task +func (g *ScanQueryGenerator) NextSQL(continueFromResult [][]types.Datum, nextLimit int) (string, error) { + if g.exhausted { + return "", errors.New("generator is exhausted") + } + + if nextLimit <= 0 { + return "", errors.Errorf("invalid limit '%d'", nextLimit) + } + + if g.stack == nil { + g.stack = make([][]types.Datum, 0, len(g.tbl.KeyColumns)) + } + + if len(continueFromResult) >= g.limit { + var continueFromKey []types.Datum + if cnt := len(continueFromResult); cnt > 0 { + continueFromKey = continueFromResult[cnt-1] + } + if err := g.setStack(continueFromKey); err != nil { + return "", err + } + } else { + if l := len(g.stack); l > 0 { + g.stack = g.stack[:l-1] + } + if len(g.stack) == 0 { + g.exhausted = true + } + } + g.limit = nextLimit + return g.buildSQL() +} + +// IsExhausted returns whether the generator is exhausted +func (g *ScanQueryGenerator) IsExhausted() bool { + return g.exhausted +} + +func (g *ScanQueryGenerator) setStack(key []types.Datum) error { + if key == nil { + key = g.keyRangeStart + } + + if key == nil { + g.stack = g.stack[:0] + return nil + } + + if err := g.tbl.ValidateKey(key); err != nil { + return err + } + + g.stack = g.stack[:cap(g.stack)] + for i := 0; i < len(key); i++ { + g.stack[i] = key[0 : i+1] + } + return nil +} + +func (g *ScanQueryGenerator) buildSQL() (string, error) { + if g.limit <= 0 { + return "", errors.Errorf("invalid limit '%d'", g.limit) + } + + if g.exhausted { + return "", nil + } + + b := NewSQLBuilder(g.tbl) + if err := b.WriteSelect(); err != nil { + return "", err + } + if len(g.stack) > 0 { + for i, d := range g.stack[len(g.stack)-1] { + col := []*model.ColumnInfo{g.tbl.KeyColumns[i]} + val := []types.Datum{d} + var err error + if i < len(g.stack)-1 { + err = b.WriteCommonCondition(col, "=", val) + } else { + err = b.WriteCommonCondition(col, ">", val) + } + if err != nil { + return "", err + } + } + } + + if len(g.keyRangeEnd) > 0 { + if err := b.WriteCommonCondition(g.tbl.KeyColumns, "<=", g.keyRangeEnd); err != nil { + return "", err + } + } + + if err := b.WriteExpireCondition(g.expire); err != nil { + return "", err + } + + if err := b.WriteOrderBy(g.tbl.KeyColumns, false); err != nil { + return "", err + } + + if err := b.WriteLimit(g.limit); err != nil { + return "", err + } + + return b.Build() +} + +// BuildDeleteSQL builds a delete SQL +func BuildDeleteSQL(tbl *cache.PhysicalTable, rows [][]types.Datum, expire time.Time) (string, error) { + if len(rows) == 0 { + return "", errors.New("Cannot build delete SQL with empty rows") + } + + b := NewSQLBuilder(tbl) + if err := b.WriteDelete(); err != nil { + return "", err + } + + if err := b.WriteInCondition(tbl.KeyColumns, rows...); err != nil { + return "", err + } + + if err := b.WriteExpireCondition(expire); err != nil { + return "", err + } + + if err := b.WriteLimit(len(rows)); err != nil { + return "", err + } + + return b.Build() +} diff --git a/ttl/sqlbuilder/sql_test.go b/ttl/sqlbuilder/sql_test.go new file mode 100644 index 0000000000000..dd6f58d9046ad --- /dev/null +++ b/ttl/sqlbuilder/sql_test.go @@ -0,0 +1,815 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package sqlbuilder_test + +import ( + "context" + "fmt" + "strings" + "testing" + "time" + + "github.com/pingcap/tidb/kv" + "github.com/pingcap/tidb/parser" + "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/parser/mysql" + "github.com/pingcap/tidb/testkit" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/ttl/sqlbuilder" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/sqlexec" + "github.com/stretchr/testify/require" +) + +func TestEscape(t *testing.T) { + tb := &cache.PhysicalTable{ + Schema: model.NewCIStr("testp;\"';123`456"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("tp\"';123`456"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("col1\"';123`456"), FieldType: *types.NewFieldType(mysql.TypeString)}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time\"';123`456"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + PartitionDef: &model.PartitionDefinition{ + Name: model.NewCIStr("p1\"';123`456"), + }, + } + + buildSelect := func(d []types.Datum) string { + b := sqlbuilder.NewSQLBuilder(tb) + require.NoError(t, b.WriteSelect()) + require.NoError(t, b.WriteCommonCondition(tb.KeyColumns, ">", d)) + require.NoError(t, b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + s, err := b.Build() + require.NoError(t, err) + return s + } + + buildDelete := func(ds ...[]types.Datum) string { + b := sqlbuilder.NewSQLBuilder(tb) + require.NoError(t, b.WriteDelete()) + require.NoError(t, b.WriteInCondition(tb.KeyColumns, ds...)) + require.NoError(t, b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + s, err := b.Build() + require.NoError(t, err) + return s + } + + cases := []struct { + tp string + ds [][]types.Datum + sql string + }{ + { + tp: "select", + ds: [][]types.Datum{d("key1'\";123`456")}, + sql: "SELECT LOW_PRIORITY `col1\"';123``456` FROM `testp;\"';123``456`.`tp\"';123``456` PARTITION(`p1\"';123``456`) WHERE `col1\"';123``456` > 'key1\\'\\\";123`456' AND `time\"';123``456` < '1970-01-01 00:00:00'", + }, + { + tp: "delete", + ds: [][]types.Datum{d("key2'\";123`456")}, + sql: "DELETE LOW_PRIORITY FROM `testp;\"';123``456`.`tp\"';123``456` PARTITION(`p1\"';123``456`) WHERE `col1\"';123``456` IN ('key2\\'\\\";123`456') AND `time\"';123``456` < '1970-01-01 00:00:00'", + }, + { + tp: "delete", + ds: [][]types.Datum{d("key3'\";123`456"), d("key4'`\"")}, + sql: "DELETE LOW_PRIORITY FROM `testp;\"';123``456`.`tp\"';123``456` PARTITION(`p1\"';123``456`) WHERE `col1\"';123``456` IN ('key3\\'\\\";123`456', 'key4\\'`\\\"') AND `time\"';123``456` < '1970-01-01 00:00:00'", + }, + } + + for _, c := range cases { + switch c.tp { + case "select": + require.Equal(t, 1, len(c.ds)) + require.Equal(t, c.sql, buildSelect(c.ds[0])) + case "delete": + require.Equal(t, c.sql, buildDelete(c.ds...)) + default: + require.FailNow(t, "invalid tp: %s", c.tp) + } + + p := parser.New() + stmts, _, err := p.Parse(c.sql, "", "") + require.Equal(t, 1, len(stmts)) + require.NoError(t, err) + + var tbName *ast.TableName + var keyColumnName, timeColumnName string + var values []string + var timeString string + switch c.tp { + case "select": + stmt, ok := stmts[0].(*ast.SelectStmt) + require.True(t, ok) + tbName = stmt.From.TableRefs.Left.(*ast.TableSource).Source.(*ast.TableName) + and := stmt.Where.(*ast.BinaryOperationExpr) + cond1 := and.L.(*ast.BinaryOperationExpr) + keyColumnName = cond1.L.(*ast.ColumnNameExpr).Name.Name.O + values = []string{cond1.R.(ast.ValueExpr).GetValue().(string)} + cond2 := and.R.(*ast.BinaryOperationExpr) + timeColumnName = cond2.L.(*ast.ColumnNameExpr).Name.Name.O + timeString = cond2.R.(ast.ValueExpr).GetValue().(string) + case "delete": + stmt, ok := stmts[0].(*ast.DeleteStmt) + require.True(t, ok) + tbName = stmt.TableRefs.TableRefs.Left.(*ast.TableSource).Source.(*ast.TableName) + and := stmt.Where.(*ast.BinaryOperationExpr) + cond1 := and.L.(*ast.PatternInExpr) + keyColumnName = cond1.Expr.(*ast.ColumnNameExpr).Name.Name.O + require.Equal(t, len(c.ds), len(cond1.List)) + values = make([]string, 0, len(c.ds)) + for _, expr := range cond1.List { + values = append(values, expr.(ast.ValueExpr).GetValue().(string)) + } + cond2 := and.R.(*ast.BinaryOperationExpr) + timeColumnName = cond2.L.(*ast.ColumnNameExpr).Name.Name.O + timeString = cond2.R.(ast.ValueExpr).GetValue().(string) + default: + require.FailNow(t, "invalid tp: %s", c.tp) + } + + require.Equal(t, tb.Schema.O, tbName.Schema.O) + require.Equal(t, tb.Name.O, tbName.Name.O) + require.Equal(t, 1, len(tbName.PartitionNames)) + require.Equal(t, tb.PartitionDef.Name.O, tbName.PartitionNames[0].O) + require.Equal(t, tb.KeyColumns[0].Name.O, keyColumnName) + require.Equal(t, tb.TimeColumn.Name.O, timeColumnName) + for i, row := range c.ds { + require.Equal(t, row[0].GetString(), values[i]) + } + require.Equal(t, "1970-01-01 00:00:00", timeString) + } +} + +func TestFormatSQLDatum(t *testing.T) { + cases := []struct { + ft string + values []interface{} + hex bool + notSupport bool + }{ + { + ft: "int", + values: []interface{}{1, 2, 3, -12}, + }, + { + ft: "decimal(5, 2)", + values: []interface{}{"0.3", "128.71", "-245.32"}, + }, + { + ft: "varchar(32) CHARACTER SET latin1", + values: []interface{}{ + "aa';delete from t where 1;", + string([]byte{0xf1, 0xf2}), + string([]byte{0xf1, 0xf2, 0xf3, 0xf4}), + }, + }, + { + ft: "char(32) CHARACTER SET utf8mb4", + values: []interface{}{ + "demo", + "\n123", + "aa';delete from t where 1;", + "你好👋", + }, + }, + { + ft: "varchar(32) CHARACTER SET utf8mb4", + values: []interface{}{ + "demo", + "aa';delete from t where 1;", + "你好👋", + }, + }, + { + ft: "varchar(32) CHARACTER SET binary", + values: []interface{}{ + string([]byte{0xf1, 0xf2, 0xf3, 0xf4}), + "你好👋", + "abcdef", + }, + hex: true, + }, + { + ft: "binary(8)", + values: []interface{}{ + string([]byte{0xf1, 0xf2}), + string([]byte{0xf1, 0xf2, 0xf3, 0xf4}), + }, + hex: true, + }, + { + ft: "blob", + values: []interface{}{ + string([]byte{0xf1, 0xf2}), + string([]byte{0xf1, 0xf2, 0xf3, 0xf4}), + }, + hex: true, + }, + { + ft: "bit(1)", + values: []interface{}{0, 1}, + hex: true, + }, + { + ft: "date", + values: []interface{}{"2022-01-02", "1900-12-31"}, + }, + { + ft: "time", + values: []interface{}{"00:00", "01:23", "13:51:22"}, + }, + { + ft: "datetime", + values: []interface{}{"2022-01-02 12:11:11", "2022-01-02"}, + }, + { + ft: "timestamp", + values: []interface{}{"2022-01-02 12:11:11", "2022-01-02"}, + }, + { + ft: "json", + values: []interface{}{"{}"}, + notSupport: true, + }, + } + + store, do := testkit.CreateMockStoreAndDomain(t) + tk := testkit.NewTestKit(t, store) + tk.MustExec("use test") + + // create a table with n columns + var sb strings.Builder + sb.WriteString("CREATE TABLE t (id varchar(32) primary key") + for i, c := range cases { + _, err := fmt.Fprintf(&sb, ",\n col%d %s DEFAULT NULL", i, c.ft) + require.NoError(t, err) + } + sb.WriteString("\n);") + tk.MustExec(sb.String()) + + tbl, err := do.InfoSchema().TableByName(model.NewCIStr("test"), model.NewCIStr("t")) + require.NoError(t, err) + + for i, c := range cases { + for j, v := range c.values { + tk.MustExec(fmt.Sprintf("insert into t (id, col%d) values ('%d-%d', ?)", i, i, j), v) + } + } + + ctx := kv.WithInternalSourceType(context.TODO(), kv.InternalTxnOthers) + for i, c := range cases { + for j := range c.values { + rowID := fmt.Sprintf("%d-%d", i, j) + colName := fmt.Sprintf("col%d", i) + exec, ok := tk.Session().(sqlexec.SQLExecutor) + require.True(t, ok) + selectSQL := fmt.Sprintf("select %s from t where id='%s'", colName, rowID) + rs, err := exec.ExecuteInternal(ctx, selectSQL) + require.NoError(t, err, selectSQL) + rows, err := sqlexec.DrainRecordSet(ctx, rs, 1) + require.NoError(t, err, selectSQL) + require.Equal(t, 1, len(rows), selectSQL) + col := tbl.Meta().FindPublicColumnByName(colName) + d := rows[0].GetDatum(0, &col.FieldType) + s, err := sqlbuilder.FormatSQLDatum(d, &col.FieldType) + if c.notSupport { + require.Error(t, err) + } else { + require.NoError(t, err) + //fmt.Printf("%s: %s\n", c.ft, s) + tk.MustQuery("select id from t where " + colName + "=" + s).Check(testkit.Rows(rowID)) + } + if c.hex { + require.True(t, strings.HasPrefix(s, "x'"), s) + } + } + } +} + +func TestSQLBuilder(t *testing.T) { + must := func(err error) { + require.NoError(t, err) + } + + mustBuild := func(b *sqlbuilder.SQLBuilder, str string) { + s, err := b.Build() + require.NoError(t, err) + require.Equal(t, str, s) + } + + var b *sqlbuilder.SQLBuilder + + t1 := &cache.PhysicalTable{ + Schema: model.NewCIStr("test"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("t1"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("id"), FieldType: *types.NewFieldType(mysql.TypeVarchar)}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + } + + t2 := &cache.PhysicalTable{ + Schema: model.NewCIStr("test2"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("t2"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("a"), FieldType: *types.NewFieldType(mysql.TypeVarchar)}, + {Name: model.NewCIStr("b"), FieldType: *types.NewFieldType(mysql.TypeInt24)}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + } + + tp := &cache.PhysicalTable{ + Schema: model.NewCIStr("testp"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("tp"), + }, + KeyColumns: t1.KeyColumns, + TimeColumn: t1.TimeColumn, + PartitionDef: &model.PartitionDefinition{ + Name: model.NewCIStr("p1"), + }, + } + + // test build select queries + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1`") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t1.KeyColumns, ">", d("a1"))) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 'a1'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t1.KeyColumns, ">", d("a1"))) + must(b.WriteCommonCondition(t1.KeyColumns, "<=", d("c3"))) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 'a1' AND `id` <= 'c3'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + shLoc, err := time.LoadLocation("Asia/Shanghai") + require.NoError(t, err) + must(b.WriteExpireCondition(time.UnixMilli(0).In(shLoc))) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `time` < '1970-01-01 08:00:00'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t1.KeyColumns, ">", d("a1"))) + must(b.WriteCommonCondition(t1.KeyColumns, "<=", d("c3"))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 'a1' AND `id` <= 'c3' AND `time` < '1970-01-01 00:00:00'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteOrderBy(t1.KeyColumns, false)) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` ORDER BY `id` ASC") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteOrderBy(t1.KeyColumns, true)) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` ORDER BY `id` DESC") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteOrderBy(t1.KeyColumns, false)) + must(b.WriteLimit(128)) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` ORDER BY `id` ASC LIMIT 128") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t1.KeyColumns, ">", d("';``~?%\"\n"))) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > '\\';``~?%\\\"\\n'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t1.KeyColumns, ">", d("a1';'"))) + must(b.WriteCommonCondition(t1.KeyColumns, "<=", d("a2\""))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + must(b.WriteOrderBy(t1.KeyColumns, false)) + must(b.WriteLimit(128)) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 'a1\\';\\'' AND `id` <= 'a2\\\"' AND `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 128") + + b = sqlbuilder.NewSQLBuilder(t2) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t2.KeyColumns, ">", d("x1", 20))) + mustBuild(b, "SELECT LOW_PRIORITY `a`, `b` FROM `test2`.`t2` WHERE (`a`, `b`) > ('x1', 20)") + + b = sqlbuilder.NewSQLBuilder(t2) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t2.KeyColumns, "<=", d("x2", 21))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + must(b.WriteOrderBy(t2.KeyColumns, false)) + must(b.WriteLimit(100)) + mustBuild(b, "SELECT LOW_PRIORITY `a`, `b` FROM `test2`.`t2` WHERE (`a`, `b`) <= ('x2', 21) AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b` ASC LIMIT 100") + + b = sqlbuilder.NewSQLBuilder(t2) + must(b.WriteSelect()) + must(b.WriteCommonCondition(t2.KeyColumns[0:1], "=", d("x3"))) + must(b.WriteCommonCondition(t2.KeyColumns[1:2], ">", d(31))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + must(b.WriteOrderBy(t2.KeyColumns, false)) + must(b.WriteLimit(100)) + mustBuild(b, "SELECT LOW_PRIORITY `a`, `b` FROM `test2`.`t2` WHERE `a` = 'x3' AND `b` > 31 AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b` ASC LIMIT 100") + + // test build delete queries + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteDelete()) + _, err = b.Build() + require.EqualError(t, err, "expire condition not write") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteDelete()) + must(b.WriteInCondition(t1.KeyColumns, d("a"))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + mustBuild(b, "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE `id` IN ('a') AND `time` < '1970-01-01 00:00:00'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteDelete()) + must(b.WriteInCondition(t1.KeyColumns, d("a"), d("b"))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + mustBuild(b, "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE `id` IN ('a', 'b') AND `time` < '1970-01-01 00:00:00'") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteDelete()) + must(b.WriteInCondition(t2.KeyColumns, d("a", 1))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + must(b.WriteLimit(100)) + mustBuild(b, "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE (`a`, `b`) IN (('a', 1)) AND `time` < '1970-01-01 00:00:00' LIMIT 100") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteDelete()) + must(b.WriteInCondition(t2.KeyColumns, d("a", 1), d("b", 2))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + must(b.WriteLimit(100)) + mustBuild(b, "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE (`a`, `b`) IN (('a', 1), ('b', 2)) AND `time` < '1970-01-01 00:00:00' LIMIT 100") + + b = sqlbuilder.NewSQLBuilder(t1) + must(b.WriteDelete()) + must(b.WriteInCondition(t2.KeyColumns, d("a", 1), d("b", 2))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + mustBuild(b, "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE (`a`, `b`) IN (('a', 1), ('b', 2)) AND `time` < '1970-01-01 00:00:00'") + + // test select partition table + b = sqlbuilder.NewSQLBuilder(tp) + must(b.WriteSelect()) + must(b.WriteCommonCondition(tp.KeyColumns, ">", d("a1"))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + mustBuild(b, "SELECT LOW_PRIORITY `id` FROM `testp`.`tp` PARTITION(`p1`) WHERE `id` > 'a1' AND `time` < '1970-01-01 00:00:00'") + + b = sqlbuilder.NewSQLBuilder(tp) + must(b.WriteDelete()) + must(b.WriteInCondition(tp.KeyColumns, d("a"), d("b"))) + must(b.WriteExpireCondition(time.UnixMilli(0).In(time.UTC))) + mustBuild(b, "DELETE LOW_PRIORITY FROM `testp`.`tp` PARTITION(`p1`) WHERE `id` IN ('a', 'b') AND `time` < '1970-01-01 00:00:00'") +} + +func TestScanQueryGenerator(t *testing.T) { + t1 := &cache.PhysicalTable{ + Schema: model.NewCIStr("test"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("t1"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("id"), FieldType: *types.NewFieldType(mysql.TypeVarchar)}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + } + + t2 := &cache.PhysicalTable{ + Schema: model.NewCIStr("test2"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("t2"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("a"), FieldType: *types.NewFieldType(mysql.TypeVarchar)}, + {Name: model.NewCIStr("b"), FieldType: *types.NewFieldType(mysql.TypeInt24)}, + {Name: model.NewCIStr("c"), FieldType: types.NewFieldTypeBuilder().SetType(mysql.TypeString).SetFlag(mysql.BinaryFlag).Build()}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + } + + result := func(last []types.Datum, n int) [][]types.Datum { + ds := make([][]types.Datum, n) + ds[n-1] = last + return ds + } + + cases := []struct { + tbl *cache.PhysicalTable + expire time.Time + rangeStart []types.Datum + rangeEnd []types.Datum + path [][]interface{} + }{ + { + tbl: t1, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 3, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 3", + }, + { + nil, 5, "", + }, + }, + }, + { + tbl: t1, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 3, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 3", + }, + { + [][]types.Datum{}, 5, "", + }, + }, + }, + { + tbl: t1, + expire: time.UnixMilli(0).In(time.UTC), + rangeStart: d(1), + rangeEnd: d(100), + path: [][]interface{}{ + { + nil, 3, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 1 AND `id` <= 100 AND `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 3", + }, + { + result(d(10), 3), 5, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 10 AND `id` <= 100 AND `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 5", + }, + { + result(d(15), 4), 5, + "", + }, + }, + }, + { + tbl: t1, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 3, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 3", + }, + { + result(d(2), 3), 5, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 2 AND `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 5", + }, + { + result(d(4), 5), 6, + "SELECT LOW_PRIORITY `id` FROM `test`.`t1` WHERE `id` > 4 AND `time` < '1970-01-01 00:00:00' ORDER BY `id` ASC LIMIT 6", + }, + { + result(d(7), 5), 5, "", + }, + }, + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + nil, 5, "", + }, + }, + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + nil, 5, "", + }, + }, + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + [][]types.Datum{}, 5, "", + }, + }, + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + path: [][]interface{}{ + { + nil, 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(1, "x", []byte{0xf0}), 4), 5, "", + }, + }, + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + rangeStart: d(1, "x", []byte{0xe}), + rangeEnd: d(100, "z", []byte{0xff}), + path: [][]interface{}{ + { + nil, 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 1 AND `b` = 'x' AND `c` > x'0e' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(1, "x", []byte{0x1a}), 5), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 1 AND `b` = 'x' AND `c` > x'1a' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(1, "x", []byte{0x20}), 4), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 1 AND `b` > 'x' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(1, "y", []byte{0x0a}), 5), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 1 AND `b` = 'y' AND `c` > x'0a' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(1, "y", []byte{0x11}), 4), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 1 AND `b` > 'y' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(1, "z", []byte{0x02}), 4), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` > 1 AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(3, "a", []byte{0x01}), 5), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 3 AND `b` = 'a' AND `c` > x'01' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(3, "a", []byte{0x11}), 4), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` = 3 AND `b` > 'a' AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(3, "c", []byte{0x12}), 4), 5, + "SELECT LOW_PRIORITY `a`, `b`, `c` FROM `test2`.`t2` WHERE `a` > 3 AND (`a`, `b`, `c`) <= (100, 'z', x'ff') AND `time` < '1970-01-01 00:00:00' ORDER BY `a`, `b`, `c` ASC LIMIT 5", + }, + { + result(d(5, "e", []byte{0xa1}), 4), 5, "", + }, + }, + }, + } + + for i, c := range cases { + g, err := sqlbuilder.NewScanQueryGenerator(c.tbl, c.expire, c.rangeStart, c.rangeEnd) + require.NoError(t, err, fmt.Sprintf("%d", i)) + for j, p := range c.path { + msg := fmt.Sprintf("%d-%d", i, j) + var result [][]types.Datum + require.Equal(t, 3, len(p), msg) + if arg := p[0]; arg != nil { + r, ok := arg.([][]types.Datum) + require.True(t, ok, msg) + result = r + } + limit, ok := p[1].(int) + require.True(t, ok, msg) + sql, ok := p[2].(string) + require.True(t, ok, msg) + s, err := g.NextSQL(result, limit) + require.NoError(t, err, msg) + require.Equal(t, sql, s, msg) + require.Equal(t, s == "", g.IsExhausted(), msg) + } + } +} + +func TestBuildDeleteSQL(t *testing.T) { + t1 := &cache.PhysicalTable{ + Schema: model.NewCIStr("test"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("t1"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("id"), FieldType: *types.NewFieldType(mysql.TypeVarchar)}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + } + + t2 := &cache.PhysicalTable{ + Schema: model.NewCIStr("test2"), + TableInfo: &model.TableInfo{ + Name: model.NewCIStr("t2"), + }, + KeyColumns: []*model.ColumnInfo{ + {Name: model.NewCIStr("a"), FieldType: *types.NewFieldType(mysql.TypeVarchar)}, + {Name: model.NewCIStr("b"), FieldType: *types.NewFieldType(mysql.TypeInt24)}, + }, + TimeColumn: &model.ColumnInfo{ + Name: model.NewCIStr("time"), + FieldType: *types.NewFieldType(mysql.TypeDatetime), + }, + } + + cases := []struct { + tbl *cache.PhysicalTable + expire time.Time + rows [][]types.Datum + sql string + }{ + { + tbl: t1, + expire: time.UnixMilli(0).In(time.UTC), + rows: [][]types.Datum{d(1)}, + sql: "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE `id` IN (1) AND `time` < '1970-01-01 00:00:00' LIMIT 1", + }, + { + tbl: t1, + expire: time.UnixMilli(0).In(time.UTC), + rows: [][]types.Datum{d(2), d(3), d(4)}, + sql: "DELETE LOW_PRIORITY FROM `test`.`t1` WHERE `id` IN (2, 3, 4) AND `time` < '1970-01-01 00:00:00' LIMIT 3", + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + rows: [][]types.Datum{d(1, "a")}, + sql: "DELETE LOW_PRIORITY FROM `test2`.`t2` WHERE (`a`, `b`) IN ((1, 'a')) AND `time` < '1970-01-01 00:00:00' LIMIT 1", + }, + { + tbl: t2, + expire: time.UnixMilli(0).In(time.UTC), + rows: [][]types.Datum{d(1, "a"), d(2, "b")}, + sql: "DELETE LOW_PRIORITY FROM `test2`.`t2` WHERE (`a`, `b`) IN ((1, 'a'), (2, 'b')) AND `time` < '1970-01-01 00:00:00' LIMIT 2", + }, + } + + for _, c := range cases { + sql, err := sqlbuilder.BuildDeleteSQL(c.tbl, c.rows, c.expire) + require.NoError(t, err) + require.Equal(t, c.sql, sql) + } +} + +func d(vs ...interface{}) []types.Datum { + datums := make([]types.Datum, len(vs)) + for i, v := range vs { + switch val := v.(type) { + case string: + datums[i] = types.NewStringDatum(val) + case int: + datums[i] = types.NewIntDatum(int64(val)) + case []byte: + datums[i] = types.NewBytesDatum(val) + default: + panic(fmt.Sprintf("invalid value type: %T, value: %v", v, v)) + } + } + return datums +} diff --git a/ttl/ttlworker/BUILD.bazel b/ttl/ttlworker/BUILD.bazel new file mode 100644 index 0000000000000..a278b9cac754f --- /dev/null +++ b/ttl/ttlworker/BUILD.bazel @@ -0,0 +1,55 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "ttlworker", + srcs = [ + "del.go", + "scan.go", + "session.go", + "worker.go", + ], + importpath = "github.com/pingcap/tidb/ttl/ttlworker", + visibility = ["//visibility:public"], + deps = [ + "//parser/terror", + "//sessionctx", + "//sessionctx/variable", + "//ttl/cache", + "//ttl/session", + "//ttl/sqlbuilder", + "//types", + "//util", + "//util/chunk", + "//util/logutil", + "//util/sqlexec", + "@com_github_ngaut_pools//:pools", + "@com_github_pingcap_errors//:errors", + "@org_golang_x_time//rate", + "@org_uber_go_zap//:zap", + ], +) + +go_test( + name = "ttlworker_test", + srcs = [ + "del_test.go", + "scan_test.go", + "session_test.go", + ], + embed = [":ttlworker"], + deps = [ + "//infoschema", + "//parser/ast", + "//parser/model", + "//parser/mysql", + "//sessionctx", + "//sessionctx/variable", + "//ttl/cache", + "//types", + "//util/chunk", + "@com_github_ngaut_pools//:pools", + "@com_github_pingcap_errors//:errors", + "@com_github_stretchr_testify//require", + "@org_golang_x_time//rate", + ], +) diff --git a/ttl/ttlworker/del.go b/ttl/ttlworker/del.go new file mode 100644 index 0000000000000..d0bb651da8f41 --- /dev/null +++ b/ttl/ttlworker/del.go @@ -0,0 +1,276 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "container/list" + "context" + "fmt" + "sync" + "sync/atomic" + "time" + + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/ttl/session" + "github.com/pingcap/tidb/ttl/sqlbuilder" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/logutil" + "go.uber.org/zap" + "golang.org/x/time/rate" +) + +const ( + delMaxRetry = 3 + delRetryBufferSize = 128 + delRetryInterval = time.Second * 5 +) + +var globalDelRateLimiter = newDelRateLimiter() + +type delRateLimiter struct { + sync.Mutex + limiter *rate.Limiter + limit atomic.Int64 +} + +func newDelRateLimiter() *delRateLimiter { + limiter := &delRateLimiter{} + limiter.limiter = rate.NewLimiter(0, 1) + limiter.limit.Store(0) + return limiter +} + +func (l *delRateLimiter) Wait(ctx context.Context) error { + limit := l.limit.Load() + if variable.TTLDeleteRateLimit.Load() != limit { + limit = l.reset() + } + + if limit == 0 { + return ctx.Err() + } + + return l.limiter.Wait(ctx) +} + +func (l *delRateLimiter) reset() (newLimit int64) { + l.Lock() + defer l.Unlock() + newLimit = variable.TTLDeleteRateLimit.Load() + if newLimit != l.limit.Load() { + l.limit.Store(newLimit) + l.limiter.SetLimit(rate.Limit(newLimit)) + } + return +} + +type ttlDeleteTask struct { + tbl *cache.PhysicalTable + expire time.Time + rows [][]types.Datum + statistics *ttlStatistics +} + +func (t *ttlDeleteTask) doDelete(ctx context.Context, rawSe session.Session) (retryRows [][]types.Datum) { + leftRows := t.rows + se := newTableSession(rawSe, t.tbl, t.expire) + for len(leftRows) > 0 { + maxBatch := variable.TTLDeleteBatchSize.Load() + var delBatch [][]types.Datum + if int64(len(leftRows)) < maxBatch { + delBatch = leftRows + leftRows = nil + } else { + delBatch = leftRows[0:maxBatch] + leftRows = leftRows[maxBatch:] + } + + sql, err := sqlbuilder.BuildDeleteSQL(t.tbl, delBatch, t.expire) + if err != nil { + t.statistics.IncErrorRows(len(delBatch)) + logutil.BgLogger().Warn( + "build delete SQL in TTL failed", + zap.Error(err), + zap.String("table", t.tbl.Schema.O+"."+t.tbl.Name.O), + ) + } + + if err = globalDelRateLimiter.Wait(ctx); err != nil { + t.statistics.IncErrorRows(len(delBatch)) + return + } + + _, needRetry, err := se.ExecuteSQLWithCheck(ctx, sql) + if err != nil { + needRetry = needRetry && ctx.Err() == nil + logutil.BgLogger().Warn( + "delete SQL in TTL failed", + zap.Error(err), + zap.String("SQL", sql), + zap.Bool("needRetry", needRetry), + ) + + if needRetry { + if retryRows == nil { + retryRows = make([][]types.Datum, 0, len(leftRows)+len(delBatch)) + } + retryRows = append(retryRows, delBatch...) + } else { + t.statistics.IncErrorRows(len(delBatch)) + } + continue + } + + t.statistics.IncSuccessRows(len(delBatch)) + } + return retryRows +} + +type ttlDelRetryItem struct { + task *ttlDeleteTask + retryCnt int + inTime time.Time +} + +type ttlDelRetryBuffer struct { + list *list.List + maxSize int + maxRetry int + retryInterval time.Duration + getTime func() time.Time +} + +func newTTLDelRetryBuffer() *ttlDelRetryBuffer { + return &ttlDelRetryBuffer{ + list: list.New(), + maxSize: delRetryBufferSize, + maxRetry: delMaxRetry, + retryInterval: delRetryInterval, + getTime: time.Now, + } +} + +func (b *ttlDelRetryBuffer) Len() int { + return b.list.Len() +} + +func (b *ttlDelRetryBuffer) RecordTaskResult(task *ttlDeleteTask, retryRows [][]types.Datum) { + b.recordRetryItem(task, retryRows, 0) +} + +func (b *ttlDelRetryBuffer) DoRetry(do func(*ttlDeleteTask) [][]types.Datum) time.Duration { + for b.list.Len() > 0 { + ele := b.list.Front() + item, ok := ele.Value.(*ttlDelRetryItem) + if !ok { + logutil.BgLogger().Error(fmt.Sprintf("invalid retry buffer item type: %T", ele)) + b.list.Remove(ele) + continue + } + + now := b.getTime() + interval := now.Sub(item.inTime) + if interval < b.retryInterval { + return b.retryInterval - interval + } + + b.list.Remove(ele) + if retryRows := do(item.task); len(retryRows) > 0 { + b.recordRetryItem(item.task, retryRows, item.retryCnt+1) + } + } + return b.retryInterval +} + +func (b *ttlDelRetryBuffer) recordRetryItem(task *ttlDeleteTask, retryRows [][]types.Datum, retryCnt int) bool { + if len(retryRows) == 0 { + return false + } + + if retryCnt >= b.maxRetry { + task.statistics.IncErrorRows(len(retryRows)) + return false + } + + for b.list.Len() > 0 && b.list.Len() >= b.maxSize { + ele := b.list.Front() + if item, ok := ele.Value.(*ttlDelRetryItem); ok { + item.task.statistics.IncErrorRows(len(item.task.rows)) + } else { + logutil.BgLogger().Error(fmt.Sprintf("invalid retry buffer item type: %T", ele)) + } + b.list.Remove(b.list.Front()) + } + + newTask := *task + newTask.rows = retryRows + b.list.PushBack(&ttlDelRetryItem{ + task: &newTask, + inTime: b.getTime(), + retryCnt: retryCnt, + }) + return true +} + +type ttlDeleteWorker struct { + baseWorker + delCh <-chan *ttlDeleteTask + sessionPool sessionPool + retryBuffer *ttlDelRetryBuffer +} + +func newDeleteWorker(delCh <-chan *ttlDeleteTask, sessPool sessionPool) *ttlDeleteWorker { + w := &ttlDeleteWorker{ + delCh: delCh, + sessionPool: sessPool, + retryBuffer: newTTLDelRetryBuffer(), + } + w.init(w.loop) + return w +} + +func (w *ttlDeleteWorker) loop() error { + se, err := getSession(w.sessionPool) + if err != nil { + return err + } + + ctx := w.baseWorker.ctx + + doRetry := func(task *ttlDeleteTask) [][]types.Datum { + return task.doDelete(ctx, se) + } + + timer := time.NewTimer(w.retryBuffer.retryInterval) + defer timer.Stop() + + for w.status == workerStatusRunning { + select { + case <-ctx.Done(): + return nil + case <-timer.C: + nextInterval := w.retryBuffer.DoRetry(doRetry) + timer.Reset(nextInterval) + case task, ok := <-w.delCh: + if !ok { + return nil + } + retryRows := task.doDelete(ctx, se) + w.retryBuffer.RecordTaskResult(task, retryRows) + } + } + return nil +} diff --git a/ttl/ttlworker/del_test.go b/ttl/ttlworker/del_test.go new file mode 100644 index 0000000000000..62e05dbeb4c14 --- /dev/null +++ b/ttl/ttlworker/del_test.go @@ -0,0 +1,389 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "context" + "errors" + "strings" + "testing" + "time" + + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/chunk" + "github.com/stretchr/testify/require" + "golang.org/x/time/rate" +) + +func TestTTLDelRetryBuffer(t *testing.T) { + createTask := func(name string) (*ttlDeleteTask, [][]types.Datum, *ttlStatistics) { + rows := make([][]types.Datum, 10) + statistics := &ttlStatistics{} + statistics.IncTotalRows(10) + task := &ttlDeleteTask{ + tbl: newMockTTLTbl(t, name), + expire: time.UnixMilli(0), + rows: rows, + statistics: statistics, + } + return task, rows, statistics + } + + shouldNotDoRetry := func(task *ttlDeleteTask) [][]types.Datum { + require.FailNow(t, "should not do retry") + return nil + } + + start := time.UnixMilli(0) + tm := start + buffer := newTTLDelRetryBuffer() + require.Equal(t, delRetryBufferSize, buffer.maxSize) + require.Equal(t, delMaxRetry, buffer.maxRetry) + require.Equal(t, delRetryInterval, buffer.retryInterval) + + buffer.maxSize = 3 + buffer.maxRetry = 2 + buffer.retryInterval = 10 * time.Second + buffer.getTime = func() time.Time { + return tm + } + + // add success task + task1, rows1, statics1 := createTask("t1") + buffer.RecordTaskResult(task1, nil) + require.Equal(t, 0, buffer.Len()) + buffer.DoRetry(shouldNotDoRetry) + require.Equal(t, uint64(0), statics1.ErrorRows.Load()) + + // add a task with 1 failed rows + buffer.RecordTaskResult(task1, rows1[:1]) + require.Equal(t, 1, buffer.Len()) + buffer.DoRetry(shouldNotDoRetry) + require.Equal(t, uint64(0), statics1.ErrorRows.Load()) + + // add another task with 2 failed rows + tm = tm.Add(time.Second) + task2, rows2, statics2 := createTask("t2") + buffer.RecordTaskResult(task2, rows2[:2]) + require.Equal(t, 2, buffer.Len()) + buffer.DoRetry(shouldNotDoRetry) + require.Equal(t, uint64(0), statics2.ErrorRows.Load()) + + // add another task with 3 failed rows + tm = tm.Add(time.Second) + task3, rows3, statics3 := createTask("t3") + buffer.RecordTaskResult(task3, rows3[:3]) + require.Equal(t, 3, buffer.Len()) + buffer.DoRetry(shouldNotDoRetry) + require.Equal(t, uint64(0), statics3.ErrorRows.Load()) + + // add new task will eliminate old tasks + tm = tm.Add(time.Second) + task4, rows4, statics4 := createTask("t4") + buffer.RecordTaskResult(task4, rows4[:4]) + require.Equal(t, 3, buffer.Len()) + buffer.DoRetry(shouldNotDoRetry) + require.Equal(t, uint64(0), statics4.ErrorRows.Load()) + require.Equal(t, uint64(1), statics1.ErrorRows.Load()) + + // poll up-to-date tasks + tm = tm.Add(10*time.Second - time.Millisecond) + tasks := make([]*ttlDeleteTask, 0) + doRetrySuccess := func(task *ttlDeleteTask) [][]types.Datum { + task.statistics.IncSuccessRows(len(task.rows)) + tasks = append(tasks, task) + return nil + } + nextInterval := buffer.DoRetry(doRetrySuccess) + require.Equal(t, time.Millisecond, nextInterval) + require.Equal(t, 2, len(tasks)) + require.Equal(t, "t2", tasks[0].tbl.Name.L) + require.Equal(t, time.UnixMilli(0), tasks[0].expire) + require.Equal(t, 2, len(tasks[0].rows)) + require.Equal(t, uint64(2), statics2.SuccessRows.Load()) + require.Equal(t, uint64(0), statics2.ErrorRows.Load()) + require.Equal(t, "t3", tasks[1].tbl.Name.L) + require.Equal(t, time.UnixMilli(0), tasks[0].expire) + require.Equal(t, 3, len(tasks[1].rows)) + require.Equal(t, 1, buffer.Len()) + require.Equal(t, uint64(3), statics3.SuccessRows.Load()) + require.Equal(t, uint64(0), statics3.ErrorRows.Load()) + require.Equal(t, uint64(0), statics4.SuccessRows.Load()) + require.Equal(t, uint64(0), statics4.ErrorRows.Load()) + + // poll next + tm = tm.Add(time.Millisecond) + tasks = make([]*ttlDeleteTask, 0) + nextInterval = buffer.DoRetry(doRetrySuccess) + require.Equal(t, 10*time.Second, nextInterval) + require.Equal(t, 1, len(tasks)) + require.Equal(t, "t4", tasks[0].tbl.Name.L) + require.Equal(t, time.UnixMilli(0), tasks[0].expire) + require.Equal(t, 4, len(tasks[0].rows)) + require.Equal(t, 0, buffer.Len()) + require.Equal(t, uint64(4), statics4.SuccessRows.Load()) + require.Equal(t, uint64(0), statics4.ErrorRows.Load()) + + // test retry max count + retryCnt := 0 + doRetryFail := func(task *ttlDeleteTask) [][]types.Datum { + retryCnt++ + task.statistics.SuccessRows.Add(1) + return task.rows[1:] + } + task5, rows5, statics5 := createTask("t5") + buffer.RecordTaskResult(task5, rows5[:5]) + require.Equal(t, 1, buffer.Len()) + tm = tm.Add(10 * time.Second) + nextInterval = buffer.DoRetry(doRetryFail) + require.Equal(t, 10*time.Second, nextInterval) + require.Equal(t, uint64(1), statics5.SuccessRows.Load()) + require.Equal(t, uint64(0), statics5.ErrorRows.Load()) + require.Equal(t, 1, retryCnt) + tm = tm.Add(10 * time.Second) + buffer.DoRetry(doRetryFail) + require.Equal(t, uint64(2), statics5.SuccessRows.Load()) + require.Equal(t, uint64(3), statics5.ErrorRows.Load()) + require.Equal(t, 2, retryCnt) + require.Equal(t, 0, buffer.Len()) + + // test task should be immutable + require.Equal(t, 10, len(task5.rows)) +} + +func TestTTLDeleteTaskDoDelete(t *testing.T) { + origBatchSize := variable.TTLDeleteBatchSize.Load() + variable.TTLDeleteBatchSize.Store(3) + defer variable.TTLDeleteBatchSize.Store(origBatchSize) + + t1 := newMockTTLTbl(t, "t1") + t2 := newMockTTLTbl(t, "t2") + t3 := newMockTTLTbl(t, "t3") + t4 := newMockTTLTbl(t, "t4") + s := newMockSession(t) + invokes := 0 + s.executeSQL = func(ctx context.Context, sql string, args ...interface{}) ([]chunk.Row, error) { + invokes++ + s.sessionInfoSchema = newMockInfoSchema(t1.TableInfo, t2.TableInfo, t3.TableInfo, t4.TableInfo) + if strings.Contains(sql, "`t1`") { + return nil, nil + } + + if strings.Contains(sql, "`t2`") { + return nil, errors.New("mockErr") + } + + if strings.Contains(sql, "`t3`") { + s.sessionInfoSchema = newMockInfoSchema() + return nil, nil + } + + if strings.Contains(sql, "`t4`") { + switch invokes { + case 1: + return nil, nil + case 2, 4: + return nil, errors.New("mockErr") + case 3: + s.sessionInfoSchema = newMockInfoSchema() + return nil, nil + } + } + + require.FailNow(t, "") + return nil, nil + } + + nRows := func(n int) [][]types.Datum { + rows := make([][]types.Datum, n) + for i := 0; i < n; i++ { + rows[i] = []types.Datum{ + types.NewIntDatum(int64(i)), + } + } + return rows + } + + delTask := func(t *cache.PhysicalTable) *ttlDeleteTask { + task := &ttlDeleteTask{ + tbl: t, + expire: time.UnixMilli(0), + rows: nRows(10), + statistics: &ttlStatistics{}, + } + task.statistics.TotalRows.Add(10) + return task + } + + cases := []struct { + task *ttlDeleteTask + retryRows []int + successRows int + errorRows int + }{ + { + task: delTask(t1), + retryRows: nil, + successRows: 10, + errorRows: 0, + }, + { + task: delTask(t2), + retryRows: []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, + successRows: 0, + errorRows: 0, + }, + { + task: delTask(t3), + retryRows: nil, + successRows: 0, + errorRows: 10, + }, + { + task: delTask(t4), + retryRows: []int{3, 4, 5, 9}, + successRows: 3, + errorRows: 3, + }, + } + + for _, c := range cases { + invokes = 0 + retryRows := c.task.doDelete(context.TODO(), s) + require.Equal(t, 4, invokes) + if c.retryRows == nil { + require.Nil(t, retryRows) + } + require.Equal(t, len(c.retryRows), len(retryRows)) + for i, row := range retryRows { + require.Equal(t, int64(c.retryRows[i]), row[0].GetInt64()) + } + require.Equal(t, uint64(10), c.task.statistics.TotalRows.Load()) + require.Equal(t, uint64(c.successRows), c.task.statistics.SuccessRows.Load()) + require.Equal(t, uint64(c.errorRows), c.task.statistics.ErrorRows.Load()) + } +} + +func TestTTLDeleteRateLimiter(t *testing.T) { + origDeleteLimit := variable.TTLDeleteRateLimit.Load() + defer func() { + variable.TTLDeleteRateLimit.Store(origDeleteLimit) + }() + + ctx, cancel := context.WithTimeout(context.Background(), time.Minute) + defer func() { + if cancel != nil { + cancel() + } + }() + + variable.TTLDeleteRateLimit.Store(100000) + require.NoError(t, globalDelRateLimiter.Wait(ctx)) + require.Equal(t, rate.Limit(100000), globalDelRateLimiter.limiter.Limit()) + require.Equal(t, int64(100000), globalDelRateLimiter.limit.Load()) + + variable.TTLDeleteRateLimit.Store(0) + require.NoError(t, globalDelRateLimiter.Wait(ctx)) + require.Equal(t, rate.Limit(0), globalDelRateLimiter.limiter.Limit()) + require.Equal(t, int64(0), globalDelRateLimiter.limit.Load()) + + // 0 stands for no limit + require.NoError(t, globalDelRateLimiter.Wait(ctx)) + // cancel ctx returns an error + cancel() + cancel = nil + require.EqualError(t, globalDelRateLimiter.Wait(ctx), "context canceled") +} + +func TestTTLDeleteTaskWorker(t *testing.T) { + origBatchSize := variable.TTLDeleteBatchSize.Load() + variable.TTLDeleteBatchSize.Store(3) + defer variable.TTLDeleteBatchSize.Store(origBatchSize) + + t1 := newMockTTLTbl(t, "t1") + t2 := newMockTTLTbl(t, "t2") + t3 := newMockTTLTbl(t, "t3") + s := newMockSession(t) + pool := newMockSessionPool(t) + pool.se = s + + sqlMap := make(map[string]struct{}) + s.executeSQL = func(ctx context.Context, sql string, args ...interface{}) ([]chunk.Row, error) { + pool.lastSession.sessionInfoSchema = newMockInfoSchema(t1.TableInfo, t2.TableInfo, t3.TableInfo) + if strings.Contains(sql, "`t1`") { + return nil, nil + } + + if strings.Contains(sql, "`t2`") { + if _, ok := sqlMap[sql]; ok { + return nil, nil + } + sqlMap[sql] = struct{}{} + return nil, errors.New("mockErr") + } + + if strings.Contains(sql, "`t3`") { + pool.lastSession.sessionInfoSchema = newMockInfoSchema() + return nil, nil + } + + require.FailNow(t, "") + return nil, nil + } + + delCh := make(chan *ttlDeleteTask) + w := newDeleteWorker(delCh, pool) + w.retryBuffer.retryInterval = time.Millisecond + require.Equal(t, workerStatusCreated, w.Status()) + w.Start() + require.Equal(t, workerStatusRunning, w.Status()) + defer func() { + w.Stop() + require.NoError(t, w.WaitStopped(context.TODO(), 10*time.Second)) + }() + + tasks := make([]*ttlDeleteTask, 0) + for _, tbl := range []*cache.PhysicalTable{t1, t2, t3} { + task := &ttlDeleteTask{ + tbl: tbl, + expire: time.UnixMilli(0), + rows: [][]types.Datum{ + {types.NewIntDatum(1)}, + {types.NewIntDatum(2)}, + {types.NewIntDatum(3)}, + }, + statistics: &ttlStatistics{}, + } + task.statistics.TotalRows.Add(3) + tasks = append(tasks, task) + select { + case delCh <- task: + case <-time.After(time.Second): + require.FailNow(t, "") + } + } + + time.Sleep(time.Millisecond * 100) + require.Equal(t, uint64(3), tasks[0].statistics.SuccessRows.Load()) + require.Equal(t, uint64(0), tasks[0].statistics.ErrorRows.Load()) + + require.Equal(t, uint64(3), tasks[1].statistics.SuccessRows.Load()) + require.Equal(t, uint64(0), tasks[1].statistics.ErrorRows.Load()) + + require.Equal(t, uint64(0), tasks[2].statistics.SuccessRows.Load()) + require.Equal(t, uint64(3), tasks[2].statistics.ErrorRows.Load()) +} diff --git a/ttl/ttlworker/scan.go b/ttl/ttlworker/scan.go new file mode 100644 index 0000000000000..4d9f7924cd9a6 --- /dev/null +++ b/ttl/ttlworker/scan.go @@ -0,0 +1,288 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "context" + "strconv" + "sync/atomic" + "time" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/parser/terror" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/ttl/sqlbuilder" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/logutil" + "go.uber.org/zap" +) + +var ( + scanTaskExecuteSQLMaxRetry = 5 + scanTaskExecuteSQLRetryInterval = 2 * time.Second + taskStartCheckErrorRateCnt = 10000 + taskMaxErrorRate = 0.4 +) + +type ttlStatistics struct { + TotalRows atomic.Uint64 + SuccessRows atomic.Uint64 + ErrorRows atomic.Uint64 +} + +func (s *ttlStatistics) IncTotalRows(cnt int) { + s.TotalRows.Add(uint64(cnt)) +} + +func (s *ttlStatistics) IncSuccessRows(cnt int) { + s.SuccessRows.Add(uint64(cnt)) +} + +func (s *ttlStatistics) IncErrorRows(cnt int) { + s.ErrorRows.Add(uint64(cnt)) +} + +func (s *ttlStatistics) Reset() { + s.SuccessRows.Store(0) + s.ErrorRows.Store(0) + s.TotalRows.Store(0) +} + +type ttlScanTask struct { + tbl *cache.PhysicalTable + expire time.Time + rangeStart []types.Datum + rangeEnd []types.Datum + statistics *ttlStatistics +} + +type ttlScanTaskExecResult struct { + task *ttlScanTask + err error +} + +func (t *ttlScanTask) result(err error) *ttlScanTaskExecResult { + return &ttlScanTaskExecResult{task: t, err: err} +} + +func (t *ttlScanTask) getDatumRows(rows []chunk.Row) [][]types.Datum { + datums := make([][]types.Datum, len(rows)) + for i, row := range rows { + datums[i] = row.GetDatumRow(t.tbl.KeyColumnTypes) + } + return datums +} + +func (t *ttlScanTask) doScan(ctx context.Context, delCh chan<- *ttlDeleteTask, sessPool sessionPool) *ttlScanTaskExecResult { + rawSess, err := getSession(sessPool) + if err != nil { + return t.result(err) + } + defer rawSess.Close() + + origConcurrency := rawSess.GetSessionVars().DistSQLScanConcurrency() + if _, err = rawSess.ExecuteSQL(ctx, "set @@tidb_distsql_scan_concurrency=1"); err != nil { + return t.result(err) + } + + defer func() { + _, err = rawSess.ExecuteSQL(ctx, "set @@tidb_distsql_scan_concurrency="+strconv.Itoa(origConcurrency)) + terror.Log(err) + }() + + sess := newTableSession(rawSess, t.tbl, t.expire) + generator, err := sqlbuilder.NewScanQueryGenerator(t.tbl, t.expire, t.rangeStart, t.rangeEnd) + if err != nil { + return t.result(err) + } + + retrySQL := "" + retryTimes := 0 + var lastResult [][]types.Datum + for { + if err = ctx.Err(); err != nil { + return t.result(err) + } + + if total := t.statistics.TotalRows.Load(); total > uint64(taskStartCheckErrorRateCnt) { + if t.statistics.ErrorRows.Load() > uint64(float64(total)*taskMaxErrorRate) { + return t.result(errors.Errorf("error exceeds the limit")) + } + } + + sql := retrySQL + if sql == "" { + limit := int(variable.TTLScanBatchSize.Load()) + if sql, err = generator.NextSQL(lastResult, limit); err != nil { + return t.result(err) + } + } + + if sql == "" { + return t.result(nil) + } + + rows, retryable, sqlErr := sess.ExecuteSQLWithCheck(ctx, sql) + if sqlErr != nil { + needRetry := retryable && retryTimes < scanTaskExecuteSQLMaxRetry && ctx.Err() == nil + logutil.BgLogger().Error("execute query for ttl scan task failed", + zap.String("SQL", sql), + zap.Int("retryTimes", retryTimes), + zap.Bool("needRetry", needRetry), + zap.Error(err), + ) + + if !needRetry { + return t.result(sqlErr) + } + retrySQL = sql + retryTimes++ + select { + case <-ctx.Done(): + return t.result(ctx.Err()) + case <-time.After(scanTaskExecuteSQLRetryInterval): + } + continue + } + + retrySQL = "" + retryTimes = 0 + lastResult = t.getDatumRows(rows) + if len(rows) == 0 { + continue + } + + delTask := &ttlDeleteTask{ + tbl: t.tbl, + expire: t.expire, + rows: lastResult, + statistics: t.statistics, + } + select { + case <-ctx.Done(): + return t.result(ctx.Err()) + case delCh <- delTask: + t.statistics.IncTotalRows(len(lastResult)) + } + } +} + +type scanTaskExecEndMsg struct { + result *ttlScanTaskExecResult +} + +type ttlScanWorker struct { + baseWorker + curTask *ttlScanTask + curTaskResult *ttlScanTaskExecResult + delCh chan<- *ttlDeleteTask + notifyStateCh chan<- interface{} + sessionPool sessionPool +} + +func newScanWorker(delCh chan<- *ttlDeleteTask, notifyStateCh chan<- interface{}, sessPool sessionPool) *ttlScanWorker { + w := &ttlScanWorker{ + delCh: delCh, + notifyStateCh: notifyStateCh, + sessionPool: sessPool, + } + w.init(w.loop) + return w +} + +func (w *ttlScanWorker) Idle() bool { + w.Lock() + defer w.Unlock() + return w.status == workerStatusRunning && w.curTask == nil +} + +func (w *ttlScanWorker) Schedule(task *ttlScanTask) error { + w.Lock() + defer w.Unlock() + if w.status != workerStatusRunning { + return errors.New("worker is not running") + } + + if w.curTaskResult != nil { + return errors.New("the result of previous task has not been polled") + } + + if w.curTask != nil { + return errors.New("a task is running") + } + + w.curTask = task + w.curTaskResult = nil + w.baseWorker.ch <- task + return nil +} + +func (w *ttlScanWorker) CurrentTask() *ttlScanTask { + w.Lock() + defer w.Unlock() + return w.curTask +} + +func (w *ttlScanWorker) PollTaskResult() (*ttlScanTaskExecResult, bool) { + w.Lock() + defer w.Unlock() + if r := w.curTaskResult; r != nil { + w.curTask = nil + w.curTaskResult = nil + return r, true + } + return nil, false +} + +func (w *ttlScanWorker) loop() error { + ctx := w.baseWorker.ctx + for w.status == workerStatusRunning { + select { + case <-ctx.Done(): + return nil + case msg, ok := <-w.baseWorker.ch: + if !ok { + return nil + } + switch task := msg.(type) { + case *ttlScanTask: + w.handleScanTask(ctx, task) + default: + logutil.BgLogger().Warn("unrecognized message for ttlScanWorker", zap.Any("msg", msg)) + } + } + } + return nil +} + +func (w *ttlScanWorker) handleScanTask(ctx context.Context, task *ttlScanTask) { + result := task.doScan(ctx, w.delCh, w.sessionPool) + if result == nil { + result = task.result(nil) + } + + w.baseWorker.Lock() + w.curTaskResult = result + w.baseWorker.Unlock() + + if w.notifyStateCh != nil { + select { + case w.notifyStateCh <- &scanTaskExecEndMsg{result: result}: + default: + } + } +} diff --git a/ttl/ttlworker/scan_test.go b/ttl/ttlworker/scan_test.go new file mode 100644 index 0000000000000..1eeb7a306afca --- /dev/null +++ b/ttl/ttlworker/scan_test.go @@ -0,0 +1,397 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "context" + "fmt" + "testing" + "time" + + "github.com/pingcap/errors" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/chunk" + "github.com/stretchr/testify/require" +) + +type mockScanWorker struct { + *ttlScanWorker + t *testing.T + delCh chan *ttlDeleteTask + notifyCh chan interface{} + sessPoll *mockSessionPool +} + +func newMockScanWorker(t *testing.T) *mockScanWorker { + w := &mockScanWorker{ + t: t, + delCh: make(chan *ttlDeleteTask), + notifyCh: make(chan interface{}, 10), + sessPoll: newMockSessionPool(t), + } + + w.ttlScanWorker = newScanWorker(w.delCh, w.notifyCh, w.sessPoll) + require.Equal(t, workerStatusCreated, w.Status()) + require.False(t, w.Idle()) + result, ok := w.PollTaskResult() + require.False(t, ok) + require.Nil(t, result) + return w +} + +func (w *mockScanWorker) checkWorkerStatus(status workerStatus, idle bool, curTask *ttlScanTask) { + require.Equal(w.t, status, w.status) + require.Equal(w.t, idle, w.Idle()) + require.Same(w.t, curTask, w.CurrentTask()) +} + +func (w *mockScanWorker) checkPollResult(exist bool, err string) { + curTask := w.CurrentTask() + r, ok := w.PollTaskResult() + require.Equal(w.t, exist, ok) + if !exist { + require.Nil(w.t, r) + } else { + require.NotNil(w.t, r) + require.NotNil(w.t, r.task) + require.Same(w.t, curTask, r.task) + if err == "" { + require.NoError(w.t, r.err) + } else { + require.EqualError(w.t, r.err, err) + } + } +} + +func (w *mockScanWorker) waitNotifyScanTaskEnd() *scanTaskExecEndMsg { + select { + case msg := <-w.notifyCh: + endMsg, ok := msg.(*scanTaskExecEndMsg) + require.True(w.t, ok) + require.NotNil(w.t, endMsg.result) + require.Same(w.t, w.CurrentTask(), endMsg.result.task) + return endMsg + case <-time.After(10 * time.Second): + require.FailNow(w.t, "timeout") + } + + require.FailNow(w.t, "") + return nil +} + +func (w *mockScanWorker) pollDelTask() *ttlDeleteTask { + select { + case del := <-w.delCh: + require.NotNil(w.t, del) + require.NotNil(w.t, del.statistics) + require.Same(w.t, w.curTask.tbl, del.tbl) + require.Equal(w.t, w.curTask.expire, del.expire) + require.NotEqual(w.t, 0, len(del.rows)) + return del + case <-time.After(10 * time.Second): + require.FailNow(w.t, "timeout") + } + + require.FailNow(w.t, "") + return nil +} + +func (w *mockScanWorker) setOneRowResult(tbl *cache.PhysicalTable, val ...interface{}) { + w.sessPoll.se.sessionInfoSchema = newMockInfoSchema(tbl.TableInfo) + w.sessPoll.se.rows = newMockRows(w.t, tbl.KeyColumnTypes...).Append(val...).Rows() +} + +func (w *mockScanWorker) clearInfoSchema() { + w.sessPoll.se.sessionInfoSchema = newMockInfoSchema() +} + +func (w *mockScanWorker) stopWithWait() { + w.Stop() + require.NoError(w.t, w.WaitStopped(context.TODO(), 10*time.Second)) +} + +func TestScanWorkerSchedule(t *testing.T) { + origLimit := variable.TTLScanBatchSize.Load() + variable.TTLScanBatchSize.Store(5) + defer variable.TTLScanBatchSize.Store(origLimit) + + tbl := newMockTTLTbl(t, "t1") + w := newMockScanWorker(t) + w.setOneRowResult(tbl, 7) + defer w.stopWithWait() + + task := &ttlScanTask{ + tbl: tbl, + expire: time.UnixMilli(0), + statistics: &ttlStatistics{}, + } + + require.EqualError(t, w.Schedule(task), "worker is not running") + w.checkWorkerStatus(workerStatusCreated, false, nil) + w.checkPollResult(false, "") + + w.Start() + w.checkWorkerStatus(workerStatusRunning, true, nil) + w.checkPollResult(false, "") + + require.NoError(t, w.Schedule(task)) + w.checkWorkerStatus(workerStatusRunning, false, task) + w.checkPollResult(false, "") + + require.EqualError(t, w.Schedule(task), "a task is running") + w.checkWorkerStatus(workerStatusRunning, false, task) + w.checkPollResult(false, "") + + del := w.pollDelTask() + require.Equal(t, 1, len(del.rows)) + require.Equal(t, 1, len(del.rows[0])) + require.Equal(t, int64(7), del.rows[0][0].GetInt64()) + + msg := w.waitNotifyScanTaskEnd() + require.Same(t, task, msg.result.task) + require.NoError(t, msg.result.err) + w.checkWorkerStatus(workerStatusRunning, false, task) + w.checkPollResult(true, "") + w.checkWorkerStatus(workerStatusRunning, true, nil) + w.checkPollResult(false, "") +} + +func TestScanWorkerScheduleWithFailedTask(t *testing.T) { + origLimit := variable.TTLScanBatchSize.Load() + variable.TTLScanBatchSize.Store(5) + defer variable.TTLScanBatchSize.Store(origLimit) + + tbl := newMockTTLTbl(t, "t1") + w := newMockScanWorker(t) + w.clearInfoSchema() + defer w.stopWithWait() + + task := &ttlScanTask{ + tbl: tbl, + expire: time.UnixMilli(0), + statistics: &ttlStatistics{}, + } + + w.Start() + w.checkWorkerStatus(workerStatusRunning, true, nil) + w.checkPollResult(false, "") + + require.NoError(t, w.Schedule(task)) + w.checkWorkerStatus(workerStatusRunning, false, task) + msg := w.waitNotifyScanTaskEnd() + require.Same(t, task, msg.result.task) + require.EqualError(t, msg.result.err, "table 'test.t1' meta changed, should abort current job: [schema:1146]Table 'test.t1' doesn't exist") + w.checkWorkerStatus(workerStatusRunning, false, task) + w.checkPollResult(true, msg.result.err.Error()) + w.checkWorkerStatus(workerStatusRunning, true, nil) +} + +type mockScanTask struct { + *ttlScanTask + t *testing.T + tbl *cache.PhysicalTable + sessPool *mockSessionPool + sqlRetry []int + + delCh chan *ttlDeleteTask + prevSQL string + prevSQLRetry int + delTasks []*ttlDeleteTask + schemaChangeIdx int + schemaChangeInRetry int +} + +func newMockScanTask(t *testing.T, sqlCnt int) *mockScanTask { + tbl := newMockTTLTbl(t, "t1") + task := &mockScanTask{ + t: t, + ttlScanTask: &ttlScanTask{ + tbl: tbl, + expire: time.UnixMilli(0), + rangeStart: []types.Datum{types.NewIntDatum(0)}, + statistics: &ttlStatistics{}, + }, + tbl: tbl, + delCh: make(chan *ttlDeleteTask, sqlCnt*(scanTaskExecuteSQLMaxRetry+1)), + sessPool: newMockSessionPool(t), + sqlRetry: make([]int, sqlCnt), + schemaChangeIdx: -1, + } + task.sessPool.se.executeSQL = task.execSQL + return task +} + +func (t *mockScanTask) selectSQL(i int) string { + return fmt.Sprintf("SELECT LOW_PRIORITY `_tidb_rowid` FROM `test`.`t1` WHERE `_tidb_rowid` > %d AND `time` < '1970-01-01 08:00:00' ORDER BY `_tidb_rowid` ASC LIMIT 3", i*100) +} + +func (t *mockScanTask) runDoScanForTest(delTaskCnt int, errString string) *ttlScanTaskExecResult { + t.ttlScanTask.statistics.Reset() + origLimit := variable.TTLScanBatchSize.Load() + variable.TTLScanBatchSize.Store(3) + origRetryInterval := scanTaskExecuteSQLRetryInterval + scanTaskExecuteSQLRetryInterval = time.Millisecond + defer func() { + variable.TTLScanBatchSize.Store(origLimit) + scanTaskExecuteSQLRetryInterval = origRetryInterval + }() + + t.sessPool.se.sessionInfoSchema = newMockInfoSchema(t.tbl.TableInfo) + t.prevSQL = "" + t.prevSQLRetry = 0 + t.sessPool.lastSession = nil + r := t.doScan(context.TODO(), t.delCh, t.sessPool) + require.NotNil(t.t, t.sessPool.lastSession) + require.True(t.t, t.sessPool.lastSession.closed) + require.Greater(t.t, t.sessPool.lastSession.resetTimeZoneCalls, 0) + require.NotNil(t.t, r) + require.Same(t.t, t.ttlScanTask, r.task) + if errString == "" { + require.NoError(t.t, r.err) + } else { + require.EqualError(t.t, r.err, errString) + } + + previousIdx := delTaskCnt + if errString == "" { + previousIdx = len(t.sqlRetry) - 1 + } + require.Equal(t.t, t.selectSQL(previousIdx), t.prevSQL) + if errString == "" { + require.Equal(t.t, t.sqlRetry[previousIdx], t.prevSQLRetry) + } else if previousIdx == t.schemaChangeIdx && t.schemaChangeInRetry <= scanTaskExecuteSQLMaxRetry { + require.Equal(t.t, t.schemaChangeInRetry, t.prevSQLRetry) + } else { + require.Equal(t.t, scanTaskExecuteSQLMaxRetry, t.prevSQLRetry) + } + t.delTasks = make([]*ttlDeleteTask, 0, len(t.sqlRetry)) +loop: + for { + select { + case del, ok := <-t.delCh: + if !ok { + break loop + } + t.delTasks = append(t.delTasks, del) + default: + break loop + } + } + + require.Equal(t.t, delTaskCnt, len(t.delTasks)) + expectTotalRows := 0 + for i, del := range t.delTasks { + require.NotNil(t.t, del) + require.NotNil(t.t, del.statistics) + require.Same(t.t, t.statistics, del.statistics) + require.Same(t.t, t.tbl, del.tbl) + require.Equal(t.t, t.expire, del.expire) + if i < len(t.sqlRetry)-1 { + require.Equal(t.t, 3, len(del.rows)) + require.Equal(t.t, 1, len(del.rows[2])) + require.Equal(t.t, int64((i+1)*100), del.rows[2][0].GetInt64()) + } else { + require.Equal(t.t, 2, len(del.rows)) + } + require.Equal(t.t, 1, len(del.rows[0])) + require.Equal(t.t, int64(i*100+1), del.rows[0][0].GetInt64()) + require.Equal(t.t, 1, len(del.rows[0])) + require.Equal(t.t, int64(i*100+2), del.rows[1][0].GetInt64()) + expectTotalRows += len(del.rows) + } + require.Equal(t.t, expectTotalRows, int(t.statistics.TotalRows.Load())) + return r +} + +func (t *mockScanTask) checkDelTasks(cnt int) { + require.Equal(t.t, cnt, len(t.delTasks)) + for i := 0; i < cnt; i++ { + del := t.delTasks[i] + require.Nil(t.t, del) + require.NotNil(t.t, del.statistics) + require.Same(t.t, t.statistics, del.statistics) + if i < 2 { + require.Equal(t.t, 3, len(del.rows)) + require.Equal(t.t, 1, len(del.rows[2])) + require.Equal(t.t, int64((i+1)*100), del.rows[2][0].GetInt64()) + } else { + require.Equal(t.t, 2, len(del.rows)) + } + require.Equal(t.t, 1, len(del.rows[0])) + require.Equal(t.t, int64(i*100+1), del.rows[0][0].GetInt64()) + require.Equal(t.t, 1, len(del.rows[0])) + require.Equal(t.t, int64(i*100+2), del.rows[1][0].GetInt64()) + } +} + +func (t *mockScanTask) execSQL(_ context.Context, sql string, _ ...interface{}) ([]chunk.Row, error) { + var i int + found := false + for i = 0; i < len(t.sqlRetry); i++ { + if sql == t.selectSQL(i) { + found = true + break + } + } + require.True(t.t, found, sql) + + curRetry := 0 + if sql == t.prevSQL { + curRetry = t.prevSQLRetry + 1 + } + + if curRetry == 0 && i > 0 { + require.Equal(t.t, t.selectSQL(i-1), t.prevSQL) + require.Equal(t.t, t.sqlRetry[i-1], t.prevSQLRetry) + } + t.prevSQL = sql + t.prevSQLRetry = curRetry + require.LessOrEqual(t.t, curRetry, t.sqlRetry[i]) + + if t.schemaChangeIdx == i && t.schemaChangeInRetry == curRetry { + t.sessPool.lastSession.sessionInfoSchema = newMockInfoSchema() + } + + if curRetry < t.sqlRetry[i] { + return nil, errors.New("mockErr") + } + + rows := newMockRows(t.t, t.tbl.KeyColumnTypes...).Append(i*100 + 1).Append(i*100 + 2) + if i < len(t.sqlRetry)-1 { + rows.Append((i + 1) * 100) + } + return rows.Rows(), nil +} + +func TestScanTaskDoScan(t *testing.T) { + task := newMockScanTask(t, 3) + task.sqlRetry[1] = scanTaskExecuteSQLMaxRetry + task.runDoScanForTest(3, "") + + task.sqlRetry[1] = scanTaskExecuteSQLMaxRetry + 1 + task.runDoScanForTest(1, "mockErr") + + task.sqlRetry[1] = scanTaskExecuteSQLMaxRetry + task.schemaChangeIdx = 1 + task.schemaChangeInRetry = 0 + task.runDoScanForTest(1, "table 'test.t1' meta changed, should abort current job: [schema:1146]Table 'test.t1' doesn't exist") + + task.sqlRetry[1] = scanTaskExecuteSQLMaxRetry + task.schemaChangeIdx = 1 + task.schemaChangeInRetry = 2 + task.runDoScanForTest(1, "table 'test.t1' meta changed, should abort current job: [schema:1146]Table 'test.t1' doesn't exist") +} diff --git a/ttl/ttlworker/session.go b/ttl/ttlworker/session.go new file mode 100644 index 0000000000000..1514c1746f348 --- /dev/null +++ b/ttl/ttlworker/session.go @@ -0,0 +1,168 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "context" + "time" + + "github.com/ngaut/pools" + "github.com/pingcap/errors" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/ttl/session" + "github.com/pingcap/tidb/util/chunk" + "github.com/pingcap/tidb/util/sqlexec" +) + +type sessionPool interface { + Get() (pools.Resource, error) + Put(pools.Resource) +} + +func getSession(pool sessionPool) (session.Session, error) { + resource, err := pool.Get() + if err != nil { + return nil, err + } + + if se, ok := resource.(session.Session); ok { + // Only for test, in this case, the return session is mockSession + return se, nil + } + + sctx, ok := resource.(sessionctx.Context) + if !ok { + pool.Put(resource) + return nil, errors.Errorf("%T cannot be casted to sessionctx.Context", sctx) + } + + exec, ok := resource.(sqlexec.SQLExecutor) + if !ok { + pool.Put(resource) + return nil, errors.Errorf("%T cannot be casted to sqlexec.SQLExecutor", sctx) + } + + se := session.NewSession(sctx, exec, func() { + pool.Put(resource) + }) + + if _, err = se.ExecuteSQL(context.Background(), "commit"); err != nil { + se.Close() + return nil, err + } + + return se, nil +} + +func newTableSession(se session.Session, tbl *cache.PhysicalTable, expire time.Time) *ttlTableSession { + return &ttlTableSession{ + Session: se, + tbl: tbl, + expire: expire, + } +} + +type ttlTableSession struct { + session.Session + tbl *cache.PhysicalTable + expire time.Time +} + +func (s *ttlTableSession) ExecuteSQLWithCheck(ctx context.Context, sql string) (rows []chunk.Row, shouldRetry bool, err error) { + if !variable.EnableTTLJob.Load() { + return nil, false, errors.New("global TTL job is disabled") + } + + if err = s.ResetWithGlobalTimeZone(ctx); err != nil { + return nil, false, err + } + + err = s.RunInTxn(ctx, func() error { + rows, err = s.ExecuteSQL(ctx, sql) + // We must check the configuration after ExecuteSQL because of MDL and the meta the current transaction used + // can only be determined after executed one query. + if validateErr := validateTTLWork(ctx, s.Session, s.tbl, s.expire); validateErr != nil { + shouldRetry = false + return errors.Annotatef(validateErr, "table '%s.%s' meta changed, should abort current job", s.tbl.Schema, s.tbl.Name) + } + + if err != nil { + shouldRetry = true + return err + } + return nil + }) + + if err != nil { + return nil, shouldRetry, err + } + + return rows, false, nil +} + +func validateTTLWork(ctx context.Context, s session.Session, tbl *cache.PhysicalTable, expire time.Time) error { + curTbl, err := s.SessionInfoSchema().TableByName(tbl.Schema, tbl.Name) + if err != nil { + return err + } + + newTblInfo := curTbl.Meta() + if tbl.TableInfo == newTblInfo { + return nil + } + + if tbl.TableInfo.ID != newTblInfo.ID { + return errors.New("table id changed") + } + + newTTLTbl, err := cache.NewPhysicalTable(tbl.Schema, newTblInfo, tbl.Partition) + if err != nil { + return err + } + + if newTTLTbl.ID != tbl.ID { + return errors.New("physical id changed") + } + + if tbl.Partition.L != "" { + if newTTLTbl.PartitionDef.Name.L != tbl.PartitionDef.Name.L { + return errors.New("partition name changed") + } + } + + if !newTTLTbl.TTLInfo.Enable { + return errors.New("table TTL disabled") + } + + if newTTLTbl.TimeColumn.Name.L != tbl.TimeColumn.Name.L { + return errors.New("time column name changed") + } + + if newTblInfo.TTLInfo.IntervalExprStr != tbl.TTLInfo.IntervalExprStr || + newTblInfo.TTLInfo.IntervalTimeUnit != tbl.TTLInfo.IntervalTimeUnit { + newExpireTime, err := newTTLTbl.EvalExpireTime(ctx, s, time.Now()) + if err != nil { + return err + } + + if newExpireTime.Before(expire) { + return errors.New("expire interval changed") + } + } + + return nil +} diff --git a/ttl/ttlworker/session_test.go b/ttl/ttlworker/session_test.go new file mode 100644 index 0000000000000..b12d47dd9f2bc --- /dev/null +++ b/ttl/ttlworker/session_test.go @@ -0,0 +1,329 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "context" + "errors" + "strings" + "testing" + "time" + + "github.com/ngaut/pools" + "github.com/pingcap/tidb/infoschema" + "github.com/pingcap/tidb/parser/ast" + "github.com/pingcap/tidb/parser/model" + "github.com/pingcap/tidb/parser/mysql" + "github.com/pingcap/tidb/sessionctx" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/ttl/cache" + "github.com/pingcap/tidb/types" + "github.com/pingcap/tidb/util/chunk" + "github.com/stretchr/testify/require" +) + +func newMockTTLTbl(t *testing.T, name string) *cache.PhysicalTable { + tblInfo := &model.TableInfo{ + Name: model.NewCIStr(name), + Columns: []*model.ColumnInfo{ + { + ID: 1, + Name: model.NewCIStr("time"), + Offset: 0, + FieldType: *types.NewFieldType(mysql.TypeDatetime), + State: model.StatePublic, + }, + }, + TTLInfo: &model.TTLInfo{ + ColumnName: model.NewCIStr("time"), + IntervalExprStr: "1", + IntervalTimeUnit: int(ast.TimeUnitSecond), + Enable: true, + }, + State: model.StatePublic, + } + + tbl, err := cache.NewPhysicalTable(model.NewCIStr("test"), tblInfo, model.NewCIStr("")) + require.NoError(t, err) + return tbl +} + +func newMockInfoSchema(tbl ...*model.TableInfo) infoschema.InfoSchema { + return infoschema.MockInfoSchema(tbl) +} + +type mockRows struct { + t *testing.T + fieldTypes []*types.FieldType + *chunk.Chunk +} + +func newMockRows(t *testing.T, fieldTypes ...*types.FieldType) *mockRows { + return &mockRows{ + t: t, + fieldTypes: fieldTypes, + Chunk: chunk.NewChunkWithCapacity(fieldTypes, 8), + } +} + +func (r *mockRows) Append(row ...interface{}) *mockRows { + require.Equal(r.t, len(r.fieldTypes), len(row)) + for i, ft := range r.fieldTypes { + tp := ft.GetType() + switch tp { + case mysql.TypeTimestamp, mysql.TypeDate, mysql.TypeDatetime: + tm, ok := row[i].(time.Time) + require.True(r.t, ok) + r.AppendTime(i, types.NewTime(types.FromGoTime(tm), tp, types.DefaultFsp)) + case mysql.TypeInt24, mysql.TypeLong, mysql.TypeLonglong: + val, ok := row[i].(int) + require.True(r.t, ok) + r.AppendInt64(i, int64(val)) + default: + require.FailNow(r.t, "unsupported tp %v", tp) + } + } + return r +} + +func (r *mockRows) Rows() []chunk.Row { + rows := make([]chunk.Row, r.NumRows()) + for i := 0; i < r.NumRows(); i++ { + rows[i] = r.GetRow(i) + } + return rows +} + +type mockSessionPool struct { + t *testing.T + se *mockSession + lastSession *mockSession +} + +func (p *mockSessionPool) Get() (pools.Resource, error) { + se := *(p.se) + p.lastSession = &se + return p.lastSession, nil +} + +func (p *mockSessionPool) Put(pools.Resource) {} + +func newMockSessionPool(t *testing.T, tbl ...*cache.PhysicalTable) *mockSessionPool { + return &mockSessionPool{ + se: newMockSession(t, tbl...), + } +} + +type mockSession struct { + t *testing.T + sessionctx.Context + sessionVars *variable.SessionVars + sessionInfoSchema infoschema.InfoSchema + executeSQL func(ctx context.Context, sql string, args ...interface{}) ([]chunk.Row, error) + rows []chunk.Row + execErr error + evalExpire time.Time + resetTimeZoneCalls int + closed bool +} + +func newMockSession(t *testing.T, tbl ...*cache.PhysicalTable) *mockSession { + tbls := make([]*model.TableInfo, len(tbl)) + for i, ttlTbl := range tbl { + tbls[i] = ttlTbl.TableInfo + } + sessVars := variable.NewSessionVars(nil) + sessVars.TimeZone = time.UTC + return &mockSession{ + t: t, + sessionInfoSchema: newMockInfoSchema(tbls...), + evalExpire: time.Now(), + sessionVars: sessVars, + } +} + +func (s *mockSession) SessionInfoSchema() infoschema.InfoSchema { + require.False(s.t, s.closed) + return s.sessionInfoSchema +} + +func (s *mockSession) GetSessionVars() *variable.SessionVars { + require.False(s.t, s.closed) + return s.sessionVars +} + +func (s *mockSession) ExecuteSQL(ctx context.Context, sql string, args ...interface{}) ([]chunk.Row, error) { + require.False(s.t, s.closed) + if strings.HasPrefix(strings.ToUpper(sql), "SELECT FROM_UNIXTIME") { + return newMockRows(s.t, types.NewFieldType(mysql.TypeTimestamp)).Append(s.evalExpire.In(s.GetSessionVars().TimeZone)).Rows(), nil + } + + if strings.HasPrefix(strings.ToUpper(sql), "SET ") { + return nil, nil + } + + if s.executeSQL != nil { + return s.executeSQL(ctx, sql, args) + } + return s.rows, s.execErr +} + +func (s *mockSession) RunInTxn(_ context.Context, fn func() error) (err error) { + require.False(s.t, s.closed) + return fn() +} + +func (s *mockSession) ResetWithGlobalTimeZone(_ context.Context) (err error) { + require.False(s.t, s.closed) + s.resetTimeZoneCalls++ + return nil +} + +func (s *mockSession) Close() { + s.closed = true +} + +func TestExecuteSQLWithCheck(t *testing.T) { + ctx := context.TODO() + tbl := newMockTTLTbl(t, "t1") + s := newMockSession(t, tbl) + s.execErr = errors.New("mockErr") + s.rows = newMockRows(t, types.NewFieldType(mysql.TypeInt24)).Append(12).Rows() + tblSe := newTableSession(s, tbl, time.UnixMilli(0).In(time.UTC)) + + rows, shouldRetry, err := tblSe.ExecuteSQLWithCheck(ctx, "select 1") + require.EqualError(t, err, "mockErr") + require.True(t, shouldRetry) + require.Nil(t, rows) + require.Equal(t, 1, s.resetTimeZoneCalls) + + s.sessionInfoSchema = newMockInfoSchema() + rows, shouldRetry, err = tblSe.ExecuteSQLWithCheck(ctx, "select 1") + require.EqualError(t, err, "table 'test.t1' meta changed, should abort current job: [schema:1146]Table 'test.t1' doesn't exist") + require.False(t, shouldRetry) + require.Nil(t, rows) + require.Equal(t, 2, s.resetTimeZoneCalls) + + s.sessionInfoSchema = newMockInfoSchema(tbl.TableInfo) + s.execErr = nil + rows, shouldRetry, err = tblSe.ExecuteSQLWithCheck(ctx, "select 1") + require.NoError(t, err) + require.False(t, shouldRetry) + require.Equal(t, 1, len(rows)) + require.Equal(t, int64(12), rows[0].GetInt64(0)) + require.Equal(t, 3, s.resetTimeZoneCalls) +} + +func TestValidateTTLWork(t *testing.T) { + ctx := context.TODO() + tbl := newMockTTLTbl(t, "t1") + expire := time.UnixMilli(0).In(time.UTC) + + s := newMockSession(t, tbl) + s.execErr = errors.New("mockErr") + s.evalExpire = time.UnixMilli(0).In(time.UTC) + + // test table dropped + s.sessionInfoSchema = newMockInfoSchema() + err := validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "[schema:1146]Table 'test.t1' doesn't exist") + + // test TTL option removed + tbl2 := tbl.TableInfo.Clone() + tbl2.TTLInfo = nil + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "table 'test.t1' is not a ttl table") + + // test table state not public + tbl2 = tbl.TableInfo.Clone() + tbl2.State = model.StateDeleteOnly + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "table 'test.t1' is not a public table") + + // test table name changed + tbl2 = tbl.TableInfo.Clone() + tbl2.Name = model.NewCIStr("testcc") + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "[schema:1146]Table 'test.t1' doesn't exist") + + // test table id changed + tbl2 = tbl.TableInfo.Clone() + tbl2.ID = 123 + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "table id changed") + + // test time column name changed + tbl2 = tbl.TableInfo.Clone() + tbl2.Columns[0] = tbl2.Columns[0].Clone() + tbl2.Columns[0].Name = model.NewCIStr("time2") + tbl2.TTLInfo.ColumnName = model.NewCIStr("time2") + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "time column name changed") + + // test interval changed and expire time before previous + tbl2 = tbl.TableInfo.Clone() + tbl2.TTLInfo.IntervalExprStr = "10" + s.sessionInfoSchema = newMockInfoSchema(tbl2) + s.evalExpire = time.UnixMilli(-1) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "expire interval changed") + + tbl2 = tbl.TableInfo.Clone() + tbl2.TTLInfo.IntervalTimeUnit = int(ast.TimeUnitDay) + s.evalExpire = time.UnixMilli(-1) + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "expire interval changed") + + // test for safe meta change + tbl2 = tbl.TableInfo.Clone() + tbl2.Columns[0] = tbl2.Columns[0].Clone() + tbl2.Columns[0].ID += 10 + tbl2.Columns[0].FieldType = *types.NewFieldType(mysql.TypeDate) + tbl2.TTLInfo.IntervalExprStr = "100" + s.evalExpire = time.UnixMilli(1000) + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.NoError(t, err) + + // test table partition name changed + tp := tbl.TableInfo.Clone() + tp.Partition = &model.PartitionInfo{ + Definitions: []model.PartitionDefinition{ + {ID: 1023, Name: model.NewCIStr("p0")}, + }, + } + tbl, err = cache.NewPhysicalTable(model.NewCIStr("test"), tp, model.NewCIStr("p0")) + require.NoError(t, err) + tbl2 = tp.Clone() + tbl2.Partition = tp.Partition.Clone() + tbl2.Partition.Definitions[0].Name = model.NewCIStr("p1") + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "partition 'p0' is not found in ttl table 'test.t1'") + + // test table partition id changed + tbl2 = tp.Clone() + tbl2.Partition = tp.Partition.Clone() + tbl2.Partition.Definitions[0].ID += 100 + s.sessionInfoSchema = newMockInfoSchema(tbl2) + err = validateTTLWork(ctx, s, tbl, expire) + require.EqualError(t, err, "physical id changed") +} diff --git a/ttl/ttlworker/worker.go b/ttl/ttlworker/worker.go new file mode 100644 index 0000000000000..d03a747d2855e --- /dev/null +++ b/ttl/ttlworker/worker.go @@ -0,0 +1,126 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ttlworker + +import ( + "context" + "sync" + "time" + + "github.com/pingcap/tidb/util" +) + +type workerStatus int + +const ( + workerStatusCreated workerStatus = iota + workerStatusRunning + workerStatusStopping + workerStatusStopped +) + +type worker interface { + Start() + Stop() + Status() workerStatus + Error() error + Send() chan<- interface{} + WaitStopped(ctx context.Context, timeout time.Duration) error +} + +type baseWorker struct { + sync.Mutex + ctx context.Context + cancel func() + ch chan interface{} + loopFunc func() error + + err error + status workerStatus + wg util.WaitGroupWrapper +} + +func (w *baseWorker) init(loop func() error) { + w.ctx, w.cancel = context.WithCancel(context.Background()) + w.status = workerStatusCreated + w.loopFunc = loop + w.ch = make(chan interface{}) +} + +func (w *baseWorker) Start() { + w.Lock() + defer w.Unlock() + if w.status != workerStatusCreated { + return + } + + w.wg.Run(w.loop) + w.status = workerStatusRunning +} + +func (w *baseWorker) Stop() { + w.Lock() + defer w.Unlock() + switch w.status { + case workerStatusCreated: + w.cancel() + w.toStopped(nil) + case workerStatusRunning: + w.cancel() + w.status = workerStatusStopping + } +} + +func (w *baseWorker) Status() workerStatus { + w.Lock() + defer w.Unlock() + return w.status +} + +func (w *baseWorker) Error() error { + w.Lock() + defer w.Unlock() + return w.err +} + +func (w *baseWorker) WaitStopped(ctx context.Context, timeout time.Duration) error { + ctx, cancel := context.WithTimeout(ctx, timeout) + go func() { + w.wg.Wait() + cancel() + }() + + <-ctx.Done() + if w.Status() != workerStatusStopped { + return ctx.Err() + } + return nil +} + +func (w *baseWorker) loop() { + var err error + defer func() { + w.Lock() + w.toStopped(err) + w.Unlock() + }() + err = w.loopFunc() +} + +func (w *baseWorker) toStopped(err error) { + w.status = workerStatusStopped + w.err = err + close(w.ch) +} diff --git a/types/errors.go b/types/errors.go index 68b12d48d8218..94ac823891aa2 100644 --- a/types/errors.go +++ b/types/errors.go @@ -82,6 +82,8 @@ var ( ErrSyntax = dbterror.ClassTypes.NewStdErr(mysql.ErrParse, mysql.MySQLErrName[mysql.ErrSyntax]) // ErrWrongValue is returned when the input value is in wrong format. ErrWrongValue = dbterror.ClassTypes.NewStdErr(mysql.ErrTruncatedWrongValue, mysql.MySQLErrName[mysql.ErrWrongValue]) + // ErrWrongValue2 is returned when the input value is in wrong format. + ErrWrongValue2 = dbterror.ClassTypes.NewStdErr(mysql.ErrWrongValue, mysql.MySQLErrName[mysql.ErrWrongValue]) // ErrWrongValueForType is returned when the input value is in wrong format for function. ErrWrongValueForType = dbterror.ClassTypes.NewStdErr(mysql.ErrWrongValueForType, mysql.MySQLErrName[mysql.ErrWrongValueForType]) // ErrPartitionStatsMissing is returned when the partition-level stats is missing and the build global-level stats fails. diff --git a/types/etc.go b/types/etc.go index 56309d0c41ac4..6d371138193f8 100644 --- a/types/etc.go +++ b/types/etc.go @@ -90,6 +90,11 @@ func IsTypeNumeric(tp byte) bool { return false } +// IsTypeBit returns a boolean indicating whether the tp is bit type. +func IsTypeBit(ft *FieldType) bool { + return ft.GetType() == mysql.TypeBit +} + // IsTemporalWithDate returns a boolean indicating // whether the tp is time type with date. func IsTemporalWithDate(tp byte) bool { diff --git a/types/explain_format.go b/types/explain_format.go index 2599f7bb046ed..00bb9ac1e4336 100644 --- a/types/explain_format.go +++ b/types/explain_format.go @@ -33,6 +33,8 @@ var ( ExplainFormatTrueCardCost = "true_card_cost" // ExplainFormatBinary prints the proto for binary plan. ExplainFormatBinary = "binary" + // ExplainFormatTiDBJSON warp the default result in JSON format + ExplainFormatTiDBJSON = "tidb_json" // ExplainFormats stores the valid formats for explain statement, used by validator. ExplainFormats = []string{ @@ -45,5 +47,6 @@ var ( ExplainFormatTraditional, ExplainFormatTrueCardCost, ExplainFormatBinary, + ExplainFormatTiDBJSON, } ) diff --git a/types/time.go b/types/time.go index 974b69602dd63..ebdfc462d8cdb 100644 --- a/types/time.go +++ b/types/time.go @@ -18,6 +18,7 @@ import ( "bytes" "encoding/json" "fmt" + "io" "math" "regexp" "strconv" @@ -1155,6 +1156,9 @@ func parseDatetime(sc *stmtctx.StatementContext, str string, fsp int, isFloat bo hhmmss = true } if err != nil { + if err == io.EOF { + return ZeroDatetime, errors.Trace(ErrWrongValue.GenWithStackByArgs(DateTimeStr, str)) + } return ZeroDatetime, errors.Trace(err) } diff --git a/util/cgroup/cgroup_cpu_linux.go b/util/cgroup/cgroup_cpu_linux.go index 69cde58c5d2cd..bd3aba59100db 100644 --- a/util/cgroup/cgroup_cpu_linux.go +++ b/util/cgroup/cgroup_cpu_linux.go @@ -13,7 +13,6 @@ // limitations under the License. //go:build linux -// +build linux package cgroup diff --git a/util/cgroup/cgroup_cpu_unsupport.go b/util/cgroup/cgroup_cpu_unsupport.go index 8e0550fd7b3a9..97cb9f4ef3b73 100644 --- a/util/cgroup/cgroup_cpu_unsupport.go +++ b/util/cgroup/cgroup_cpu_unsupport.go @@ -13,7 +13,6 @@ // limitations under the License. //go:build !linux -// +build !linux package cgroup diff --git a/util/chunk/row.go b/util/chunk/row.go index 96aa92acb65fb..04aba8f768bdd 100644 --- a/util/chunk/row.go +++ b/util/chunk/row.go @@ -115,10 +115,14 @@ func (r Row) GetJSON(colIdx int) types.BinaryJSON { // Keep in mind that GetDatumRow has a reference to r.c, which is a chunk, // this function works only if the underlying chunk is valid or unchanged. func (r Row) GetDatumRow(fields []*types.FieldType) []types.Datum { - datumRow := make([]types.Datum, 0, r.c.NumCols()) - for colIdx := 0; colIdx < r.c.NumCols(); colIdx++ { - datum := r.GetDatum(colIdx, fields[colIdx]) - datumRow = append(datumRow, datum) + datumRow := make([]types.Datum, r.c.NumCols()) + return r.GetDatumRowWithBuffer(fields, datumRow) +} + +// GetDatumRowWithBuffer gets datum using the buffer datumRow. +func (r Row) GetDatumRowWithBuffer(fields []*types.FieldType, datumRow []types.Datum) []types.Datum { + for colIdx := 0; colIdx < len(datumRow); colIdx++ { + r.GetDatumWithBuffer(colIdx, fields[colIdx], &datumRow[colIdx]) } return datumRow } @@ -126,6 +130,12 @@ func (r Row) GetDatumRow(fields []*types.FieldType) []types.Datum { // GetDatum implements the chunk.Row interface. func (r Row) GetDatum(colIdx int, tp *types.FieldType) types.Datum { var d types.Datum + r.GetDatumWithBuffer(colIdx, tp, &d) + return d +} + +// GetDatumWithBuffer gets datum using the buffer d. +func (r Row) GetDatumWithBuffer(colIdx int, tp *types.FieldType, d *types.Datum) types.Datum { switch tp.GetType() { case mysql.TypeTiny, mysql.TypeShort, mysql.TypeInt24, mysql.TypeLong, mysql.TypeLonglong: if !r.IsNull(colIdx) { @@ -192,7 +202,7 @@ func (r Row) GetDatum(colIdx int, tp *types.FieldType) types.Datum { d.SetMysqlJSON(r.GetJSON(colIdx)) } } - return d + return *d } // GetRaw returns the underlying raw bytes with the colIdx. diff --git a/util/chunk/row_container.go b/util/chunk/row_container.go index d40a9846c47ab..7ae1a67879b03 100644 --- a/util/chunk/row_container.go +++ b/util/chunk/row_container.go @@ -472,14 +472,16 @@ func (c *SortedRowContainer) Close() error { func (c *SortedRowContainer) lessRow(rowI, rowJ Row) bool { for i, colIdx := range c.keyColumns { cmpFunc := c.keyCmpFuncs[i] - cmp := cmpFunc(rowI, colIdx, rowJ, colIdx) - if c.ByItemsDesc[i] { - cmp = -cmp - } - if cmp < 0 { - return true - } else if cmp > 0 { - return false + if cmpFunc != nil { + cmp := cmpFunc(rowI, colIdx, rowJ, colIdx) + if c.ByItemsDesc[i] { + cmp = -cmp + } + if cmp < 0 { + return true + } else if cmp > 0 { + return false + } } } return false diff --git a/util/dbterror/ddl_terror.go b/util/dbterror/ddl_terror.go index 65a02fb23da24..6c80d60ad6ec2 100644 --- a/util/dbterror/ddl_terror.go +++ b/util/dbterror/ddl_terror.go @@ -391,6 +391,8 @@ var ( ErrCannotCancelDDLJob = ClassDDL.NewStd(mysql.ErrCannotCancelDDLJob) // ErrDDLSetting returns when failing to enable/disable DDL ErrDDLSetting = ClassDDL.NewStd(mysql.ErrDDLSetting) + // ErrIngestFailed returns when the DDL ingest job is failed. + ErrIngestFailed = ClassDDL.NewStd(mysql.ErrIngestFailed) // ErrColumnInChange indicates there is modification on the column in parallel. ErrColumnInChange = ClassDDL.NewStd(mysql.ErrColumnInChange) @@ -416,4 +418,15 @@ var ( ErrForeignKeyColumnCannotChangeChild = ClassDDL.NewStd(mysql.ErrForeignKeyColumnCannotChangeChild) // ErrNoReferencedRow2 returns when there are rows in child table don't have related foreign key value in refer table. ErrNoReferencedRow2 = ClassDDL.NewStd(mysql.ErrNoReferencedRow2) + + // ErrUnsupportedColumnInTTLConfig returns when a column type is not expected in TTL config + ErrUnsupportedColumnInTTLConfig = ClassDDL.NewStd(mysql.ErrUnsupportedColumnInTTLConfig) + // ErrTTLColumnCannotDrop returns when a column is dropped while referenced by TTL config + ErrTTLColumnCannotDrop = ClassDDL.NewStd(mysql.ErrTTLColumnCannotDrop) + // ErrSetTTLEnableForNonTTLTable returns when the `TTL_ENABLE` option is set on a non-TTL table + ErrSetTTLEnableForNonTTLTable = ClassDDL.NewStd(mysql.ErrSetTTLEnableForNonTTLTable) + // ErrTempTableNotAllowedWithTTL returns when setting TTL config for a temp table + ErrTempTableNotAllowedWithTTL = ClassDDL.NewStd(mysql.ErrTempTableNotAllowedWithTTL) + // ErrUnsupportedTTLReferencedByFK returns when the TTL config is set for a table referenced by foreign key + ErrUnsupportedTTLReferencedByFK = ClassDDL.NewStd(mysql.ErrUnsupportedTTLReferencedByFK) ) diff --git a/util/ddl-checker/executable_checker.go b/util/ddl-checker/executable_checker.go index 47fd059a79530..7571cbfe3f524 100644 --- a/util/ddl-checker/executable_checker.go +++ b/util/ddl-checker/executable_checker.go @@ -100,7 +100,7 @@ func (ec *ExecutableChecker) DropTable(context context.Context, tableName string // Close closes the ExecutableChecker func (ec *ExecutableChecker) Close() error { - if !ec.isClosed.CAS(false, true) { + if !ec.isClosed.CompareAndSwap(false, true) { return errors.New("ExecutableChecker is already closed") } ec.session.Close() diff --git a/util/execdetails/execdetails.go b/util/execdetails/execdetails.go index c1c65499ec288..1867ebc1c945c 100644 --- a/util/execdetails/execdetails.go +++ b/util/execdetails/execdetails.go @@ -32,19 +32,24 @@ import ( // ExecDetails contains execution detail information. type ExecDetails struct { - BackoffSleep map[string]time.Duration - BackoffTimes map[string]int + DetailsNeedP90 CommitDetail *util.CommitDetails LockKeysDetail *util.LockKeysDetails ScanDetail *util.ScanDetail - CalleeAddress string - TimeDetail util.TimeDetail CopTime time.Duration BackoffTime time.Duration LockKeysDuration time.Duration RequestCount int } +// DetailsNeedP90 contains execution detail information which need calculate P90. +type DetailsNeedP90 struct { + BackoffSleep map[string]time.Duration + BackoffTimes map[string]int + CalleeAddress string + TimeDetail util.TimeDetail +} + type stmtExecDetailKeyType struct{} // StmtExecDetailKey used to carry StmtExecDetail info in context.Context. @@ -320,13 +325,15 @@ func (d ExecDetails) ToZapFields() (fields []zap.Field) { type basicCopRuntimeStats struct { storeType string BasicRuntimeStats - threads int32 + threads int32 + totalTasks int32 + procTimes []time.Duration } // String implements the RuntimeStats interface. func (e *basicCopRuntimeStats) String() string { if e.storeType == "tiflash" { - return fmt.Sprintf("time:%v, loops:%d, threads:%d", FormatDuration(time.Duration(e.consume)), e.loop, e.threads) + return fmt.Sprintf("time:%v, loops:%d, threads:%d, ", FormatDuration(time.Duration(e.consume)), e.loop, e.threads) + e.BasicRuntimeStats.tiflashScanContext.String() } return fmt.Sprintf("time:%v, loops:%d", FormatDuration(time.Duration(e.consume)), e.loop) } @@ -334,9 +341,11 @@ func (e *basicCopRuntimeStats) String() string { // Clone implements the RuntimeStats interface. func (e *basicCopRuntimeStats) Clone() RuntimeStats { return &basicCopRuntimeStats{ - BasicRuntimeStats: BasicRuntimeStats{loop: e.loop, consume: e.consume, rows: e.rows}, + BasicRuntimeStats: BasicRuntimeStats{loop: e.loop, consume: e.consume, rows: e.rows, tiflashScanContext: e.tiflashScanContext.Clone()}, threads: e.threads, storeType: e.storeType, + totalTasks: e.totalTasks, + procTimes: e.procTimes, } } @@ -350,6 +359,13 @@ func (e *basicCopRuntimeStats) Merge(rs RuntimeStats) { e.consume += tmp.consume e.rows += tmp.rows e.threads += tmp.threads + e.totalTasks += tmp.totalTasks + if len(tmp.procTimes) > 0 { + e.procTimes = append(e.procTimes, tmp.procTimes...) + } else { + e.procTimes = append(e.procTimes, time.Duration(tmp.consume)) + } + e.tiflashScanContext.Merge(tmp.tiflashScanContext) } // Tp implements the RuntimeStats interface. @@ -364,7 +380,7 @@ type CopRuntimeStats struct { // have many region leaders, several coprocessor tasks can be sent to the // same tikv-server instance. We have to use a list to maintain all tasks // executed on each instance. - stats map[string][]*basicCopRuntimeStats + stats map[string]*basicCopRuntimeStats scanDetail *util.ScanDetail // do not use kv.StoreType because it will meet cycle import error storeType string @@ -375,35 +391,48 @@ type CopRuntimeStats struct { func (crs *CopRuntimeStats) RecordOneCopTask(address string, summary *tipb.ExecutorExecutionSummary) { crs.Lock() defer crs.Unlock() - crs.stats[address] = append(crs.stats[address], - &basicCopRuntimeStats{BasicRuntimeStats: BasicRuntimeStats{loop: int32(*summary.NumIterations), + + if crs.stats[address] == nil { + crs.stats[address] = &basicCopRuntimeStats{ + storeType: crs.storeType, + } + } + crs.stats[address].Merge(&basicCopRuntimeStats{ + storeType: crs.storeType, + BasicRuntimeStats: BasicRuntimeStats{loop: int32(*summary.NumIterations), consume: int64(*summary.TimeProcessedNs), - rows: int64(*summary.NumProducedRows)}, - threads: int32(summary.GetConcurrency()), - storeType: crs.storeType}) + rows: int64(*summary.NumProducedRows), + tiflashScanContext: TiFlashScanContext{ + totalDmfileScannedPacks: summary.GetTiflashScanContext().GetTotalDmfileScannedPacks(), + totalDmfileSkippedPacks: summary.GetTiflashScanContext().GetTotalDmfileSkippedPacks(), + totalDmfileScannedRows: summary.GetTiflashScanContext().GetTotalDmfileScannedRows(), + totalDmfileSkippedRows: summary.GetTiflashScanContext().GetTotalDmfileSkippedRows(), + totalDmfileRoughSetIndexLoadTimeMs: summary.GetTiflashScanContext().GetTotalDmfileRoughSetIndexLoadTimeMs(), + totalDmfileReadTimeMs: summary.GetTiflashScanContext().GetTotalDmfileReadTimeMs(), + totalCreateSnapshotTimeMs: summary.GetTiflashScanContext().GetTotalCreateSnapshotTimeMs()}}, threads: int32(summary.GetConcurrency()), + totalTasks: 1, + }) } // GetActRows return total rows of CopRuntimeStats. func (crs *CopRuntimeStats) GetActRows() (totalRows int64) { for _, instanceStats := range crs.stats { - for _, stat := range instanceStats { - totalRows += stat.rows - } + totalRows += instanceStats.rows } return totalRows } // MergeBasicStats traverses basicCopRuntimeStats in the CopRuntimeStats and collects some useful information. -func (crs *CopRuntimeStats) MergeBasicStats() (procTimes []time.Duration, totalTime time.Duration, totalTasks, totalLoops, totalThreads int32) { +func (crs *CopRuntimeStats) MergeBasicStats() (procTimes []time.Duration, totalTime time.Duration, totalTasks, totalLoops, totalThreads int32, totalTiFlashScanContext TiFlashScanContext) { procTimes = make([]time.Duration, 0, 32) + totalTiFlashScanContext = TiFlashScanContext{} for _, instanceStats := range crs.stats { - for _, stat := range instanceStats { - procTimes = append(procTimes, time.Duration(stat.consume)*time.Nanosecond) - totalTime += time.Duration(stat.consume) - totalLoops += stat.loop - totalThreads += stat.threads - totalTasks++ - } + procTimes = append(procTimes, instanceStats.procTimes...) + totalTime += time.Duration(instanceStats.consume) + totalLoops += instanceStats.loop + totalThreads += instanceStats.threads + totalTiFlashScanContext.Merge(instanceStats.tiflashScanContext) + totalTasks += instanceStats.totalTasks } return } @@ -413,7 +442,7 @@ func (crs *CopRuntimeStats) String() string { return "" } - procTimes, totalTime, totalTasks, totalLoops, totalThreads := crs.MergeBasicStats() + procTimes, totalTime, totalTasks, totalLoops, totalThreads, totalTiFlashScanContext := crs.MergeBasicStats() avgTime := time.Duration(totalTime.Nanoseconds() / int64(totalTasks)) isTiFlashCop := crs.storeType == "tiflash" @@ -422,6 +451,9 @@ func (crs *CopRuntimeStats) String() string { buf.WriteString(fmt.Sprintf("%v_task:{time:%v, loops:%d", crs.storeType, FormatDuration(procTimes[0]), totalLoops)) if isTiFlashCop { buf.WriteString(fmt.Sprintf(", threads:%d}", totalThreads)) + if !totalTiFlashScanContext.Empty() { + buf.WriteString(", " + totalTiFlashScanContext.String()) + } } else { buf.WriteString("}") } @@ -433,6 +465,9 @@ func (crs *CopRuntimeStats) String() string { FormatDuration(procTimes[n*4/5]), FormatDuration(procTimes[n*19/20]), totalLoops, totalTasks)) if isTiFlashCop { buf.WriteString(fmt.Sprintf(", threads:%d}", totalThreads)) + if !totalTiFlashScanContext.Empty() { + buf.WriteString(", " + totalTiFlashScanContext.String()) + } } else { buf.WriteString("}") } @@ -480,6 +515,10 @@ const ( TpBasicCopRunTimeStats // TpUpdateRuntimeStats is the tp for UpdateRuntimeStats TpUpdateRuntimeStats + // TpFKCheckRuntimeStats is the tp for FKCheckRuntimeStats + TpFKCheckRuntimeStats + // TpFKCascadeRuntimeStats is the tp for FKCascadeRuntimeStats + TpFKCascadeRuntimeStats ) // RuntimeStats is used to express the executor runtime information. @@ -490,6 +529,50 @@ type RuntimeStats interface { Tp() int } +// TiFlashScanContext is used to express the table scan information in tiflash +type TiFlashScanContext struct { + totalDmfileScannedPacks uint64 + totalDmfileScannedRows uint64 + totalDmfileSkippedPacks uint64 + totalDmfileSkippedRows uint64 + totalDmfileRoughSetIndexLoadTimeMs uint64 + totalDmfileReadTimeMs uint64 + totalCreateSnapshotTimeMs uint64 +} + +// Clone implements the deep copy of * TiFlashshScanContext +func (context *TiFlashScanContext) Clone() TiFlashScanContext { + return TiFlashScanContext{ + totalDmfileScannedPacks: context.totalDmfileScannedPacks, + totalDmfileScannedRows: context.totalDmfileScannedRows, + totalDmfileSkippedPacks: context.totalDmfileSkippedPacks, + totalDmfileSkippedRows: context.totalDmfileSkippedRows, + totalDmfileRoughSetIndexLoadTimeMs: context.totalDmfileRoughSetIndexLoadTimeMs, + totalDmfileReadTimeMs: context.totalDmfileReadTimeMs, + totalCreateSnapshotTimeMs: context.totalCreateSnapshotTimeMs, + } +} +func (context *TiFlashScanContext) String() string { + return fmt.Sprintf("tiflash_scan:{dtfile:{total_scanned_packs:%d, total_skipped_packs:%d, total_scanned_rows:%d, total_skipped_rows:%d, total_rs_index_load_time: %dms, total_read_time: %dms}, total_create_snapshot_time: %dms}", context.totalDmfileScannedPacks, context.totalDmfileSkippedPacks, context.totalDmfileScannedRows, context.totalDmfileSkippedRows, context.totalDmfileRoughSetIndexLoadTimeMs, context.totalDmfileReadTimeMs, context.totalCreateSnapshotTimeMs) +} + +// Merge make sum to merge the information in TiFlashScanContext +func (context *TiFlashScanContext) Merge(other TiFlashScanContext) { + context.totalDmfileScannedPacks += other.totalDmfileScannedPacks + context.totalDmfileScannedRows += other.totalDmfileScannedRows + context.totalDmfileSkippedPacks += other.totalDmfileSkippedPacks + context.totalDmfileSkippedRows += other.totalDmfileSkippedRows + context.totalDmfileRoughSetIndexLoadTimeMs += other.totalDmfileRoughSetIndexLoadTimeMs + context.totalDmfileReadTimeMs += other.totalDmfileReadTimeMs + context.totalCreateSnapshotTimeMs += other.totalCreateSnapshotTimeMs +} + +// Empty check whether TiFlashScanContext is Empty, if scan no pack and skip no pack, we regard it as empty +func (context *TiFlashScanContext) Empty() bool { + res := (context.totalDmfileScannedPacks == 0 && context.totalDmfileSkippedPacks == 0) + return res +} + // BasicRuntimeStats is the basic runtime stats. type BasicRuntimeStats struct { // executor's Next() called times. @@ -498,6 +581,8 @@ type BasicRuntimeStats struct { consume int64 // executor return row count. rows int64 + // executor extra infos + tiflashScanContext TiFlashScanContext } // GetActRows return total rows of BasicRuntimeStats. @@ -508,9 +593,10 @@ func (e *BasicRuntimeStats) GetActRows() int64 { // Clone implements the RuntimeStats interface. func (e *BasicRuntimeStats) Clone() RuntimeStats { return &BasicRuntimeStats{ - loop: e.loop, - consume: e.consume, - rows: e.rows, + loop: e.loop, + consume: e.consume, + rows: e.rows, + tiflashScanContext: e.tiflashScanContext.Clone(), } } @@ -523,6 +609,7 @@ func (e *BasicRuntimeStats) Merge(rs RuntimeStats) { e.loop += tmp.loop e.consume += tmp.consume e.rows += tmp.rows + e.tiflashScanContext.Merge(tmp.tiflashScanContext) } // Tp implements the RuntimeStats interface. @@ -532,65 +619,33 @@ func (*BasicRuntimeStats) Tp() int { // RootRuntimeStats is the executor runtime stats that combine with multiple runtime stats. type RootRuntimeStats struct { - basics []*BasicRuntimeStats - groupRss [][]RuntimeStats + basic *BasicRuntimeStats + groupRss []RuntimeStats } -// GetActRows return total rows of RootRuntimeStats. -func (e *RootRuntimeStats) GetActRows() int64 { - num := int64(0) - for _, basic := range e.basics { - num += basic.GetActRows() - } - return num +// NewRootRuntimeStats returns a new RootRuntimeStats +func NewRootRuntimeStats() *RootRuntimeStats { + return &RootRuntimeStats{} } -// MergeBasicStats merges BasicRuntimeStats in the RootRuntimeStats into single one. -func (e *RootRuntimeStats) MergeBasicStats() *BasicRuntimeStats { - if len(e.basics) == 0 { - return nil - } - basic := e.basics[0].Clone().(*BasicRuntimeStats) - for i := 1; i < len(e.basics); i++ { - basic.Merge(e.basics[i]) - } - return basic -} - -// MergeGroupStats merges every slice in e.groupRss into single RuntimeStats. -func (e *RootRuntimeStats) MergeGroupStats() (res []RuntimeStats) { - if len(e.groupRss) == 0 { - return nil - } - for _, rss := range e.groupRss { - if len(rss) == 0 { - continue - } else if len(rss) == 1 { - res = append(res, rss[0]) - continue - } - rs := rss[0].Clone() - for i := 1; i < len(rss); i++ { - rs.Merge(rss[i]) - } - res = append(res, rs) +// GetActRows return total rows of RootRuntimeStats. +func (e *RootRuntimeStats) GetActRows() int64 { + if e.basic == nil { + return 0 } - return + return e.basic.rows } // MergeStats merges stats in the RootRuntimeStats and return the stats suitable for display directly. func (e *RootRuntimeStats) MergeStats() (basic *BasicRuntimeStats, groups []RuntimeStats) { - basic = e.MergeBasicStats() - groups = e.MergeGroupStats() - return + return e.basic, e.groupRss } // String implements the RuntimeStats interface. func (e *RootRuntimeStats) String() string { basic, groups := e.MergeStats() strs := make([]string, 0, len(groups)+1) - basicStr := basic.String() - if len(basicStr) > 0 { + if basic != nil { strs = append(strs, basic.String()) } for _, group := range groups { @@ -664,38 +719,46 @@ func (e *RuntimeStatsColl) RegisterStats(planID int, info RuntimeStats) { e.mu.Lock() stats, ok := e.rootStats[planID] if !ok { - stats = &RootRuntimeStats{} + stats = NewRootRuntimeStats() e.rootStats[planID] = stats } - if basic, ok := info.(*BasicRuntimeStats); ok { - stats.basics = append(stats.basics, basic) - } else { - tp := info.Tp() - found := false - for i, rss := range stats.groupRss { - if len(rss) == 0 { - continue - } - if rss[0].Tp() == tp { - stats.groupRss[i] = append(stats.groupRss[i], info) - found = true - break - } - } - if !found { - stats.groupRss = append(stats.groupRss, []RuntimeStats{info}) + tp := info.Tp() + found := false + for _, rss := range stats.groupRss { + if rss.Tp() == tp { + rss.Merge(info) + found = true + break } } + if !found { + stats.groupRss = append(stats.groupRss, info.Clone()) + } e.mu.Unlock() } +// GetBasicRuntimeStats gets basicRuntimeStats for a executor. +func (e *RuntimeStatsColl) GetBasicRuntimeStats(planID int) *BasicRuntimeStats { + e.mu.Lock() + defer e.mu.Unlock() + stats, ok := e.rootStats[planID] + if !ok { + stats = NewRootRuntimeStats() + e.rootStats[planID] = stats + } + if stats.basic == nil { + stats.basic = &BasicRuntimeStats{} + } + return stats.basic +} + // GetRootStats gets execStat for a executor. func (e *RuntimeStatsColl) GetRootStats(planID int) *RootRuntimeStats { e.mu.Lock() defer e.mu.Unlock() runtimeStats, exists := e.rootStats[planID] if !exists { - runtimeStats = &RootRuntimeStats{} + runtimeStats = NewRootRuntimeStats() e.rootStats[planID] = runtimeStats } return runtimeStats @@ -719,7 +782,7 @@ func (e *RuntimeStatsColl) GetOrCreateCopStats(planID int, storeType string) *Co copStats, ok := e.copStats[planID] if !ok { copStats = &CopRuntimeStats{ - stats: make(map[string][]*basicCopRuntimeStats), + stats: make(map[string]*basicCopRuntimeStats), scanDetail: &util.ScanDetail{}, storeType: storeType, } diff --git a/util/execdetails/execdetails_test.go b/util/execdetails/execdetails_test.go index 1f14f9f933509..88e194637e94d 100644 --- a/util/execdetails/execdetails_test.go +++ b/util/execdetails/execdetails_test.go @@ -109,10 +109,10 @@ func TestString(t *testing.T) { RocksdbBlockReadByte: 100, RocksdbBlockReadDuration: time.Millisecond, }, - TimeDetail: util.TimeDetail{ + DetailsNeedP90: DetailsNeedP90{TimeDetail: util.TimeDetail{ ProcessTime: 2*time.Second + 5*time.Millisecond, WaitTime: time.Second, - }, + }}, } expected := "Cop_time: 1.003 Process_time: 2.005 Wait_time: 1 Backoff_time: 1 Request_count: 1 Prewrite_time: 1 Commit_time: " + "1 Get_commit_ts_time: 1 Get_latest_ts_time: 1 Commit_backoff_time: 1 " + @@ -135,9 +135,18 @@ func mockExecutorExecutionSummary(TimeProcessedNs, NumProducedRows, NumIteration NumIterations: &NumIterations, XXX_unrecognized: nil} } -func mockExecutorExecutionSummaryForTiFlash(TimeProcessedNs, NumProducedRows, NumIterations, Concurrency uint64, ExecutorID string) *tipb.ExecutorExecutionSummary { +func mockExecutorExecutionSummaryForTiFlash(TimeProcessedNs, NumProducedRows, NumIterations, Concurrency, totalDmfileScannedPacks, totalDmfileScannedRows, totalDmfileSkippedPacks, totalDmfileSkippedRows, totalDmfileRoughSetIndexLoadTimeMs, totalDmfileReadTimeMs, totalCreateSnapshotTimeMs uint64, ExecutorID string) *tipb.ExecutorExecutionSummary { + tiflashScanContext := tipb.TiFlashScanContext{ + TotalDmfileScannedPacks: &totalDmfileScannedPacks, + TotalDmfileSkippedPacks: &totalDmfileSkippedPacks, + TotalDmfileScannedRows: &totalDmfileScannedRows, + TotalDmfileSkippedRows: &totalDmfileSkippedRows, + TotalDmfileRoughSetIndexLoadTimeMs: &totalDmfileRoughSetIndexLoadTimeMs, + TotalDmfileReadTimeMs: &totalDmfileReadTimeMs, + TotalCreateSnapshotTimeMs: &totalCreateSnapshotTimeMs, + } return &tipb.ExecutorExecutionSummary{TimeProcessedNs: &TimeProcessedNs, NumProducedRows: &NumProducedRows, - NumIterations: &NumIterations, Concurrency: &Concurrency, ExecutorId: &ExecutorID, XXX_unrecognized: nil} + NumIterations: &NumIterations, Concurrency: &Concurrency, ExecutorId: &ExecutorID, DetailInfo: &tipb.ExecutorExecutionSummary_TiflashScanContext{TiflashScanContext: &tiflashScanContext}, XXX_unrecognized: nil} } func TestCopRuntimeStats(t *testing.T) { @@ -170,9 +179,11 @@ func TestCopRuntimeStats(t *testing.T) { copStats := cop.stats["8.8.8.8"] require.NotNil(t, copStats) - copStats[0].SetRowNum(10) - copStats[0].Record(time.Second, 10) - require.Equal(t, "time:1s, loops:2", copStats[0].String()) + newCopStats := &basicCopRuntimeStats{} + newCopStats.SetRowNum(10) + newCopStats.Record(time.Second, 10) + copStats.Merge(newCopStats) + require.Equal(t, "time:1s, loops:2", copStats.String()) require.Equal(t, "tikv_task:{proc max:4ns, min:3ns, avg: 3ns, p80:4ns, p95:4ns, iters:7, tasks:2}", stats.GetOrCreateCopStats(aggID, "tikv").String()) rootStats := stats.GetRootStats(tableReaderID) @@ -184,7 +195,7 @@ func TestCopRuntimeStats(t *testing.T) { cop.scanDetail.RocksdbKeySkippedCount = 0 cop.scanDetail.RocksdbBlockReadCount = 0 // Print all fields even though the value of some fields is 0. - str := "tikv_task:{proc max:1s, min:2ns, avg: 500ms, p80:1s, p95:1s, iters:4, tasks:2}, " + + str := "tikv_task:{proc max:1s, min:1ns, avg: 500ms, p80:1s, p95:1s, iters:4, tasks:2}, " + "scan_detail: {total_keys: 15, rocksdb: {delete_skipped_count: 5, block: {cache_hit_count: 10, read_byte: 100 Bytes}}}" require.Equal(t, str, cop.String()) @@ -197,10 +208,10 @@ func TestCopRuntimeStatsForTiFlash(t *testing.T) { tableScanID := 1 aggID := 2 tableReaderID := 3 - stats.RecordOneCopTask(aggID, "tiflash", "8.8.8.8", mockExecutorExecutionSummaryForTiFlash(1, 1, 1, 1, "tablescan_"+strconv.Itoa(tableScanID))) - stats.RecordOneCopTask(aggID, "tiflash", "8.8.8.9", mockExecutorExecutionSummaryForTiFlash(2, 2, 2, 1, "tablescan_"+strconv.Itoa(tableScanID))) - stats.RecordOneCopTask(tableScanID, "tiflash", "8.8.8.8", mockExecutorExecutionSummaryForTiFlash(3, 3, 3, 1, "aggregation_"+strconv.Itoa(aggID))) - stats.RecordOneCopTask(tableScanID, "tiflash", "8.8.8.9", mockExecutorExecutionSummaryForTiFlash(4, 4, 4, 1, "aggregation_"+strconv.Itoa(aggID))) + stats.RecordOneCopTask(aggID, "tiflash", "8.8.8.8", mockExecutorExecutionSummaryForTiFlash(1, 1, 1, 1, 1, 8192, 0, 0, 15, 200, 40, "tablescan_"+strconv.Itoa(tableScanID))) + stats.RecordOneCopTask(aggID, "tiflash", "8.8.8.9", mockExecutorExecutionSummaryForTiFlash(2, 2, 2, 1, 0, 0, 0, 0, 0, 2, 0, "tablescan_"+strconv.Itoa(tableScanID))) + stats.RecordOneCopTask(tableScanID, "tiflash", "8.8.8.8", mockExecutorExecutionSummaryForTiFlash(3, 3, 3, 1, 2, 12000, 1, 6000, 60, 1000, 20, "aggregation_"+strconv.Itoa(aggID))) + stats.RecordOneCopTask(tableScanID, "tiflash", "8.8.8.9", mockExecutorExecutionSummaryForTiFlash(4, 4, 4, 1, 1, 8192, 10, 80000, 40, 2000, 30, "aggregation_"+strconv.Itoa(aggID))) scanDetail := &util.ScanDetail{ TotalKeys: 10, ProcessedKeys: 10, @@ -214,15 +225,15 @@ func TestCopRuntimeStatsForTiFlash(t *testing.T) { require.True(t, stats.ExistsCopStats(tableScanID)) cop := stats.GetOrCreateCopStats(tableScanID, "tiflash") - require.Equal(t, "tiflash_task:{proc max:2ns, min:1ns, avg: 1ns, p80:2ns, p95:2ns, iters:3, tasks:2, threads:2}", cop.String()) + require.Equal(t, "tiflash_task:{proc max:2ns, min:1ns, avg: 1ns, p80:2ns, p95:2ns, iters:3, tasks:2, threads:2}, tiflash_scan:{dtfile:{total_scanned_packs:1, total_skipped_packs:0, total_scanned_rows:8192, total_skipped_rows:0, total_rs_index_load_time: 15ms, total_read_time: 202ms}, total_create_snapshot_time: 40ms}", cop.String()) copStats := cop.stats["8.8.8.8"] require.NotNil(t, copStats) - copStats[0].SetRowNum(10) - copStats[0].Record(time.Second, 10) - require.Equal(t, "time:1s, loops:2, threads:1", copStats[0].String()) - expected := "tiflash_task:{proc max:4ns, min:3ns, avg: 3ns, p80:4ns, p95:4ns, iters:7, tasks:2, threads:2}" + copStats.SetRowNum(10) + copStats.Record(time.Second, 10) + require.Equal(t, "time:1s, loops:2, threads:1, tiflash_scan:{dtfile:{total_scanned_packs:1, total_skipped_packs:0, total_scanned_rows:8192, total_skipped_rows:0, total_rs_index_load_time: 15ms, total_read_time: 200ms}, total_create_snapshot_time: 40ms}", copStats.String()) + expected := "tiflash_task:{proc max:4ns, min:3ns, avg: 3ns, p80:4ns, p95:4ns, iters:7, tasks:2, threads:2}, tiflash_scan:{dtfile:{total_scanned_packs:3, total_skipped_packs:11, total_scanned_rows:20192, total_skipped_rows:86000, total_rs_index_load_time: 100ms, total_read_time: 3000ms}, total_create_snapshot_time: 50ms}" require.Equal(t, expected, stats.GetOrCreateCopStats(aggID, "tiflash").String()) rootStats := stats.GetRootStats(tableReaderID) @@ -376,17 +387,14 @@ func TestRuntimeStatsWithCommit(t *testing.T) { } func TestRootRuntimeStats(t *testing.T) { - basic1 := &BasicRuntimeStats{} - basic2 := &BasicRuntimeStats{} - basic1.Record(time.Second, 20) - basic2.Record(time.Second*2, 30) pid := 1 stmtStats := NewRuntimeStatsColl(nil) - stmtStats.RegisterStats(pid, basic1) - stmtStats.RegisterStats(pid, basic2) + basic1 := stmtStats.GetBasicRuntimeStats(pid) + basic2 := stmtStats.GetBasicRuntimeStats(pid) + basic1.Record(time.Second, 20) + basic2.Record(time.Second*2, 30) concurrency := &RuntimeStatsWithConcurrencyInfo{} concurrency.SetConcurrencyInfo(NewConcurrencyInfo("worker", 15)) - stmtStats.RegisterStats(pid, concurrency) commitDetail := &util.CommitDetails{ GetCommitTsTime: time.Second, PrewriteTime: time.Second, @@ -396,6 +404,7 @@ func TestRootRuntimeStats(t *testing.T) { PrewriteRegionNum: 5, TxnRetry: 2, } + stmtStats.RegisterStats(pid, concurrency) stmtStats.RegisterStats(pid, &RuntimeStatsWithCommit{ Commit: commitDetail, }) diff --git a/util/expensivequery/expensivequery.go b/util/expensivequery/expensivequery.go index e761d98ab05a2..88eb24bdd01dd 100644 --- a/util/expensivequery/expensivequery.go +++ b/util/expensivequery/expensivequery.go @@ -62,9 +62,9 @@ func (eqh *Handle) Run() { } costTime := time.Since(info.Time) - if !info.ExceedExpensiveTimeThresh && costTime >= time.Second*time.Duration(threshold) && log.GetLevel() <= zapcore.WarnLevel { + if time.Since(info.ExpensiveLogTime) > 60*time.Second && costTime >= time.Second*time.Duration(threshold) && log.GetLevel() <= zapcore.WarnLevel { logExpensiveQuery(costTime, info, "expensive_query") - info.ExceedExpensiveTimeThresh = true + info.ExpensiveLogTime = time.Now() } if info.MaxExecutionTime > 0 && costTime > time.Duration(info.MaxExecutionTime)*time.Millisecond { logutil.BgLogger().Warn("execution timeout, kill it", zap.Duration("costTime", costTime), @@ -111,5 +111,9 @@ func (eqh *Handle) LogOnQueryExceedMemQuota(connID uint64) { // logExpensiveQuery logs the queries which exceed the time threshold or memory threshold. func logExpensiveQuery(costTime time.Duration, info *util.ProcessInfo, msg string) { - logutil.BgLogger().Warn(msg, util.GenLogFields(costTime, info, true)...) + fields := util.GenLogFields(costTime, info, true) + if fields == nil { + return + } + logutil.BgLogger().Warn(msg, fields...) } diff --git a/util/gctuner/memory_limit_tuner.go b/util/gctuner/memory_limit_tuner.go index 9dba1bd0bd546..1679e012579d0 100644 --- a/util/gctuner/memory_limit_tuner.go +++ b/util/gctuner/memory_limit_tuner.go @@ -38,6 +38,9 @@ type memoryLimitTuner struct { nextGCTriggeredByMemoryLimit atomicutil.Bool } +// fallbackPercentage indicates the fallback memory limit percentage when turning. +const fallbackPercentage float64 = 1.1 + // tuning check the memory nextGC and judge whether this GC is trigger by memory limit. // Go runtime ensure that it will be called serially. func (t *memoryLimitTuner) tuning() { @@ -61,7 +64,7 @@ func (t *memoryLimitTuner) tuning() { go func() { memory.MemoryLimitGCLast.Store(time.Now()) memory.MemoryLimitGCTotal.Add(1) - debug.SetMemoryLimit(math.MaxInt64) + debug.SetMemoryLimit(t.calcMemoryLimit(fallbackPercentage)) resetInterval := 1 * time.Minute // Wait 1 minute and set back, to avoid frequent GC failpoint.Inject("testMemoryLimitTuner", func(val failpoint.Value) { if val, ok := val.(bool); val && ok { @@ -69,7 +72,7 @@ func (t *memoryLimitTuner) tuning() { } }) time.Sleep(resetInterval) - debug.SetMemoryLimit(t.calcMemoryLimit()) + debug.SetMemoryLimit(t.calcMemoryLimit(t.GetPercentage())) for !t.waitingReset.CompareAndSwap(true, false) { continue } @@ -106,23 +109,27 @@ func (t *memoryLimitTuner) GetPercentage() float64 { // UpdateMemoryLimit updates the memory limit. // This function should be called when `tidb_server_memory_limit` or `tidb_server_memory_limit_gc_trigger` is modified. func (t *memoryLimitTuner) UpdateMemoryLimit() { - var memoryLimit = t.calcMemoryLimit() + var memoryLimit = t.calcMemoryLimit(t.GetPercentage()) if memoryLimit == math.MaxInt64 { t.isTuning.Store(false) + memoryLimit = initGOMemoryLimitValue } else { t.isTuning.Store(true) } debug.SetMemoryLimit(memoryLimit) } -func (t *memoryLimitTuner) calcMemoryLimit() int64 { - memoryLimit := int64(float64(memory.ServerMemoryLimit.Load()) * t.percentage.Load()) // `tidb_server_memory_limit` * `tidb_server_memory_limit_gc_trigger` +func (*memoryLimitTuner) calcMemoryLimit(percentage float64) int64 { + memoryLimit := int64(float64(memory.ServerMemoryLimit.Load()) * percentage) // `tidb_server_memory_limit` * `tidb_server_memory_limit_gc_trigger` if memoryLimit == 0 { memoryLimit = math.MaxInt64 } return memoryLimit } +var initGOMemoryLimitValue int64 + func init() { + initGOMemoryLimitValue = debug.SetMemoryLimit(-1) GlobalMemoryLimitTuner.Start() } diff --git a/util/gctuner/memory_limit_tuner_test.go b/util/gctuner/memory_limit_tuner_test.go index 47d1d8409d8b5..c6f63215c01dd 100644 --- a/util/gctuner/memory_limit_tuner_test.go +++ b/util/gctuner/memory_limit_tuner_test.go @@ -15,7 +15,6 @@ package gctuner import ( - "math" "runtime" "runtime/debug" "testing" @@ -76,10 +75,9 @@ func TestGlobalMemoryTuner(t *testing.T) { checkNextGCEqualMemoryLimit := func() { runtime.ReadMemStats(r) nextGC := r.NextGC - memoryLimit := GlobalMemoryLimitTuner.calcMemoryLimit() - // In golang source, nextGC = memoryLimit - three parts memory. So check 90%~100% here. + memoryLimit := GlobalMemoryLimitTuner.calcMemoryLimit(GlobalMemoryLimitTuner.GetPercentage()) + // In golang source, nextGC = memoryLimit - three parts memory. require.True(t, nextGC < uint64(memoryLimit)) - require.True(t, nextGC > uint64(memoryLimit)/10*9) } memory600mb := allocator.alloc(600 << 20) @@ -91,7 +89,7 @@ func TestGlobalMemoryTuner(t *testing.T) { require.True(t, gcNum < getNowGCNum()) // Test waiting for reset time.Sleep(500 * time.Millisecond) - require.Equal(t, int64(math.MaxInt64), debug.SetMemoryLimit(-1)) + require.Equal(t, GlobalMemoryLimitTuner.calcMemoryLimit(fallbackPercentage), debug.SetMemoryLimit(-1)) gcNum = getNowGCNum() memory100mb := allocator.alloc(100 << 20) time.Sleep(100 * time.Millisecond) @@ -102,7 +100,7 @@ func TestGlobalMemoryTuner(t *testing.T) { runtime.GC() // Trigger GC in 80% again time.Sleep(500 * time.Millisecond) - require.Equal(t, GlobalMemoryLimitTuner.calcMemoryLimit(), debug.SetMemoryLimit(-1)) + require.Equal(t, GlobalMemoryLimitTuner.calcMemoryLimit(GlobalMemoryLimitTuner.GetPercentage()), debug.SetMemoryLimit(-1)) time.Sleep(100 * time.Millisecond) gcNum = getNowGCNum() checkNextGCEqualMemoryLimit() diff --git a/util/hint/hint_processor.go b/util/hint/hint_processor.go index b087981abd409..be1a1a4e7fc4c 100644 --- a/util/hint/hint_processor.go +++ b/util/hint/hint_processor.go @@ -325,8 +325,9 @@ type BlockHintProcessor struct { QbHints map[int][]*ast.TableOptimizerHint // Group all hints at same query block. // Used for the view's hint - QbNameMap4View map[string][]ast.HintTable // Map from view's query block name to view's table list. - QbHints4View map[string][]*ast.TableOptimizerHint // Group all hints at same query block for view hints. + QbNameMap4View map[string][]ast.HintTable // Map from view's query block name to view's table list. + QbHints4View map[string][]*ast.TableOptimizerHint // Group all hints at same query block for view hints. + QbNameUsed4View map[string]struct{} // Store all the qb_name hints which are used for view Ctx sessionctx.Context selectStmtOffset int @@ -346,15 +347,14 @@ func (p *BlockHintProcessor) Enter(in ast.Node) (ast.Node, bool) { p.checkQueryBlockHints(node.TableHints, 0) case *ast.SelectStmt: p.selectStmtOffset++ - // Only support view hints which appear in the outer select part - if p.selectStmtOffset == 1 { - // Handle the view hints and update the left hint. - node.TableHints = p.handleViewHints(node.TableHints) - } node.QueryBlockOffset = p.selectStmtOffset + // Handle the view hints and update the left hint. + node.TableHints = p.handleViewHints(node.TableHints, node.QueryBlockOffset) p.checkQueryBlockHints(node.TableHints, node.QueryBlockOffset) case *ast.ExplainStmt: return in, true + case *ast.CreateBindingStmt: + return in, true } return in, false } @@ -373,12 +373,6 @@ func (p *BlockHintProcessor) checkQueryBlockHints(hints []*ast.TableOptimizerHin if hint.HintName.L != hintQBName { continue } - if offset > 1 && len(hint.Tables) > 0 { - if p.Ctx != nil { - p.Ctx.GetSessionVars().StmtCtx.AppendWarning(fmt.Errorf("The qb_name hint for view only supports to be defined in the first query block")) - } - continue - } if qbName != "" { if p.Ctx != nil { p.Ctx.GetSessionVars().StmtCtx.AppendWarning(fmt.Errorf("There are more than two query names in same query block, using the first one %s", qbName)) @@ -402,7 +396,7 @@ func (p *BlockHintProcessor) checkQueryBlockHints(hints []*ast.TableOptimizerHin } } -func (p *BlockHintProcessor) handleViewHints(hints []*ast.TableOptimizerHint) (leftHints []*ast.TableOptimizerHint) { +func (p *BlockHintProcessor) handleViewHints(hints []*ast.TableOptimizerHint, offset int) (leftHints []*ast.TableOptimizerHint) { if len(hints) == 0 { return } @@ -416,6 +410,7 @@ func (p *BlockHintProcessor) handleViewHints(hints []*ast.TableOptimizerHint) (l usedHints[i] = true if p.QbNameMap4View == nil { p.QbNameMap4View = make(map[string][]ast.HintTable) + p.QbNameUsed4View = make(map[string]struct{}) } qbName := hint.QBName.L if qbName == "" { @@ -426,6 +421,14 @@ func (p *BlockHintProcessor) handleViewHints(hints []*ast.TableOptimizerHint) (l p.Ctx.GetSessionVars().StmtCtx.AppendWarning(fmt.Errorf("Duplicate query block name %s for view's query block hint, only the first one is effective", qbName)) } } else { + if offset != 1 { + // If there are some qb_name hints for view are not defined in the first query block, + // we should add the query block number where it is located to the first table in the view's qb_name hint table list. + qbNum := hint.Tables[0].QBName.L + if qbNum == "" { + hint.Tables[0].QBName = model.NewCIStr(fmt.Sprintf("%s%d", defaultSelectBlockPrefix, offset)) + } + } p.QbNameMap4View[qbName] = hint.Tables } } @@ -475,6 +478,18 @@ func (p *BlockHintProcessor) handleViewHints(hints []*ast.TableOptimizerHint) (l return } +// HandleUnusedViewHints handle the unused view hints. +func (p *BlockHintProcessor) HandleUnusedViewHints() { + if p.QbNameMap4View != nil { + for qbName := range p.QbNameMap4View { + _, ok := p.QbNameUsed4View[qbName] + if !ok && p.Ctx != nil { + p.Ctx.GetSessionVars().StmtCtx.AppendWarning(fmt.Errorf("The qb_name hint %s is unused, please check whether the table list in the qb_name hint %s is correct", qbName, qbName)) + } + } + } +} + const ( defaultUpdateBlockName = "upd_1" defaultDeleteBlockName = "del_1" diff --git a/util/mathutil/BUILD.bazel b/util/mathutil/BUILD.bazel index 971a1ded219e4..4d0b9810eaa57 100644 --- a/util/mathutil/BUILD.bazel +++ b/util/mathutil/BUILD.bazel @@ -3,6 +3,7 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") go_library( name = "mathutil", srcs = [ + "exponential_average.go", "math.go", "rand.go", ], @@ -15,6 +16,7 @@ go_test( name = "mathutil_test", timeout = "short", srcs = [ + "exponential_average_test.go", "main_test.go", "math_test.go", "rand_test.go", diff --git a/util/mathutil/exponential_average.go b/util/mathutil/exponential_average.go new file mode 100644 index 0000000000000..bf3cb440e0633 --- /dev/null +++ b/util/mathutil/exponential_average.go @@ -0,0 +1,54 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package mathutil + +// ExponentialMovingAverage is an exponential moving average measurement implementation. It is not thread-safe. +type ExponentialMovingAverage struct { + value float64 + sum float64 + factor float64 + warmupWindow int + count int +} + +// NewExponentialMovingAverage will create a new ExponentialMovingAverage. +func NewExponentialMovingAverage( + factor float64, + warmupWindow int, +) *ExponentialMovingAverage { + if factor >= 1 || factor <= 0 { + panic("factor must be (0, 1)") + } + return &ExponentialMovingAverage{ + factor: factor, + warmupWindow: warmupWindow, + } +} + +// Add a single sample and update the internal state. +func (m *ExponentialMovingAverage) Add(value float64) { + if m.count < m.warmupWindow { + m.count++ + m.sum += value + m.value = m.sum / float64(m.count) + } else { + m.value = m.value*(1-m.factor) + value*m.factor + } +} + +// Get the current value. +func (m *ExponentialMovingAverage) Get() float64 { + return m.value +} diff --git a/util/mathutil/exponential_average_test.go b/util/mathutil/exponential_average_test.go new file mode 100644 index 0000000000000..b622c780a5ad8 --- /dev/null +++ b/util/mathutil/exponential_average_test.go @@ -0,0 +1,39 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package mathutil + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +var samples = [100]float64{ + 1576, 1524, 6746, 6426, 9476, 1721, 8528, 7827, 8613, 6969, 4200, 4686, 2408, 3956, 7105, 1341, + 9938, 9789, 6199, 4868, 4280, 7738, 7219, 3388, 2431, 1193, 1954, 2147, 7726, 3545, 8043, 2379, + 4859, 4247, 2873, 6419, 3114, 3132, 6534, 8515, 1632, 9710, 6699, 1552, 2412, 4679, 4499, 9577, + 7528, 8931, 7904, 5104, 8533, 7633, 4933, 1078, 3209, 1168, 1421, 4495, 2333, 1439, 8584, 7814, + 4320, 9569, 1370, 6635, 7870, 2828, 1599, 3592, 1934, 5944, 9418, 4143, 2285, 6756, 2674, 7293, + 4206, 5279, 9744, 2610, 2760, 9176, 1731, 3877, 2084, 2016, 3505, 5951, 4797, 5948, 8287, 8641, + 9349, 2690, 3820, 3895, +} + +func TestExponential(t *testing.T) { + win := NewExponentialMovingAverage(0.8, 2) + for _, s := range samples { + win.Add(s) + } + require.Equal(t, int64(3886), int64(win.Get())) +} diff --git a/util/memory/memstats.go b/util/memory/memstats.go index cd0074ece52c7..9cc4a3b14fb5a 100644 --- a/util/memory/memstats.go +++ b/util/memory/memstats.go @@ -18,6 +18,8 @@ import ( "runtime" "sync/atomic" "time" + + "github.com/pingcap/failpoint" ) var stats atomic.Pointer[globalMstats] @@ -26,12 +28,18 @@ var stats atomic.Pointer[globalMstats] const ReadMemInterval = 300 * time.Millisecond // ReadMemStats read the mem stats from runtime.ReadMemStats -func ReadMemStats() *runtime.MemStats { +func ReadMemStats() (memStats *runtime.MemStats) { s := stats.Load() if s != nil { - return &s.m + memStats = &s.m + } else { + memStats = ForceReadMemStats() } - return ForceReadMemStats() + failpoint.Inject("ReadMemStats", func(val failpoint.Value) { + injectedSize := val.(int) + memStats.HeapInuse += uint64(injectedSize) + }) + return } // ForceReadMemStats is to force read memory stats. diff --git a/util/memory/tracker.go b/util/memory/tracker.go index 179aa66087497..9c2adf31ace14 100644 --- a/util/memory/tracker.go +++ b/util/memory/tracker.go @@ -24,7 +24,9 @@ import ( "time" "github.com/pingcap/tidb/metrics" + "github.com/pingcap/tidb/util/logutil" atomicutil "go.uber.org/atomic" + "go.uber.org/zap" "golang.org/x/exp/slices" ) @@ -84,14 +86,16 @@ type Tracker struct { parent *Tracker // The parent memory tracker. sync.Mutex } - label int // Label of this "Tracker". + label int // Label of this "Tracker". + // following fields are used with atomic operations, so make them 64-byte aligned. bytesConsumed int64 // Consumed bytes. bytesReleased int64 // Released bytes. maxConsumed atomicutil.Int64 // max number of bytes consumed during execution. SessionID uint64 // SessionID indicates the sessionID the tracker is bound. NeedKill atomic.Bool // NeedKill indicates whether this session need kill because OOM - IsRootTrackerOfSess bool // IsRootTrackerOfSess indicates whether this tracker is bound for session - isGlobal bool // isGlobal indicates whether this tracker is global tracker + NeedKillReceived sync.Once + IsRootTrackerOfSess bool // IsRootTrackerOfSess indicates whether this tracker is bound for session + isGlobal bool // isGlobal indicates whether this tracker is global tracker } type actionMu struct { @@ -306,7 +310,7 @@ func (t *Tracker) Detach() { t.DetachFromGlobalTracker() return } - if parent.IsRootTrackerOfSess { + if parent.IsRootTrackerOfSess && t.label == LabelForSQLText { parent.actionMuForHardLimit.Lock() parent.actionMuForHardLimit.actionOnExceed = nil parent.actionMuForHardLimit.Unlock() @@ -315,6 +319,7 @@ func (t *Tracker) Detach() { parent.actionMuForSoftLimit.actionOnExceed = nil parent.actionMuForSoftLimit.Unlock() parent.NeedKill.Store(false) + parent.NeedKillReceived = sync.Once{} } parent.remove(t) t.mu.Lock() @@ -412,7 +417,7 @@ func (t *Tracker) Consume(bs int64) { for { maxNow := tracker.maxConsumed.Load() consumed := atomic.LoadInt64(&tracker.bytesConsumed) - if consumed > maxNow && !tracker.maxConsumed.CAS(maxNow, consumed) { + if consumed > maxNow && !tracker.maxConsumed.CompareAndSwap(maxNow, consumed) { continue } if label, ok := MetricsTypes[tracker.label]; ok { @@ -448,6 +453,11 @@ func (t *Tracker) Consume(bs int64) { if bs > 0 && sessionRootTracker != nil { // Kill the Top1 session if sessionRootTracker.NeedKill.Load() { + sessionRootTracker.NeedKillReceived.Do( + func() { + logutil.BgLogger().Warn("global memory controller, NeedKill signal is received successfully", + zap.Uint64("connID", sessionRootTracker.SessionID)) + }) tryActionLastOne(&sessionRootTracker.actionMuForHardLimit, sessionRootTracker) } // Update the Top1 session @@ -822,6 +832,8 @@ const ( LabelForPreparedPlanCache int = -26 // LabelForSession represents the label of a session. LabelForSession int = -27 + // LabelForMemDB represents the label of the MemDB + LabelForMemDB int = -28 ) // MetricsTypes is used to get label for metrics diff --git a/util/memoryusagealarm/memoryusagealarm.go b/util/memoryusagealarm/memoryusagealarm.go index 882d8462ef60b..c8a6fd0eaecda 100644 --- a/util/memoryusagealarm/memoryusagealarm.go +++ b/util/memoryusagealarm/memoryusagealarm.go @@ -266,15 +266,16 @@ func (record *memoryUsageAlarm) printTop10SqlInfo(pinfo []*util.ProcessInfo, f * func (record *memoryUsageAlarm) getTop10SqlInfo(cmp func(i, j *util.ProcessInfo) bool, pinfo []*util.ProcessInfo) strings.Builder { slices.SortFunc(pinfo, cmp) list := pinfo - if len(list) > 10 { - list = list[:10] - } var buf strings.Builder oomAction := variable.OOMAction.Load() serverMemoryLimit := memory.ServerMemoryLimit.Load() - for i, info := range list { + for i, totalCnt := 0, 10; i < len(list) && totalCnt > 0; i++ { + info := list[i] buf.WriteString(fmt.Sprintf("SQL %v: \n", i)) fields := util.GenLogFields(record.lastCheckTime.Sub(info.Time), info, false) + if fields == nil { + continue + } fields = append(fields, zap.String("tidb_mem_oom_action", oomAction)) fields = append(fields, zap.Uint64("tidb_server_memory_limit", serverMemoryLimit)) fields = append(fields, zap.Int64("tidb_mem_quota_query", info.OOMAlarmVariablesInfo.SessionMemQuotaQuery)) @@ -294,6 +295,7 @@ func (record *memoryUsageAlarm) getTop10SqlInfo(cmp func(i, j *util.ProcessInfo) } buf.WriteString("\n") } + totalCnt-- } buf.WriteString("\n") return buf diff --git a/util/memoryusagealarm/memoryusagealarm_test.go b/util/memoryusagealarm/memoryusagealarm_test.go index f0b0af6bd99ec..6e5147805676f 100644 --- a/util/memoryusagealarm/memoryusagealarm_test.go +++ b/util/memoryusagealarm/memoryusagealarm_test.go @@ -104,12 +104,14 @@ func genMockProcessInfoList(memConsumeList []int64, startTimeList []time.Time, s for i := 0; i < size; i++ { tracker := memory.NewTracker(0, 0) tracker.Consume(memConsumeList[i]) + var stmtCtxRefCount stmtctx.ReferenceCount = 0 processInfo := util.ProcessInfo{Time: startTimeList[i], StmtCtx: &stmtctx.StatementContext{}, MemTracker: tracker, StatsInfo: func(interface{}) map[string]uint64 { return map[string]uint64{} }, + RefCountOfStmtCtx: &stmtCtxRefCount, } processInfoList = append(processInfoList, &processInfo) } diff --git a/util/mock/context.go b/util/mock/context.go index d555fbf86c6ff..d99fc5626b873 100644 --- a/util/mock/context.go +++ b/util/mock/context.go @@ -48,16 +48,17 @@ var ( // Context represents mocked sessionctx.Context. type Context struct { - txn wrapTxn // mock global variable - Store kv.Storage // mock global variable - ctx context.Context - sm util.SessionManager - is sessionctx.InfoschemaMetaVersion - values map[fmt.Stringer]interface{} - sessionVars *variable.SessionVars - cancel context.CancelFunc - pcache sessionctx.PlanCache - level kvrpcpb.DiskFullOpt + txn wrapTxn // mock global variable + Store kv.Storage // mock global variable + ctx context.Context + sm util.SessionManager + is sessionctx.InfoschemaMetaVersion + values map[fmt.Stringer]interface{} + sessionVars *variable.SessionVars + cancel context.CancelFunc + pcache sessionctx.PlanCache + level kvrpcpb.DiskFullOpt + inSandBoxMode bool } type wrapTxn struct { @@ -438,6 +439,21 @@ func (*Context) GetExtensions() *extension.SessionExtensions { return nil } +// EnableSandBoxMode enable the sandbox mode. +func (c *Context) EnableSandBoxMode() { + c.inSandBoxMode = true +} + +// DisableSandBoxMode enable the sandbox mode. +func (c *Context) DisableSandBoxMode() { + c.inSandBoxMode = false +} + +// InSandBoxMode indicates that this Session is in sandbox mode +func (c *Context) InSandBoxMode() bool { + return c.inSandBoxMode +} + // Close implements the sessionctx.Context interface. func (*Context) Close() {} diff --git a/util/password-validation/BUILD.bazel b/util/password-validation/BUILD.bazel new file mode 100644 index 0000000000000..c3649a3a15383 --- /dev/null +++ b/util/password-validation/BUILD.bazel @@ -0,0 +1,23 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "password-validation", + srcs = ["password_validation.go"], + importpath = "github.com/pingcap/tidb/util/password-validation", + visibility = ["//visibility:public"], + deps = [ + "//sessionctx/variable", + "//util/hack", + ], +) + +go_test( + name = "password-validation_test", + srcs = ["password_validation_test.go"], + embed = [":password-validation"], + deps = [ + "//parser/auth", + "//sessionctx/variable", + "@com_github_stretchr_testify//require", + ], +) diff --git a/util/password-validation/password_validation.go b/util/password-validation/password_validation.go new file mode 100644 index 0000000000000..edd0bd39ec38a --- /dev/null +++ b/util/password-validation/password_validation.go @@ -0,0 +1,175 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package validator + +import ( + "bytes" + "fmt" + "strconv" + "strings" + "unicode" + + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/util/hack" +) + +const maxPwdValidationLength int = 100 + +const minPwdValidationLength int = 4 + +// ValidateDictionaryPassword checks if the password contains words in the dictionary. +func ValidateDictionaryPassword(pwd string, globalVars *variable.GlobalVarAccessor) (bool, error) { + dictionary, err := (*globalVars).GetGlobalSysVar(variable.ValidatePasswordDictionary) + if err != nil { + return false, err + } + words := strings.Split(dictionary, ";") + if len(words) == 0 { + return true, nil + } + pwd = strings.ToLower(pwd) + for _, word := range words { + if len(word) >= minPwdValidationLength && len(word) <= maxPwdValidationLength { + if strings.Contains(pwd, strings.ToLower(word)) { + return false, nil + } + } + } + return true, nil +} + +// ValidateUserNameInPassword checks whether pwd exists in the dictionary. +func ValidateUserNameInPassword(pwd string, sessionVars *variable.SessionVars) (string, error) { + currentUser := sessionVars.User + globalVars := sessionVars.GlobalVarsAccessor + pwdBytes := hack.Slice(pwd) + if checkUserName, err := globalVars.GetGlobalSysVar(variable.ValidatePasswordCheckUserName); err != nil { + return "", err + } else if currentUser != nil && variable.TiDBOptOn(checkUserName) { + for _, username := range []string{currentUser.AuthUsername, currentUser.Username} { + usernameBytes := hack.Slice(username) + userNameLen := len(usernameBytes) + if userNameLen == 0 { + continue + } + if bytes.Contains(pwdBytes, usernameBytes) { + return "Password Contains User Name", nil + } + usernameReversedBytes := make([]byte, userNameLen) + for i := range usernameBytes { + usernameReversedBytes[i] = usernameBytes[userNameLen-1-i] + } + if bytes.Contains(pwdBytes, usernameReversedBytes) { + return "Password Contains Reversed User Name", nil + } + } + } + return "", nil +} + +// ValidatePasswordLowPolicy checks whether pwd satisfies the low policy of password validation. +func ValidatePasswordLowPolicy(pwd string, globalVars *variable.GlobalVarAccessor) (string, error) { + if validateLengthStr, err := (*globalVars).GetGlobalSysVar(variable.ValidatePasswordLength); err != nil { + return "", err + } else if validateLength, err := strconv.ParseInt(validateLengthStr, 10, 64); err != nil { + return "", err + } else if (int64)(len([]rune(pwd))) < validateLength { + return fmt.Sprintf("Require Password Length: %d", validateLength), nil + } + return "", nil +} + +// ValidatePasswordMediumPolicy checks whether pwd satisfies the medium policy of password validation. +func ValidatePasswordMediumPolicy(pwd string, globalVars *variable.GlobalVarAccessor) (string, error) { + var lowerCaseCount, upperCaseCount, numberCount, specialCharCount int64 + runes := []rune(pwd) + for i := 0; i < len(runes); i++ { + if unicode.IsUpper(runes[i]) { + upperCaseCount++ + } else if unicode.IsLower(runes[i]) { + lowerCaseCount++ + } else if unicode.IsDigit(runes[i]) { + numberCount++ + } else { + specialCharCount++ + } + } + if mixedCaseCountStr, err := (*globalVars).GetGlobalSysVar(variable.ValidatePasswordMixedCaseCount); err != nil { + return "", err + } else if mixedCaseCount, err := strconv.ParseInt(mixedCaseCountStr, 10, 64); err != nil { + return "", err + } else if lowerCaseCount < mixedCaseCount { + return fmt.Sprintf("Require Password Lowercase Count: %d", mixedCaseCount), nil + } else if upperCaseCount < mixedCaseCount { + return fmt.Sprintf("Require Password Uppercase Count: %d", mixedCaseCount), nil + } + if requireNumberCountStr, err := (*globalVars).GetGlobalSysVar(variable.ValidatePasswordNumberCount); err != nil { + return "", err + } else if requireNumberCount, err := strconv.ParseInt(requireNumberCountStr, 10, 64); err != nil { + return "", err + } else if numberCount < requireNumberCount { + return fmt.Sprintf("Require Password Digit Count: %d", requireNumberCount), nil + } + if requireSpecialCharCountStr, err := (*globalVars).GetGlobalSysVar(variable.ValidatePasswordSpecialCharCount); err != nil { + return "", err + } else if requireSpecialCharCount, err := strconv.ParseInt(requireSpecialCharCountStr, 10, 64); err != nil { + return "", err + } else if specialCharCount < requireSpecialCharCount { + return fmt.Sprintf("Require Password Non-alphanumeric Count: %d", requireSpecialCharCount), nil + } + return "", nil +} + +// ValidatePassword checks whether the pwd can be used. +func ValidatePassword(sessionVars *variable.SessionVars, pwd string) error { + globalVars := sessionVars.GlobalVarsAccessor + + validatePolicy, err := globalVars.GetGlobalSysVar(variable.ValidatePasswordPolicy) + if err != nil { + return err + } + if warn, err := ValidateUserNameInPassword(pwd, sessionVars); err != nil { + return err + } else if len(warn) > 0 { + return variable.ErrNotValidPassword.GenWithStack(warn) + } + if warn, err := ValidatePasswordLowPolicy(pwd, &globalVars); err != nil { + return err + } else if len(warn) > 0 { + return variable.ErrNotValidPassword.GenWithStack(warn) + } + // LOW + if validatePolicy == "LOW" { + return nil + } + + // MEDIUM + if warn, err := ValidatePasswordMediumPolicy(pwd, &globalVars); err != nil { + return err + } else if len(warn) > 0 { + return variable.ErrNotValidPassword.GenWithStack(warn) + } + if validatePolicy == "MEDIUM" { + return nil + } + + // STRONG + if ok, err := ValidateDictionaryPassword(pwd, &globalVars); err != nil { + return err + } else if !ok { + return variable.ErrNotValidPassword.GenWithStack("Password contains word in the dictionary") + } + return nil +} diff --git a/util/password-validation/password_validation_test.go b/util/password-validation/password_validation_test.go new file mode 100644 index 0000000000000..8a851b2006203 --- /dev/null +++ b/util/password-validation/password_validation_test.go @@ -0,0 +1,175 @@ +// Copyright 2022 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package validator + +import ( + "context" + "testing" + + "github.com/pingcap/tidb/parser/auth" + "github.com/pingcap/tidb/sessionctx/variable" + "github.com/stretchr/testify/require" +) + +func TestValidateDictionaryPassword(t *testing.T) { + vars := variable.NewSessionVars(nil) + mock := variable.NewMockGlobalAccessor4Tests() + mock.SessionVars = vars + vars.GlobalVarsAccessor = mock + + err := mock.SetGlobalSysVar(context.Background(), variable.ValidatePasswordDictionary, "abc;123;1234;5678;HIJK;中文测试;。,;!") + require.NoError(t, err) + testcases := []struct { + pwd string + result bool + }{ + {"abcdefg", true}, + {"abcd123efg", true}, + {"abcd1234efg", false}, + {"abcd12345efg", false}, + {"abcd123efghij", true}, + {"abcd123efghijk", false}, + {"abcd123efghij中文测试", false}, + {"abcd123。,;!", false}, + } + for _, testcase := range testcases { + ok, err := ValidateDictionaryPassword(testcase.pwd, &vars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, testcase.result, ok, testcase.pwd) + } +} + +func TestValidateUserNameInPassword(t *testing.T) { + sessionVars := variable.NewSessionVars(nil) + sessionVars.User = &auth.UserIdentity{Username: "user", AuthUsername: "authuser"} + sessionVars.GlobalVarsAccessor = variable.NewMockGlobalAccessor4Tests() + testcases := []struct { + pwd string + warn string + }{ + {"", ""}, + {"user", "Password Contains User Name"}, + {"authuser", "Password Contains User Name"}, + {"resu000", "Password Contains Reversed User Name"}, + {"resuhtua", "Password Contains Reversed User Name"}, + {"User", ""}, + {"authUser", ""}, + {"Resu", ""}, + {"Resuhtua", ""}, + } + // Enable check_user_name + err := sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordCheckUserName, "ON") + require.NoError(t, err) + for _, testcase := range testcases { + warn, err := ValidateUserNameInPassword(testcase.pwd, sessionVars) + require.NoError(t, err) + require.Equal(t, testcase.warn, warn, testcase.pwd) + } + + // Disable check_user_name + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordCheckUserName, "OFF") + require.NoError(t, err) + for _, testcase := range testcases { + warn, err := ValidateUserNameInPassword(testcase.pwd, sessionVars) + require.NoError(t, err) + require.Equal(t, "", warn, testcase.pwd) + } +} + +func TestValidatePasswordLowPolicy(t *testing.T) { + sessionVars := variable.NewSessionVars(nil) + sessionVars.GlobalVarsAccessor = variable.NewMockGlobalAccessor4Tests() + sessionVars.GlobalVarsAccessor.(*variable.MockGlobalAccessor).SessionVars = sessionVars + err := sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordLength, "8") + require.NoError(t, err) + + warn, err := ValidatePasswordLowPolicy("1234", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "Require Password Length: 8", warn) + warn, err = ValidatePasswordLowPolicy("12345678", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "", warn) + + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordLength, "12") + require.NoError(t, err) + warn, err = ValidatePasswordLowPolicy("12345678", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "Require Password Length: 12", warn) +} + +func TestValidatePasswordMediumPolicy(t *testing.T) { + sessionVars := variable.NewSessionVars(nil) + sessionVars.GlobalVarsAccessor = variable.NewMockGlobalAccessor4Tests() + sessionVars.GlobalVarsAccessor.(*variable.MockGlobalAccessor).SessionVars = sessionVars + + err := sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordMixedCaseCount, "1") + require.NoError(t, err) + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordSpecialCharCount, "2") + require.NoError(t, err) + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordNumberCount, "3") + require.NoError(t, err) + + warn, err := ValidatePasswordMediumPolicy("!@A123", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "Require Password Lowercase Count: 1", warn) + warn, err = ValidatePasswordMediumPolicy("!@a123", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "Require Password Uppercase Count: 1", warn) + warn, err = ValidatePasswordMediumPolicy("!@Aa12", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "Require Password Digit Count: 3", warn) + warn, err = ValidatePasswordMediumPolicy("!Aa123", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "Require Password Non-alphanumeric Count: 2", warn) + warn, err = ValidatePasswordMediumPolicy("!@Aa123", &sessionVars.GlobalVarsAccessor) + require.NoError(t, err) + require.Equal(t, "", warn) +} + +func TestValidatePassword(t *testing.T) { + sessionVars := variable.NewSessionVars(nil) + sessionVars.GlobalVarsAccessor = variable.NewMockGlobalAccessor4Tests() + sessionVars.GlobalVarsAccessor.(*variable.MockGlobalAccessor).SessionVars = sessionVars + sessionVars.User = &auth.UserIdentity{Username: "user", AuthUsername: "authuser"} + + err := sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordPolicy, "LOW") + require.NoError(t, err) + err = ValidatePassword(sessionVars, "1234") + require.Error(t, err) + err = ValidatePassword(sessionVars, "user1234") + require.Error(t, err) + err = ValidatePassword(sessionVars, "authuser1234") + require.Error(t, err) + err = ValidatePassword(sessionVars, "User1234") + require.NoError(t, err) + + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordPolicy, "MEDIUM") + require.NoError(t, err) + err = ValidatePassword(sessionVars, "User1234") + require.Error(t, err) + err = ValidatePassword(sessionVars, "!User1234") + require.NoError(t, err) + err = ValidatePassword(sessionVars, "!User1234") + require.NoError(t, err) + + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordPolicy, "STRONG") + require.NoError(t, err) + err = sessionVars.GlobalVarsAccessor.SetGlobalSysVar(context.Background(), variable.ValidatePasswordDictionary, "User") + require.NoError(t, err) + err = ValidatePassword(sessionVars, "!User1234") + require.Error(t, err) + err = ValidatePassword(sessionVars, "!ABcd1234") + require.NoError(t, err) +} diff --git a/util/plancodec/id.go b/util/plancodec/id.go index 8b17660bfa589..0366b7dc3f5a6 100644 --- a/util/plancodec/id.go +++ b/util/plancodec/id.go @@ -127,6 +127,10 @@ const ( TypeCTE = "CTEFullScan" // TypeCTEDefinition is the type of CTE definition TypeCTEDefinition = "CTE" + // TypeForeignKeyCheck is the type of FKCheck + TypeForeignKeyCheck = "Foreign_Key_Check" + // TypeForeignKeyCascade is the type of FKCascade + TypeForeignKeyCascade = "Foreign_Key_Cascade" ) // plan id. @@ -187,6 +191,8 @@ const ( typePartitionUnionID int = 53 typeShuffleID int = 54 typeShuffleReceiverID int = 55 + typeForeignKeyCheck int = 56 + typeForeignKeyCascade int = 57 ) // TypeStringToPhysicalID converts the plan type string to plan id. @@ -302,6 +308,10 @@ func TypeStringToPhysicalID(tp string) int { return typeCTEDefinitionID case TypeCTETable: return typeCTETableID + case TypeForeignKeyCheck: + return typeForeignKeyCheck + case TypeForeignKeyCascade: + return typeForeignKeyCascade } // Should never reach here. return 0 @@ -420,6 +430,10 @@ func PhysicalIDToTypeString(id int) string { return TypeCTEDefinition case typeCTETableID: return TypeCTETable + case typeForeignKeyCheck: + return TypeForeignKeyCheck + case typeForeignKeyCascade: + return TypeForeignKeyCascade } // Should never reach here. diff --git a/util/processinfo.go b/util/processinfo.go index 6e379e49a8fe7..77f35ef94a5ee 100644 --- a/util/processinfo.go +++ b/util/processinfo.go @@ -41,8 +41,10 @@ type OOMAlarmVariablesInfo struct { // ProcessInfo is a struct used for show processlist statement. type ProcessInfo struct { Time time.Time + ExpensiveLogTime time.Time Plan interface{} StmtCtx *stmtctx.StatementContext + RefCountOfStmtCtx *stmtctx.ReferenceCount MemTracker *memory.Tracker DiskTracker *disk.Tracker StatsInfo func(interface{}) map[string]uint64 @@ -59,11 +61,10 @@ type ProcessInfo struct { CurTxnStartTS uint64 // MaxExecutionTime is the timeout for select statement, in milliseconds. // If the query takes too long, kill it. - MaxExecutionTime uint64 - State uint16 - Command byte - ExceedExpensiveTimeThresh bool - RedactSQL bool + MaxExecutionTime uint64 + State uint16 + Command byte + RedactSQL bool } // ToRowForShow returns []interface{} for the row data of "SHOW [FULL] PROCESSLIST". diff --git a/util/ranger/detacher.go b/util/ranger/detacher.go index cbeed5b6364de..596d27c27d9d8 100644 --- a/util/ranger/detacher.go +++ b/util/ranger/detacher.go @@ -623,6 +623,7 @@ func ExtractEqAndInCondition(sctx sessionctx.Context, conditions []expression.Ex if expression.MaybeOverOptimized4PlanCache(sctx, conditions) { // `a=@x and a=@y` --> `a=@x if @x==@y` sctx.GetSessionVars().StmtCtx.SkipPlanCache = true + sctx.GetSessionVars().StmtCtx.AppendWarning(errors.Errorf("skip plan-cache: some parameters may be overwritten")) } } } diff --git a/util/ranger/testdata/ranger_suite_out.json b/util/ranger/testdata/ranger_suite_out.json index 3934ff2f7bad3..4a4f0c85e2682 100644 --- a/util/ranger/testdata/ranger_suite_out.json +++ b/util/ranger/testdata/ranger_suite_out.json @@ -9,7 +9,7 @@ "└─Apply 2.00 root CARTESIAN left outer semi join, other cond:eq(test.t.e, Column#26)", " ├─TableReader(Build) 2.00 root data:TableFullScan", " │ └─TableFullScan 2.00 cop[tikv] table:t keep order:false", - " └─HashAgg(Probe) 2.00 root funcs:count(1)->Column#26", + " └─StreamAgg(Probe) 2.00 root funcs:count(1)->Column#26", " └─HashJoin 4.00 root inner join, equal:[eq(test.t.a, test.t.a)]", " ├─IndexReader(Build) 4.00 root index:IndexFullScan", " │ └─IndexFullScan 4.00 cop[tikv] table:t1, index:idx(b, c, d) keep order:false", diff --git a/util/ranger/types.go b/util/ranger/types.go index d0beaa1c19a1d..6c6ab98c52157 100644 --- a/util/ranger/types.go +++ b/util/ranger/types.go @@ -75,6 +75,9 @@ func (ran *Range) Width() int { // Clone clones a Range. func (ran *Range) Clone() *Range { + if ran == nil { + return nil + } newRange := &Range{ LowVal: make([]types.Datum, 0, len(ran.LowVal)), HighVal: make([]types.Datum, 0, len(ran.HighVal)), diff --git a/util/servermemorylimit/BUILD.bazel b/util/servermemorylimit/BUILD.bazel index 9e144b820922e..0d2c4d4f3cb59 100644 --- a/util/servermemorylimit/BUILD.bazel +++ b/util/servermemorylimit/BUILD.bazel @@ -9,8 +9,10 @@ go_library( "//parser/mysql", "//types", "//util", + "//util/logutil", "//util/memory", "@org_uber_go_atomic//:atomic", + "@org_uber_go_zap//:zap", ], ) diff --git a/util/servermemorylimit/servermemorylimit.go b/util/servermemorylimit/servermemorylimit.go index a13e2e8b0e081..511a86703db17 100644 --- a/util/servermemorylimit/servermemorylimit.go +++ b/util/servermemorylimit/servermemorylimit.go @@ -24,8 +24,10 @@ import ( "github.com/pingcap/tidb/parser/mysql" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util" + "github.com/pingcap/tidb/util/logutil" "github.com/pingcap/tidb/util/memory" atomicutil "go.uber.org/atomic" + "go.uber.org/zap" ) // Process global Observation indicators for memory limit. @@ -81,12 +83,24 @@ type sessionToBeKilled struct { sqlStartTime time.Time sessionID uint64 sessionTracker *memory.Tracker + + killStartTime time.Time + lastLogTime time.Time } func killSessIfNeeded(s *sessionToBeKilled, bt uint64, sm util.SessionManager) { if s.isKilling { if info, ok := sm.GetProcessInfo(s.sessionID); ok { if info.Time == s.sqlStartTime { + if time.Since(s.lastLogTime) > 5*time.Second { + logutil.BgLogger().Warn(fmt.Sprintf("global memory controller failed to kill the top-consumer in %ds", + time.Since(s.killStartTime)/time.Second), + zap.Uint64("connID", info.ID), + zap.String("sql digest", info.Digest), + zap.String("sql text", fmt.Sprintf("%.100v", info.Info)), + zap.Int64("sql memory usage", info.MemTracker.BytesConsumed())) + s.lastLogTime = time.Now() + } return } } @@ -95,6 +109,7 @@ func killSessIfNeeded(s *sessionToBeKilled, bt uint64, sm util.SessionManager) { memory.MemUsageTop1Tracker.CompareAndSwap(s.sessionTracker, nil) //nolint: all_revive,revive runtime.GC() + logutil.BgLogger().Warn("global memory controller killed the top1 memory consumer successfully") } if bt == 0 { @@ -108,6 +123,14 @@ func killSessIfNeeded(s *sessionToBeKilled, bt uint64, sm util.SessionManager) { t := memory.MemUsageTop1Tracker.Load() if t != nil { if info, ok := sm.GetProcessInfo(t.SessionID); ok { + logutil.BgLogger().Warn("global memory controller tries to kill the top1 memory consumer", + zap.Uint64("connID", info.ID), + zap.String("sql digest", info.Digest), + zap.String("sql text", fmt.Sprintf("%.100v", info.Info)), + zap.Uint64("tidb_server_memory_limit", bt), + zap.Uint64("heap inuse", instanceStats.HeapInuse), + zap.Int64("sql memory usage", info.MemTracker.BytesConsumed()), + ) s.sessionID = t.SessionID s.sqlStartTime = info.Time s.isKilling = true @@ -119,6 +142,8 @@ func killSessIfNeeded(s *sessionToBeKilled, bt uint64, sm util.SessionManager) { SessionKillLast.Store(killTime) IsKilling.Store(true) GlobalMemoryOpsHistoryManager.recordOne(info, killTime, bt, instanceStats.HeapInuse) + s.lastLogTime = time.Now() + s.killStartTime = time.Now() } } } diff --git a/util/stmtsummary/statement_summary.go b/util/stmtsummary/statement_summary.go index 8582dc522828e..4db62bdb7c048 100644 --- a/util/stmtsummary/statement_summary.go +++ b/util/stmtsummary/statement_summary.go @@ -498,6 +498,49 @@ func (ssMap *stmtSummaryByDigestMap) maxSQLLength() int { return int(ssMap.optMaxSQLLength.Load()) } +func getBindableStmtByPlanDigest(ssbd *stmtSummaryByDigest, planDigest string) *BindableStmt { + ssbd.Lock() + defer ssbd.Unlock() + if ssbd.initialized && ssbd.planDigest == planDigest && ssbd.history.Len() > 0 && + (ssbd.stmtType == "Select" || ssbd.stmtType == "Delete" || ssbd.stmtType == "Update" || ssbd.stmtType == "Insert" || ssbd.stmtType == "Replace") { + ssElement := ssbd.history.Back().Value.(*stmtSummaryByDigestElement) + ssElement.Lock() + defer ssElement.Unlock() + // Empty auth users means that it is an internal queries. + if len(ssElement.authUsers) > 0 { + stmt := &BindableStmt{ + Schema: ssbd.schemaName, + Query: ssElement.sampleSQL, + PlanHint: ssElement.planHint, + Charset: ssElement.charset, + Collation: ssElement.collation, + Users: ssElement.authUsers, + } + // If it is SQL command prepare / execute, the ssElement.sampleSQL is `execute ...`, we should get the original select query. + // If it is binary protocol prepare / execute, ssbd.normalizedSQL should be same as ssElement.sampleSQL. + if ssElement.prepared { + stmt.Query = ssbd.normalizedSQL + } + return stmt + } + } + return nil +} + +// GetBindableStmtByPlanDigest gets users' select/update/delete SQL by plan digest. +func (ssMap *stmtSummaryByDigestMap) GetBindableStmtByPlanDigest(planDigest string) *BindableStmt { + ssMap.Lock() + values := ssMap.summaryMap.Values() + ssMap.Unlock() + + for _, value := range values { + if stmt := getBindableStmtByPlanDigest(value.(*stmtSummaryByDigest), planDigest); stmt != nil { + return stmt + } + } + return nil +} + // newStmtSummaryByDigest creates a stmtSummaryByDigest from StmtExecInfo. func (ssbd *stmtSummaryByDigest) init(sei *StmtExecInfo, _ int64, _ int64, _ int) { // Use "," to separate table names to support FIND_IN_SET. diff --git a/util/stmtsummary/statement_summary_test.go b/util/stmtsummary/statement_summary_test.go index 8ee767f2342e0..ac7e1b06e059b 100644 --- a/util/stmtsummary/statement_summary_test.go +++ b/util/stmtsummary/statement_summary_test.go @@ -175,9 +175,8 @@ func TestAddStatement(t *testing.T) { MaxWaitTime: 2500, }, ExecDetail: &execdetails.ExecDetails{ - CalleeAddress: "202", - BackoffTime: 180, - RequestCount: 20, + BackoffTime: 180, + RequestCount: 20, CommitDetail: &util.CommitDetails{ GetCommitTsTime: 500, PrewriteTime: 50000, @@ -214,9 +213,11 @@ func TestAddStatement(t *testing.T) { RocksdbBlockReadCount: 10, RocksdbBlockReadByte: 1000, }, - TimeDetail: util.TimeDetail{ - ProcessTime: 1500, - WaitTime: 150, + DetailsNeedP90: execdetails.DetailsNeedP90{ + TimeDetail: util.TimeDetail{ + ProcessTime: 1500, + WaitTime: 150, + }, CalleeAddress: "202", }, }, StmtCtx: &stmtctx.StatementContext{ @@ -313,9 +314,8 @@ func TestAddStatement(t *testing.T) { MaxWaitTime: 250, }, ExecDetail: &execdetails.ExecDetails{ - CalleeAddress: "302", - BackoffTime: 18, - RequestCount: 2, + BackoffTime: 18, + RequestCount: 2, CommitDetail: &util.CommitDetails{ GetCommitTsTime: 50, PrewriteTime: 5000, @@ -352,9 +352,12 @@ func TestAddStatement(t *testing.T) { RocksdbBlockReadCount: 10, RocksdbBlockReadByte: 1000, }, - TimeDetail: util.TimeDetail{ - ProcessTime: 150, - WaitTime: 15, + DetailsNeedP90: execdetails.DetailsNeedP90{ + TimeDetail: util.TimeDetail{ + ProcessTime: 150, + WaitTime: 15, + }, + CalleeAddress: "302", }, }, StmtCtx: &stmtctx.StatementContext{ @@ -605,9 +608,8 @@ func generateAnyExecInfo() *StmtExecInfo { MaxWaitTime: 1500, }, ExecDetail: &execdetails.ExecDetails{ - CalleeAddress: "129", - BackoffTime: 80, - RequestCount: 10, + BackoffTime: 80, + RequestCount: 10, CommitDetail: &util.CommitDetails{ GetCommitTsTime: 100, PrewriteTime: 10000, @@ -644,9 +646,12 @@ func generateAnyExecInfo() *StmtExecInfo { RocksdbBlockReadCount: 10, RocksdbBlockReadByte: 1000, }, - TimeDetail: util.TimeDetail{ - ProcessTime: 500, - WaitTime: 50, + DetailsNeedP90: execdetails.DetailsNeedP90{ + TimeDetail: util.TimeDetail{ + ProcessTime: 500, + WaitTime: 50, + }, + CalleeAddress: "129", }, }, StmtCtx: &stmtctx.StatementContext{ diff --git a/util/util.go b/util/util.go index 8af2876240486..5edb010ce6c52 100644 --- a/util/util.go +++ b/util/util.go @@ -15,6 +15,7 @@ package util import ( + "bytes" "encoding/json" "fmt" "io/ioutil" @@ -106,6 +107,11 @@ func Str2Int64Map(str string) map[int64]struct{} { // GenLogFields generate log fields. func GenLogFields(costTime time.Duration, info *ProcessInfo, needTruncateSQL bool) []zap.Field { + if info.RefCountOfStmtCtx != nil && !info.RefCountOfStmtCtx.TryIncrease() { + return nil + } + defer info.RefCountOfStmtCtx.Decrease() + logFields := make([]zap.Field, 0, 20) logFields = append(logFields, zap.String("cost_time", strconv.FormatFloat(costTime.Seconds(), 'f', -1, 64)+"s")) execDetail := info.StmtCtx.GetExecDetails() @@ -169,3 +175,30 @@ func GenLogFields(costTime time.Duration, info *ProcessInfo, needTruncateSQL boo logFields = append(logFields, zap.String("sql", sql)) return logFields } + +// PrintableASCII detects if b is a printable ASCII character. +// Ref to:http://facweb.cs.depaul.edu/sjost/it212/documents/ascii-pr.htm +func PrintableASCII(b byte) bool { + if b >= 0 && b < 32 || b > 127 { + return false + } + + return true +} + +// FmtNonASCIIPrintableCharToHex turns non-printable-ASCII characters into Hex +func FmtNonASCIIPrintableCharToHex(str string) string { + var b bytes.Buffer + b.Grow(len(str) * 2) + for i := 0; i < len(str); i++ { + if PrintableASCII(str[i]) { + b.WriteByte(str[i]) + continue + } + + b.WriteString(`\x`) + // turns non-printable-ASCII character into hex-string + b.WriteString(fmt.Sprintf("%02X", str[i])) + } + return b.String() +} diff --git a/util/util_test.go b/util/util_test.go index 7eb06e1071073..ca68a55cd8ba6 100644 --- a/util/util_test.go +++ b/util/util_test.go @@ -28,6 +28,7 @@ func TestLogFormat(t *testing.T) { mem.Consume(1<<30 + 1<<29 + 1<<28 + 1<<27) mockTooLongQuery := make([]byte, 1024*9) + var refCount stmtctx.ReferenceCount = 0 info := &ProcessInfo{ ID: 233, User: "PingCAP", @@ -38,9 +39,10 @@ func TestLogFormat(t *testing.T) { StatsInfo: func(interface{}) map[string]uint64 { return nil }, - StmtCtx: &stmtctx.StatementContext{}, - MemTracker: mem, - RedactSQL: false, + StmtCtx: &stmtctx.StatementContext{}, + RefCountOfStmtCtx: &refCount, + MemTracker: mem, + RedactSQL: false, } costTime := time.Second * 233 logSQLTruncateLen := 1024 * 8 diff --git a/util/watcher/watcher.go b/util/watcher/watcher.go index d91bd89cd076f..fa09c058217b0 100644 --- a/util/watcher/watcher.go +++ b/util/watcher/watcher.go @@ -63,7 +63,7 @@ func NewWatcher() *Watcher { // Start starts the watching func (w *Watcher) Start(d time.Duration) error { - if !w.running.CAS(0, 1) { + if !w.running.CompareAndSwap(0, 1) { return ErrWatcherStarted } @@ -83,7 +83,7 @@ func (w *Watcher) Start(d time.Duration) error { // Close stops the watching func (w *Watcher) Close() { - if !w.running.CAS(1, 0) { + if !w.running.CompareAndSwap(1, 0) { return }